

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Biblioteca coreJSON
<a name="freertos-lib-corejson"></a>

**nota**  <a name="out-of-date-message"></a>
Es posible que el contenido de esta página no lo sea up-to-date. Consulte la [página de la biblioteca de FreeRTOS.org](https://www.freertos.org/Documentation/03-Libraries/01-Library-overview/01-All-libraries) para obtener la última actualización.

## Introducción
<a name="freertos-corejson-introduction"></a>

JSON (notación de JavaScript objetos) es un formato de serialización de datos legible por humanos. Se usa ampliamente para intercambiar datos, como con el [servicio AWS IoT Device Shadow](https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html), y forma parte de muchos APIs, como la API GitHub REST. Ecma International mantiene JSON como estándar.

La biblioteca coreJSON proporciona un analizador que admite la búsqueda de claves aplicando la [sintaxis de intercambio de datos JSON estándar ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). La biblioteca está escrita en C y está diseñada para cumplir con las normas ISO C90 y MISRA C:2012. Tiene [pruebas](https://www.cprover.org/cbmc/) que muestran un uso seguro de la memoria y la ausencia de asignación de pilas, lo que la hace adecuada para microcontroladores de IoT, pero también es totalmente portátil a otras plataformas.

## Uso de memoria
<a name="freertos-corejson-memory"></a>

La biblioteca coreJSON usa una pila interna para rastrear las estructuras anidadas en un documento JSON. La pila existe mientras dure una sola llamada a una función; no se conserva. El tamaño de la pila se puede especificar definiendo la macro `JSON_MAX_DEPTH`, que por defecto es de 32 niveles. Cada nivel consume un solo byte.


****  

| Tamaño de código de coreJSON (ejemplo generado con GCC para ARM Cortex-M) | Archivos | Con optimización -O1 | Con optimización -Os | 
| --- | --- | --- | --- | 
| core\$1json.c | 2,9 K | 2,4 K | 
| Estimaciones totales | 2,9 K | 2,4 K | 