サンプルプロジェクトの実行
注釈
ここで説明しているは、SOLIDの機能を試していただくサンプルとして実装されたものです。厳密なテストや、パフォーマンスのチューニングなどは行っておりませんので、動作保証の対象外となります。
ファイルの取得
シミュレータ環境で実行可能なサンプルプロジェクトを実行するには、ダウンロードサイトから以下のファイルを取得してください。
solid-os-b9fcb79-aarch64-qemu-20210730.zip
(AArch64用)
また、ファイルを展開すると、下記のようなサンプルプロジェクトが apps
ディレクトリ内に同梱されています。
- タスク切り替えサンプル
qemu-virtmini-sample-asp3-demo-task-aarch64-S
qemu-virtmini-sample-fmp-2CPU-demo-task-aarch64-S
- SOLID独自形式ローダブルサンプル
qemu-virtmini-sample-asp3-demo-loader-aarch64-S
- DLL形式ローダブルサンプル
qemu-virtmini-sample-asp3-demo-dll-aarch64-S
ここでは、AArch64用の qemu-virtmini-sample-asp3-demo-task-aarch64-S
を使用します。
ソリューションのビルド
ソリューションファイル qemu-virtmini-sample-asp3-demo-task-aarch64-S.ptsln
を開き、ビルドしてください。
デバッグの開始
デバッグ実行を行うには PARTNER QEMU Debug Engine ボタンを押下します。自動的にQEMUシミュレータが動作し、デバッグ実行を開始します。 あらかじめブレークポイントを設定しておけば、そこで停止します。
サンプルの動作について
初期タスク (
root_task
) が、子タスク (child_task
) 32個を動的に生成し、開始します子タスクは自分の処理が完了したら、イベントフラグを設定します
初期タスクは子タスクからのイベントフラグを待っており、全てのタスクが完了すると、全ての子タスクを削除します
このあと、また子タスク32個の動的生成に戻り、この処理を繰り返します。