突然ですが、「この機器変な動きする時あるからファームのバージョン上げた方が良いかなー」、なんて会話を聞いたことは無いですか?
その時「ファーム」とは「ファームウェア」のことです!
今回は電子機器を動かすために重要なファームウェアに関して解説します。
ソフトウェアや、勘違いして覚えてしまいがちな、デバイスドライバとの違いも含めて解説します!
ファームウェアとは?
英語で書くと「firmware」で「firm (堅い、固定の)」の「ware(品、製品)」となり、シンプルに表現すると、
「家電やコンピュータなどの電子機器を制御して動かすもの」
です!
もうちょっと、IT用語よりに表すと「ハードウェアを制御するソフトウェア」になりますかね。
「じゃあ、ソフトウェアじゃん!」という突っ込みがあるかもしれませんが、それは後程、説明します。
ハード(硬い)ウェアにくっ付いているソフトなので、ハードよりの「firm(硬い)」という言葉が使われているのですね。
家電やコンピュータなどの電子機器がその役割を果たすためのソフトウェアがファームウェアとなり、各電子機器のファームウェアの役割はざっくり以下のようになります。
ファームウェアの役割の例
- 冷蔵庫:温度調整や食品状態の管理の制御
- エアコン:空調の制御
- 自動車:ナビや速度や安全機能の制御
- WiFiルーター:通信の制御
- プリンタ:印刷やスキャナーの制御
- パソコン:マザーボードを制御(BIOSやUEFIと言われている)
今どきの電子機器はコンピュータの制御が何かしら入ってるので、ファームウェアは切っても切れないものですね。
そして、ファームウェアはROM等の集積回路(記憶領域)にあらかじめ書き込まれた状態で、機器に組み込んだものですので、製品出荷時には動作確認が入念に行われていますね。
ファームウェアのアップデート
ファームウェアは製品出荷時に埋め込まれているので、基本的に変更することは無い(できない)のですが、技術の発達により、パソコンやネットワーク経由でアップデートすることができるようになっています。
それにより、製品に不具合やセキュリティ上の問題があった場合に修正したり、新しい機能を追加したりすることができます。
これを「ファームウェアのアップデート」と呼びます。
最近はゲーム機や携帯電話もファームウェアをアップデートすることで、新たな機能(例えばBluetooth接続ができるようになる)が使えるようになりますよね。
これって凄いことだと思いませんか?
ソフトウェアやデバイスドライバとの違いは?
ここまでの説明でファームウェアは「ハードウェアを制御するためのソフトウェア」ということが分かりましたが、ソフトウェアとの違いは何だろう?疑問になりますよね。
ソフトウェアとは「コンピュータ上で動く自由なプログラムの集まり」なので、何かに特化したものではなく、抽象的なイメージですね。それに比べてファームウェアはハードウェアに紐づいているので、役割が具体的になっているものですね。
ちょっと分かりにくいですが、「ソフトウェアは幅広い、ファームウェアはハードウェアに特化している」くらいで覚えておくと良いかと思います。
また、「デバイスドライバ」という言葉がありますが、これはハードウェアをOSで操作するためのソフトウェアとなり、OSの中に存在するので、ファームウェアとは役割が違いますね。
ちょっとイメージが湧きにくいと思いましたので、コンピュータを例に図にしてみました。
ソフトウェアの中に色んな区分があるのが分かると思います。
スマートフォンのファームウェアとは?
iPhoneには「iOS」というものがあり、定期的にiOSのアップデートが発生します。
では、iOSとは「OS」なのでしょうか?それとも「ファームウェア」なのでしょうか?
これは見方によって定義が分かれるところかと思いますが、私的には以下の定義です。
「iOSはOSだけど、iOSアップデートの時はファームウェアもアップデートされている」
つまり、定期的なiOSのアップデートはOSとしての機能向上もあれば、ハードウェア的な機能の向上も同時にやっているということになりますね。
まとめ
今回はファームウェアに関して解説してきました。
ファームウェアのまとめ
- ハードウェアを制御するソフトウェアのこと
- 様々な電子機器の中に組み込まれている
- 最近はインターネット経由でアップデートができ、機能追加や不具合修正が行える
- デバイスドライバとは役割が違う
最近の電子機器には無くてはならない存在ですね。
昔はファームウェアをアップデートするとなると、メーカーに持ち込んで基盤から交換する、なんて結構な事になっていましたが、今はインターネット経由でファームウェアをいつでもアップデートできるので、便利ですよね。
逆に製品に不具合があってもすぐアップデートで直せる手段があるので、製品出荷時のチェックが甘くなっているのでは?なんて勘繰っちゃいもしますね(笑)
以上です!