フレッシャーズのための組み込みソフト開発講座 ――新人エンジニアがまわりの信頼を勝ち得るには...

宿口雅弘

tag: 組み込み

技術解説 2002年3月14日

●組み込みシステムの開発は「特別」か?

 パソコンや汎用コンピュータ向けのアプリケーション・ソフトウェアの開発に携わっているエンジニアは,「組み込みシステムは特別」とよく言います.一方,組み込みソフトウェアの開発に携わっているエンジニアも,「組み込みシステムは特別」,「自分が携わっている分野は特別」と言います.では,どのようなところが「特別」なのでしょうか?

 組み込みシステムは,その名のとおり,「機器に組み込まれるコンピュータ・システム」であり,そのコンピュータ上で動作するプログラムのことを指します.そして,よく言われる組み込みシステムの特徴として,サイズ(機器のサイズ,プログラムのサイズ)の制約と応答時間の制約(リアルタイム性)があります.パソコンや汎用コンピュータ向けのアプリケーション・ソフトウェアと異なり,こうした制約を満たさなければなりません.

 ただし,なにごとも「特別」のひと言でかたづけてしまう姿勢には関心しません.組み込みプログラムと一般のプログラムのどこが異なるかをきっちりと理解しておくべきでしょう.そのためには,組み込みシステムをよく知らなければなりません.例えば,CPUカードやI/Oカードの動作,あるいはプログラム対象となるCPUや各種半導体デバイスの動作と性能などです(もっとも,システムの規模が大きくなるとひとりで理解することは無理なので,組織として理解することになるのだが...).これらの知識は文献だけでは,なかなか身につかないものです.そのシステムが利用されている現場に積極的に出ていくことが重要です.

 組み込みシステムに搭載されているソフトウェアが,パソコンや汎用コンピュータのアプリケーション・ソフトウェアと違っているのは,「機器の制御」を中核としているからだと思います.すなわち,半導体デバイスの制御を主としているところが「特別」なのです.また,価格の制約やメモリの制約から,高度なOSを搭載しにくいという事情もあります.OSが持つ各種の保護機能が使えないため,プログラムの開発には神経を使います.また,デバッグも困難です.

 ただし,最近では徐々に事情が変わってきています.技術の進歩によって,CPUが高機能・高速になり,メモリも安価に調達できるようになりました.そのため,保護機能を備えるCPUを搭載できるようになり,OSも高機能になってきています.最近では,純然たる組み込み用OSであるVxWorksやμITRONにもメモリ保護機能が用意されており,メモリ保護の観点では,パソコンや汎用コンピュータの世界と変わらなくなりつつあります.

 それでも組み込みシステムの本質が機器の制御であるという点は変わっていません.開発の主体はデバイス・ドライバであり,合わせてシステム・レベルのプログラミングが要求されます.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日