bibliothèque MQTT d'agents principale - Gratuit RTOS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

bibliothèque MQTT d'agents principale

Note

Le contenu de cette page ne l'est peut-être pas up-to-date. Veuillez consulter la page de la bibliothèque RTOS .org gratuite pour obtenir la dernière mise à jour.

Introduction

La bibliothèque principale de MQTT l'agent est un niveau élevé API qui ajoute la sécurité des threads àMQTTbibliothèque de base. Il vous permet de créer une tâche d'MQTTagent dédiée qui gère une MQTT connexion en arrière-plan et ne nécessite aucune intervention de la part d'autres tâches. La bibliothèque fournit des équivalents thread-safe à ceux du noyauAPIs, MQTT de sorte qu'elle peut être utilisée dans des environnements multithread.

L'MQTTagent est une tâche indépendante (ou fil d'exécution). Elle garantit la sécurité des threads en étant la seule tâche autorisée à accéder à la MQTT API bibliothèque. Il sérialise l'accès en isolant tous les MQTT API appels à une seule tâche et élimine le besoin de sémaphores ou d'autres primitives de synchronisation.

La bibliothèque utilise une file d'attente de messagerie sécurisée par thread (ou un autre mécanisme de communication inter-processus) pour sérialiser toutes les demandes à appeler. MQTT APIs L'implémentation de la messagerie est découplée de la bibliothèque via une interface de messagerie, ce qui permet de porter la bibliothèque vers d'autres systèmes d'exploitation. L'interface de messagerie est composée de fonctions pour envoyer et recevoir des pointeurs vers les structures de commande de l'agent, et de fonctions pour allouer ces objets de commande, ce qui permet au rédacteur de l'application de décider de la stratégie d'allocation de mémoire appropriée pour son application.

La bibliothèque est écrite en C et conçue pour être conforme aux normes ISOC90 et MISRAC:2012. La bibliothèque ne dépend d'aucune bibliothèque supplémentaire autre que MQTTbibliothèque de base la bibliothèque C standard. La bibliothèque possède des preuves démontrant une utilisation sûre de la mémoire et l'absence d'allocation de tas. Elle peut donc être utilisée pour les microcontrôleurs IoT, mais elle est également entièrement portable sur d'autres plateformes.

Cette bibliothèque peut être utilisée librement et est distribuée sous licence MIT open source.

Taille du code de l'MQTTagent principal (exemple généré avec GCC pour ARM Cortex-M)
Fichier Avec optimisation -O1 Avec l'optimisation -Os
core_mqtt_agent.c 1,7 K 1,5 KM
core_mqtt_agent_command_functions.c 0,3 K 0,2 K
core_mqtt.c (noyau) MQTT 4,0 K 3,4 K
core_mqtt_state.c (noyau) MQTT 1,7 K 1,3 K
core_mqtt_serializer.c (noyau) MQTT 2,8 K 2,2 K
Estimations totales 10,5 K 8,6 K