OSの設定
公開日:
更新日:
ここでは, OSの設定方法について説明します.
設定ファイルは,ArduinOSConfig.h
です. このファイル内にOSの設定を書きます. また, 設定ではハードウェアの基本構成に加え, 各機能の有効化, システムフックを行うか, などといった設定を行えます.
設定方法
各設定項目に対して, 一つの設定マクロが割り当てられています. 例えば, ヒープ領域のサイズの設定マクロは, CONFIG_TOTAL_HEAP_SIZE
であるなどです. この設定マクロに値を定義することで設定を行うことができます. 例えば, ヒープ領域のサイズを500byteに設定したいときは, 以下のように記述します.
#define CONFIG_TOTAL_HEAP_SIZE ((size_t) (500))
設定項目
設定できる項目は以下のとおりです. 設定できるマクロ名を挙げ, その設定内容を説明します.
- プリエンプション機能を持たせるか(*)
- アイドルタスク実行時のシステムフックを利用するか(*)
- システム時間更新時のシステムフックを利用するか(*)
- システム時間の上限を16bitにするか(*)
- 最小のスタックサイズ(*)
- ヒープ領域のサイズ(*)
- システム割り込み周期(*)
- タスク削除(Delete)機能を持たせるか(*)
- タスク停止(Suspend)機能を持たせるか(*)
- 指定時間までのタスク待機(DelayUntil)機能を持たせるか(*)
- 指定時間の間タスク待機(Delay)機能を持たせるか(*)
- メモリ確保失敗時のシステムフックを利用するか
- ミューテックスを使用するか
- 優先度の数
- アイドルタスク内でタスク切り替えを行うか
- タスクの名前の最大文字数
- スタックオーバーフローを確認するか
- タスクの状態を取得する(TaskGetState)機能を持たせるか
- スケジューラの状態を取得する(TaskGetSchedulerState)機能を持たせるか
- 現在実行中のタスクハンドルを取得できるようにするか
- 割り込み関数内でのタスク再開(TaskResumeFromISR)機能を持たせるか