この勉強会はKOZOSという学習向け自作組み込みOSを開発されている@kozossakaiさんが開催しているものです。
前回はFreeBSD(x86)を使って「Hello World」を追ってみましたが、今回はARMというマイコンが題材です。
Interface誌とかトラ技増刊などでARMの基板も付録でついてきますし、秋月電子等でも1000円ぐらいでARMの評価ボードが買える時代です。ARMは知っておくべきでしょう。
準備としては前回同様にノートPC上のFreeBSD-8.3を使いましたが、今回はクロスコンパイル環境ですので、ARM用のgccやgdbなどを事前にビルドしておきました。
勉強会は前回同様な流れで進みましたが、前回とは違って説明資料は無く、ついていくのが精一杯だったのでなるべくメモを取ることに重点をおきました。
今回おもしろかったのはRISCプロセッサならではの1命令が4バイトの固定長のため、レジスタに定数を設定するだけでも工夫が必要なこと、startup.Sの役割、ゼロから標準ライブラリをどのように作っていくか、ARMは奇数アドレスにコードがあると16ビットコードと認識していることなど、新鮮な内容でした。
今回もかなりスピードが速かったので、メモを見ながらもう一度復習して、大筋は理解できたかなと思います。
次回はどんなテーマでしょうか。楽しみです。
コメント