社会人のメモ帳

忘れたくないことアレコレ

組込みエンジニアの教科書 書評

組込みに関する幅広い知識

情報

著者:牧野進二/渡辺登

発行:2019年4月26日

目次

書評などなど

組込みとは。

マイクロコンピュータ、通称マイコンを搭載した機械や装置のことを指す。つまりは身近に溢れている家電は、全て組込みである。その組込み製品の開発の、いろはの「い」から学ぶことができる教科書が、本著となっている。

第一章「組込みソフトウェアエンジニアの仕事」では、そもそも組込みとは何かの説明から始まり、開発現場に関する規模や、組込み製品が提供するサービスといった組込みと実社会の関係性が分かるような話が広がっていく。

第二章「マイコンハードウェア」から第七章「組込みLinux」までで、おおよそ組込み開発に必要な最低限度の知識が身に付くように構成されている。

そもそも組込みを全て学ぼうとした場合、ハードとソフトの両面の知識が必要になる。

第二章「マイコンハードウェア」では表題の通り、ハードウェアに関する情報がまとめられている。しかし内容としては、単語の意味を確認するという意味合いが強い印象を受けた。少なからず開発現場で話をするに困らない程度の知識を付けるだけならば、本著で問題はないだろう。

第三章「組込みソフトウェア」では表題の通り、ソフトに関する内容がまとめられている。初学者にとって、おそらく大きな関門となるのではと個人的には思っている内容となっている。

第三章の冒頭でOSのあるマイコン、OSのないマイコンの話が登場する。それぞれの説明はざっくりとしており、「OSのないマイコンにはミドルウェアがなく、OSのあるマイコンにはミドルウェアがある」という風に記述されている。この段階で、そもそもOSが分からないという方は、第五章「リアルタイムOS」まで飛ぶ必要がある。

そのうえ、C言語に関する知識が当たり前のように要求される。C言語を知らないという方は、回れ右して勉強する必要があるという訳だ。本著で組込みを学びたいという方は、二章までをしっかり学びつつ、C言語の学習を並行しながら第三章以降を読み進めるという形になるだろう。

第四章ではArduinoというAmazonでも買えるお手軽マイコンを購入し、それを片手に勉強する内容となっている。つまり、実際にマイコンにプログラムを書き込んで動かしてみようという回だ。

この部分に関しては、本著だけでなくArduinoの専門書籍などを買うことをおすすめしたい。内容はかなり深くまで踏み込んでいるのだが、そこに至るまでの階段がない。開発現場にいる者にとってしてみれば、丁度いい塩梅なのかもしれないが、初学者にはハードルが高いのではと思う。

 

第五章「リアルタイムOS」に関して、個人的な見解として割かれているページ数が少ないように感じた。この辺り、組込みを教えるに当たってどこを重視するかによって変わってくると思うが。

おそらく本著で重視されているのは、第六章以降で書かれてくる今後の組込み開発で重視されてくるであろうIoTやAIといった新たな技術であったり、今後変わっていくことが想定される開発プロセスの話なのだろうと思う。

そういった組込みに要求されるようになってくる新しいものに対応するために、RTOS(=リアルタイムOS、即時性を重視している)からLinuxに切り替わっていくのだろう。Wi-Fiと接続するような組込みの製品には、RTOSLinuxの両方のOSが組み込まれた製品は確かにあるし、そういった知識があった方が良いことは確かだ。

IoTは今後、どんどんと広がりを見せていくだろう。それらの知識と組込みの知識、両方を備えていくことで、自分のキャリアにも広がりを持たせられるかもしれない。組込みに関して、幅広く浅く学べる書籍となっていた。