Raspberry Pi 3 Model B+ 向けにリアルタイムOSを実装したので、その話をします。
Raspberry Pi 4でも動くとは思いますが・・・。
もともと、うまく動作確認ができればお金を取ったり、起業したりする計画もあったのですが、やけっぱちのOSS化です。
ある日、「そうだ、OS作ろう」と思いたってしまい、ちまちまとデータ構造などを設計していました。
で、実際に作り始めるにあたって、ターゲット・デバイスをどうするかという問題にぶち当たりました。
ネット上で色々調べると、比較的高価な機材を買わずとも、Raspberry PiでJTAG接続ができるという記述を見つけました。
そんなわけで、Raspberry Pi向けに、Cortex-Aをターゲット・コアとしてOSのコーディングをはじめました。
し・か・し・・・。
実際にOSが組みあがり、実機での検証をしようとした際、問題が発生しました!
なぜか、ldr疑似命令を実行した段階でRaspberry Piが暴走してしまう。ネット上で検索しても、質問しても、原因がわからず、1年以上の時間が経過しました。
正直、これ以上悩んでいても仕方がないし、解決のめどもまったく立たないので、広く世間に公開して知恵を集めることにしました。
で、このOSについてですが、基本はOSEK/VDX + μITRON4.0な仕様となっています。
詳しい仕様は基本設計書を見て頂くとして、肝心のコードはセルフ・レビューもしておらず、動作確認も上述の事情で最低限しかできていません。
なので、不具合は多数潜んでいると思われます。使用の際は、心してかかってください。
ホーム:
http://fuqs.web.fc2.com/computer/lab/fos.htm
GitHub:
https://github.com/tenkoh2/SSF-OS
Wiki:
https://wiki3.jp/SSF-OS