タグ

ブックマーク / sukunabikona.hatenadiary.org (2)

  • RTOS3時間クッキング - 常世の国から組込みを叫ぶ

    これはカーネル/VM Advent Calendar51日目の担当として書いた記事です。 前置き i386規模になると経験者でなければ無理ですが、AVR/PIC/M16C等の8bit〜16bitマイコンならば日曜日の午後の空いた時間を使ってRTOSっぽいものが作れると主張しているのですが、中々賛同が得られません。 OSを作るのは簡単でしかも楽しいと言うことを主張するために、実際にAVR上に3時間程度で簡単なRTOSを作ってみました。 制約等 今回は3時間程度で作るために以下の部分で手を抜いています。 タスクのスタックエリアはグローバル変数領域を使います。 スケジューリングは静的有線順位付きのプリエンプティブスケジューリングです。 優先度はタスクのIDを用います。N個のタスクの場合、ID:0のタスクがが最も高い優先度のINITタスクとなり、id:N-1が最も低い優先度を持つDIAGタスクとな

    RTOS3時間クッキング - 常世の国から組込みを叫ぶ
  • 常世の国から組込みを叫ぶ

    これはカーネル/VM Advent Calendar51日目の担当として書いた記事です。 前置き i386規模になると経験者でなければ無理ですが、AVR/PIC/M16C等の8bit〜16bitマイコンならば日曜日の午後の空いた時間を使ってRTOSっぽいものが作れると主張しているのですが、中々賛同が得られません。 OSを作るのは簡単でしかも楽しいと言うことを主張するために、実際にAVR上に3時間程度で簡単なRTOSを作ってみました。 制約等 今回は3時間程度で作るために以下の部分で手を抜いています。 タスクのスタックエリアはグローバル変数領域を使います。 スケジューリングは静的有線順位付きのプリエンプティブスケジューリングです。 優先度はタスクのIDを用います。N個のタスクの場合、ID:0のタスクがが最も高い優先度のINITタスクとなり、id:N-1が最も低い優先度を持つDIAGタスクとな

    常世の国から組込みを叫ぶ
    yuiseki
    yuiseki 2011/02/08
  • 1