2015/08/26

ハードを直接コントロールするソフトウエア、それが『ファームウエア』

パソコンやデジタルカメラ、スマートフォン、タブレットなどの電子製品を使っていると、ときに「ファームウエアを最新のものにアップデートしてください」といったメッセージが表示されることがある。しかし、手順にそってアップデートを始めると、「アップデート中には決して電源を切らないでください。元に戻らない場合があります」などという怖そうな警告が出てきて、ものすごく緊張してしまう。この恐ろしげなファームウエアとは、いったい何なのだろうか?

電子製品は、機械であるハードウエアと、それを制御するソフトウエアから成り立つ。そのソフトウエアの中でも、ハードウエアにより密接に関係しているのがファームウエアだ。ファーム(Firm)にはすなわち、「弾力があってほどよく硬い」という意味がある。文字どおり、ソフトでもハードに近い硬めのソフト――ファームというわけだ。

このファームウエアは、ハード(機械)を直接コントロールするという役割を果たす。パソコンであれば、ハードディスクを回し、情報を書き込んだり読み取ったりし、CPUで計算させ、ディスプレイに表示するといった、いわば機械の操縦者がファームウエアなのだ。

こういったパソコンのファームウエアをBIOS(バイオス=Basic Input/Output System)と呼ぶこともある。OSやアプリケーションは、このファームウエアを通じてコンピューターとやり取りをする。いわば、OSやアプリケーションが「ハードディスクからこの情報を取ってきて」とファームウエアに命令すると、「ハハァ!」とファームウエアがハードディスクを回して目指す情報を探し当て、「これにございます」とOSやアプリケーションに手渡すというわけである。

もっとも、最近のパソコンでは、ファームウエアは起動後にマシンを初期化し、OSをロードするという準備作業に徹し、その後の制御はOSやアプリケーションが直接することが多いようではある。

さて、ファームウエアのもう一つの大きな特徴は、それがROM(読み出し専用のメモリ)やフラッシュメモリーといった、電源が切れても内容が失われない不揮発メモリに"書き込まれている"ことだ。もしもファームウエアがROMに格納されていたら、アップデートはできず、ROMそのものを交換するしかない。ROMは再書き込みができないからだ。用途が限定されている家電や低価格品などは、ROMにファームウエアが格納されている場合がほとんどだ。

ファームウエアをアップデートできるのは、書き込み可能なフラッシュメモリーに格納されている場合で、デジタルカメラやスマートフォン、パソコンといった複雑で多様な仕事をこなすハードに多い。「アップデート中には電源を切らないで」といったメッセージが流れるのは、ファームウエアがハードそのものに密着しているので、ファームウエアが壊れた場合には、そもそも起動すらしなくなる恐れがあるからなのだ。

とはいえ、最近の製品は、ブートブロックという立ち上げ専用のファームウエアを別途ROMに格納し、フラッシュメモリー上でのアップデートが失敗しても、きちんと再起動できるようになっているので、ご安心あれ。

文:太田 穣