ファームウェア
概要
ファームウェアとは、コンピューターなどのハードウェアを制御するためのプログラムのことである。ファームウェアは、さまざまなハードウェアの動作に対して命令や制御をさせるために内蔵されているものである。ファームウェアはもともと書き換えを前提とはしていなかったが、近年では各機器が複雑に関連し合っていることもあり、ファームウェアはさまざまなタイミングで更新されることがある。この場合においては、ネットワークを経由してファームウェアのバージョンアップを実施することが多い。ファームウェアの更新は、主に新しいOSへの対応や不具合の解消、セキュリティの脆弱性の解消などのために行われる。
種類
ファームウェアを持つ機器としては、パソコンやそれに内蔵されているハードディスク、CDドライブやDVDドライブなどの光学ドライブ、周辺機器となるプリンタやルータなどにファームウェアは存在している。さらにスマートフォンや家電製品にもファームウェアは存在しており、人々が利用している機器のなかで、内部で複雑な処理をしているものについてはファームウェアが存在する。
シーン
各システムで用いているハードウェアに対してファームウェアが新たに発表された場合、新バージョンのファームウェアは不具合修正やセキュリティに対する脆弱性対応がされていることが多い。そのためハードウェアのメーカー側もバージョンアップを推奨しているが、バージョンアップをすることで別の不具合を発生させてしまう可能性もある。ファームウェアのバージョンアップの際はどの部分に修正がなされているかを確認し、検証用の機器などを用いて事前にバージョンアップ検証をすることが求められる。仮にバージョンアップをした後で不具合が発生した場合に、元のバージョンに戻すことも可能となる。バージョンを下げることをバージョンアップと対比してダウングレードと呼ぶ。
歴史
以前ファームウェアは書き換えを前提とされていなかったため、ROM(Read Only Memory:読み取り専用メモリ)に書き込まれた状態で機器が出荷され、バージョンアップが困難であった。しかし近年では、書き換え可能なフラッシュメモリなどにファームウェアが記載される場合もあり、ユーザが専門的な知識を必要とせず、インターネットから自動でダウンロードを行いハードウェアに適用するなど、容易に書き換えを行うことが可能となっている。