Apache Mynewt


Apache_Mynewt

 「ApacheMynewt」  
Apache Mynewtは、接続されたモノのインターネット(IoT)デバイス用のモジュラーリアルタイムオペレーティングシステムであり、電力、メモリ、およびストレージの制約の下で長時間動作する必要がそれは無料でオープンソースソフトウェアの下でインキュベートすることは、Apache Software Foundation、でソースコードの下で配布Apacheライセンス2.0の商業の採用を助長している寛容なライセンスのオープンソースソフトウェア。 Mynewt デベロッパー
Apache Software Foundation、コミュニティ
で書かれている
C(Mynewt OS)Go(Newt Tool)
動作状態
安定
ソースモデル
オープンソース
最新のリリース
1.9.0 / 2021年4月7日; 5か月前 (2021-04-07)
リポジトリ
Mynewtリポジトリ
プラットフォーム
Cortex-M0、Cortex-M3、Cortex-M4、Cortex-M7、MIPS32、Microchip PIC32、RISC-V
ライセンス
Apacheライセンス2.0
公式サイト
mynewt .apache .org

コンテンツ
1 概要
2 コア機能
3 Bluetooth Low Energy
4 サポートされているボード
5 パッケージ管理
6 も参照してください
7 参考文献
8 外部リンク

概要
Apache Mynewtは、32ビットマイクロコントローラーベースのIoTデバイスのプロトタイピング、デプロイ、および管理を容易にすることを目的とした豊富なライブラリセットを備えたリアルタイムオペレーティングシステムです。さまざまなタイプのマイクロコントローラー間で組み込みシステムアプリケーション(ロック、医療機器、産業用IoTなど)を構築できるようにすることは、非常に構成可能です。Mynewtという名前は、英語の分という言葉遊びであり、非常に小さいことを意味します。カーネルのサイズはわずか6KBです。
OSは接続用に設計されており、Bluetooth Low Energy4.2スタックの完全な実装が付属しています。BLE(プライバシーを除くすべてのBluetooth 4.2準拠のセキュリティ機能をサポート)と、デフォルトのファイルシステム、コンソール、シェル、ログ、統計などのさまざまなユーティリティを追加すると、Nordic nRF51822 BluetoothSoCの画像サイズは約96KBになります。 。このサイズメトリックは、ブートローダーイメージを除外します。

コア機能
コアオペレーティングシステムは以下をサポートします:
プリエンプティブマルチスレッド
ティックレス優先度ベースのスケジューリング
プログラム可能なタイマー
システム時刻
セマフォ
ミューテックス
イベントキュー
メモリ管理(割り当て):動的(ヒープ)とプール
多段ソフトウェアウォッチドッグタイマー
ネットワークプロトコルスタックを上下に移動するときにパケットデータを保持するためのメモリまたはデータバッファ
その他の機能とユーティリティは次のとおりです。
CPU時間、アナログ-デジタルコンバーター(ADC)、デジタル-アナログコンバーター(DAC)、汎用入出力(GPIO)、相互統合回路(I²C)、パルス幅をサポートするハードウェア抽象化レイヤー変調(PWM)、シリアルポート、シリアルペリフェラルインターフェイスバス(SPI)、ユニバーサル非同期レシーバ/トランスミッタ(UART)。
最小限のRAM使用量と信頼性機能を備えたNewtronフラッシュファイルシステム(nffs)
クライアントコードが代替ファイルシステムを選択できるようにするファイルシステムの抽象化
コンソールアクセスとシェルパッケージ
SHA-256を使用した画像の整合性検証と、実行前の画像のオプションのデジタル署名検証を含む、安全なブートローダーと画像オーガナイザー(マネージャー)
回帰テストを構築するためのテストユーティリティ
すべての主要なパッケージの統計とログ
JavaScript Object Notation(JSON)エンコーダーおよびデコーダーライブラリ
Lua通訳

Bluetooth Low Energy
Mynewtで利用可能な最初のネットワークスタックはBluetoothLow Energy であり、NimBLEと呼ばれます。Bluetoothコア仕様4.2に準拠しています。
NimBLEには、ホストコンポーネントとコントローラーコンポーネントの両方が含まれています。コントローラのソースコードにアクセスすることで、BLEのパフォーマンスを高度に構成できます。たとえば、BLEスループットは、接続間隔、データパケットサイズ、パケットキューサイズなどを変更することで調整できます。十分なRAMが割り当てられていれば、多数の同時接続を必要とするユースケースも同様に構成できます。利用可能なサービスの使用方法を示すサンプルアプリケーションがパッケージに含まれています。

サポートされているボード
オペレーティング・システムはのために設計されたクロスプラットフォームで使用する組み込みシステム(装置)とマイクロコントローラ。2017年3月現在、以下のボードサポートパッケージが含まれています。
NordicSemiconductorのnRF52832Bluetooth SoC
NordicSemiconductorのnRF51822 / nRF51422 Bluetooth SoC
STM32F3DISCOVERYとSTM32 STからF3xxシリーズのCortex-M4
STM32-E407用STM32F407ZGT6 STからのCortex M4
ArduinoZeroおよびZeroPro
ATSAMD21G18 CortexM0を搭載したArduinoM0 Pro
Arduino 101、Bluetoothコントローラーのみ
Arduino Primo、Bluetoothコントローラーおよびホスト

パッケージ管理
このプロジェクトには、組み込みシステム開発用のコマンドラインインターフェイス(CLI)ベースのスマートソースパッケージマネージャーシステムであるNewtToolが含まれています。また、指定されたパッケージとコンパイラオプションを使用してビルドを作成し、イメージとそのデジタル署名を生成し、最後にさまざまなターゲットでファームウェアをダウンロードしてデバッグすることができます。

も参照してください
組み込みオペレーティングシステム
リアルタイムオペレーティングシステムの比較

参考文献
^ 「ダウンロード-ApacheMynewt」。mynewt.apache.org。Apache SoftwareFoundation 。2021-04-13を取得。
^ 「Arduinoとランタイムが協力してApacheMynewt(インキュベーション)をArduinoエコシステムに導入します」。Globenewswire.com 。
^ 「Mynewtインキュベーションステータス–Apacheインキュベーター」。incubator.apache.org 。
^ 「ApacheMynewtRTOSはIoTの電力、メモリ、ストレージの制約に対処します」。www.infoq.com 。
^ 「オープンRTOSターゲットネットオブシングス」。www.eetimes.com 。
^ “nRF51822″。
^ 「ApacheMynewtがArduinoSrlの最新のSBCに家を見つけました」。www.linuxtoday.com 。
^ Bluetoothコア仕様4.2

外部リンク
公式サイト
ApacheMynewtソースリポジトリ
 title=