コアMQTT エージェントライブラリ - 無料RTOS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

コアMQTT エージェントライブラリ

注記

このページのコンテンツは ではない場合があります up-to-date。最新の更新については、Free RTOS.org ライブラリページを参照してください。

序章

コアMQTT エージェントライブラリは、スレッドの安全性APIを に追加する高レベルですコアMQTTライブラリ。これにより、バックグラウンドでMQTT接続を管理し、他のタスクからの介入を必要としない専用MQTTエージェントタスクを作成できます。ライブラリは、コア MQTTの と同等のスレッドセーフを提供するためAPIs、マルチスレッド環境で使用できます。

MQTT エージェントは独立したタスク (または実行スレッド) です。MQTT ライブラリの へのアクセスが許可されている唯一のタスクであることで、スレッドの安全性を実現しますAPI。すべてのMQTTAPI呼び出しを 1 つのタスクに分離することでアクセスをシリアル化し、セマフォやその他の同期プリミティブが不要になります。

ライブラリは、スレッドセーフメッセージングキュー (またはその他のプロセス間通信メカニズム) を使用して、 MQTT を呼び出すすべてのリクエストをシリアル化しますAPIs。メッセージングの実装は、メッセージングインターフェイスを介してライブラリから切り離されるため、ライブラリを他のオペレーティングシステムに移植できます。メッセージングインターフェイスは、エージェントのコマンド構造へのポインタを送受信する関数と、これらのコマンドオブジェクトを割り当てる関数で構成されています。これにより、アプリケーションの作成者はアプリケーションに適したメモリ割り当て方式を決定できます。

ライブラリは C で記述され、ISOC90 および MISRAC:2012 に準拠するように設計されています。ライブラリには、コアMQTTライブラリと標準 C ライブラリ以外のライブラリへの依存関係はありません。ライブラリには、安全にメモリを使用し、ヒープ割り当てがないことを示すプルーフがあります。そのため、IoT マイクロコントローラーに使用できます。また、他のプラットフォームに移植可能です。

このライブラリは自由に使用でき、MITオープンソースライセンス で配布されます。

コアMQTTエージェントのコードサイズ (ARMCortex-M GCC の で生成された例)
File -O1 最適化を使用 -Os 最適化を使用
core_mqtt_agent.c 1.7 K 1.5 K
core_mqtt_agent_command_functions.c 0.3 K 0.2 K
core_mqtt.c (コア MQTT) 4.0K 3.4K
core_mqtt_state.c (コア MQTT) 1.7 K 1.3K
core_mqtt_serializer.c (コア MQTT) 2.8K 2.2 K
合計 (概算) 10.5K 8.6K