「詳解 組み込みシステム 第2版」読んだ

Amazonアフィリンク

特にOSレスの規模の組み込みシステム向けのソフトウェア開発の大まかな技術要素を解説した本。経験の浅いソフトウェア開発者や、ソフトウェアに明るくないハードウェア開発者をターゲットに、実開発の経験から、開発の定石やノウハウを語っている。

まえがきにも書かれているんだけど、体系的な技術の獲得というよりも、実開発の経験を詰め込んでいる章立てや内容になっている。また、OSレス程度の規模が対象とはいえ、(2026年から見て)ここ10年ほどの最近のトレンドがいまいち反映しきれていないようにも思える。一方で、日本語の訳者がLinuxに明るいこともあり、注釈が大規模組み込みLinux向けに誘導している風もあって、読んでて想定読者の像がブレてる印象が拭えない。

内容も、パソコンしか知らない(組み込みを知らない)ような初級開発者が組み込み中級を目指す、といったレベルの内容に感じた。細かく読めば、実体験から来る開発の難しさも書いてはあるんだけど、具体的な手法といった深い内容に入るのではなくて、あくまで初級者に向けて一般論を語りとくというか。著者は、DSPなどの信号処理が本当の専門のようで、いっそのことそっちの内容を増やしたほうがよかったのでは、と思わなくもない。「組み込み」と一口に言っても幅が広くてひとまとめにしづらい、という特有の課題なのかもしれない。

というわけで、私としては、組み込みを知らない初級者ソフト開発者が組み込みを本業にするときに読む本、と感じた。残念ながら今の日本ではそれに該当する人って非常に少ないんだよなぁ。

以下は個人的に気になった箇所のピックアップ集。

2.2.2 ブロック図(P11)
>SPI(スパイと発音)
今までずっと「えすぴーあい」と呼んでた。というか「すぱい」と呼んでる人見たことない...

3.7.1 デジタルマルチメータ(P51)
>デジタルマルチメータ(DMM)だけは用意してください。
昔ながらのアナログテスターと今どきの簡易ロジアナしか持ってない。1つくらいDMM持っとくべきかなと思った。YouTuberの熊五郎お兄さん使ってるAstroAI デジタルテスターくらいがニワカにはちょうどいいのかな。

6章付近
割り込み禁止と排他処理(mutex)との違いの説明が怪しかった。OSレスなのでSMP(マルチコア)ではないからこの程度で十分、なのかもしれないけど、逆にマルチコア当たり前なArm Cortex-A(Linux含む)なんかだと困るんだよなぁ。「割り込み禁止だけでクリティカルセクション対応できる」という思い込みをしてしまうと苦労する(経験談)

8.4.3 littlefs
https://github.com/littlefs-project/littlefs/というOSレス環境で使えるFilesystemがあることを知れてよかった。

10 ネットワークとセキュリティ
は、ネットワークに繋がるのが当たり前になりつつある昨今のIoT事情を反映していてよかった。

11.2 RAM不足の対策
コンパイラ最適化の話がなにか古い気がする。GNU gccベースのそこそこ最近のバージョンならば、Cortex-M向けで「ローカル変数の数を減らす」ようなことは意味がない(コンパイラが賢く処理してくれる)ような。Arduinoくらいの規模でこういうのが必要なんだろうか。

このブログ記事について

このページは、らるるが2026年5月 5日 06:34に書いたブログ記事です。

ひとつ前のブログ記事は「個人的に大嫌いなWebサイトデザイン」です。

次のブログ記事は「「100円ショップのガジェットを分解してみる!」読んだ」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ

ウェブページ

Powered by Movable Type 7.9.0