RTOS
参考
12ステップで作る組込みOS自作入門
ISBN-13 978-4877832391
リアルタイム組込みOS基礎講座
ISBN-13 978-4798110042
用語
排他
ある資源にアクセスしている最中に他の処理がアクセスしないように保証すること。
ある処理がアクセスしている間は他の処理はアクセスできない。
セマフォ
複数のスレッドで共通利用する資源について、使用中に他のスレッドが使用しないように排他制御をかける仕組み。
資源を操作する前にロック処理(セマフォを獲得する)を行う。
他のスレッドがその資源を操作する際には、ロック解除(セマフォが開放)されるまでスリープ状態に入り待つ。
メッセージ
タスク間の通信。
メッセージの送信側は、メッセージ送信ようのシステムコールを呼び出す。
呼び出しの際は、メッセージIDを指定する。
メッセージIDのメッセージボックスにメッセージを送信する。
メッセージの受信側は、メッセージIDを指定してメッセージ受信用のシステムコールを呼び出す。
メッセージIDのメールボックスからメッセージを受信する。
メッセージはキューで管理される。
キュー
タスク間のデータ通信のためにメッセージ交換を行う。
メッセージキューは、バッファににたオブジェクト。タスクやISR(割込み)がデータのやりとりをする。
メッセージキューの生成時に下記を生成する。
キューコントロールブロック(QCB)、メッセージキュー名、ID、メモリバッファ、キュー長、最大メッセージ長、タスクの待ちリスト
割込み・タスク
優先度 | 処理 | 実行順の制御 |
---|---|---|
高 | 割込み:マスク不可 | Hardware |
割込み:マスク可能 優先度高 | Hardware | |
割込み:マスク可能 優先度低 | Hardware | |
タスク :優先度高 | Karnel | |
低 | タスク :優先度低 | Karnel |
___ ISR(高) ___| |___ ISR(低) ___| |___ task ___| |___
task1()とtask2の優先順位が同じ場合、タイムスライス機能がある場合交互に処理が切り替わる?