🤖
RTOSのイベントフラグ
概要
Interface社の「ゼロから作るOS」を読んでいてRTOSについて少し理解できた気がするので記事にしました。
購入先リンク
イベントフラグとは
・ RTOSにおけるイベントフラグとは文字通りにざっくり言うと指定のイベントフラグが立っているときに該当タスクを呼ぶといった処理です。
・ RTOSは基本的にキューにタスクを格納してそのタスクの切り替えを制御することでリアルタイム(我々が設定した時間通り)にタスクを実行できます。
キューには2種類あり実行可能状態にあるタスクを格納するキューと待ち状態にあるキューの2種類を使用してタスクの管理を行います。
・ つまり、現在待ち状態にあるタスクに対してイベントフラグを立たせる(ボタンを押す)などをすることでタスクを実行可能キューに格納することでタスクの動作(LEDを光らせる)などができるようになります。
ただし、実行可能キューに上記で登録したキューよりも優先度の高いタスクがあった場合はそのタスクが切り替わるなどを待ってから実際にタスクが実行されます。

最後に
実際にラズパイpicoを動かしながらタスクの切り替わりを見ているのですが中々難しいです。
理論としては理解できるもののフラグセットやフラグ待ちの内部に意識を向けると途端に解像度が下がります。
動かしながら学習していきます。
Discussion