組み込みシステムのファームウェアとソフトウェアの違いが分かりやすく書いてある本は?「よくわかる組み込みシステムのできるまで」

組込みシステムの勉強していると、

ソフトウェアではなくてファームウェアという言葉が出てくることがます。

ソフトウェアっていう用語は、ハードウェアの反対なのでわかりやすいのですが、

一方で、

ファームウェアって何なの?

ソフトウェアエンジニアで、初めて組み込み系の仕事をすることになった人にとっては、

ファームウェアって何?

って疑問が沸いて当然だと思います。

このファームウェアという用語について、

わかりやすく説明されている本があります。

それが、

「よくわかる組込みシステムのできるまで」

ページ32ページから33ページを見ればイメージがつくと思います。

初めて組み込み系の仕事をされるのであれば、導入としてこちらの本から読むことを私はおすすめします。

スポンサーリンク

組み込みシステムのファームウェアって何?

32ページ、33ページの引用をさせていただきます。

組み込みシステムのCPUのプログラムは、通常のソフトウェアではなく特にファームウェアと呼ばれます。

これは硬いハードウェアと柔らかいソフトウェアの中間というような意味合いですが、組み込みの性格をよく表しています。

では、具体的にどういう話なのか?

まず図22にあるようにパソコンのプログラムは一旦ROM ではなくてRAMの領域にプログラム、ソフトウェアがロードされます。

そして、ちなみにROM にあるのは電源を入れたりリセットした時にシステムを待機状態にまでセットアップする部分だけで実際のプログラムはRAMにロードされる。

だからソフトウェアにバグがあれば気軽にソフトを変更してRAMにロードすればすぐに変更後のソフトウェアを活用することができる

以上が一般的なソフトウェアの意味。

ファームウェアとソフトウェアの違いが分かる本

その一方で、

組み込みシステムで使われるファームウェアというのは、プログラムが基本的に全て ROM の中に入っている。

別の言い方をするとプログラムが変更できない ROM に書き込まれているのでだから硬い。

それを英語で言うとファームウェアという用語。

以上が大きな違いです。

確かに、組込み機器の最終製品にはプログラム中に各プログラムは出荷後には基本的な変更できないものです。

だから失敗が許されないんですね。

パソコンとか、スマホのアプリとかって、

たまにバージョンアップとかっていって、定期的にアップデートされることがあります。

言い方はアップデートっていって、聞き心地はソフトですが、

それは実はソフトウェアに不具合、バグがあってそれを修正しているっていうときも多いはず。

ネット経由でソフトのバグをスマホやパソコンに読ませている。

一方、そういった気軽な修正ができないのが組み込みソフトであるファームウェア。

ファームウェアの方が、製品出荷後の気軽な修正がしにくい分、ソフトウェアのリリースは慎重になります。

それからもう一つ。

本書の27ページ。

汎用パソコンと組み込みシステムのプログラムの役割の違いが書いてあります。

先ほどのファームウェアでは何を制御するのかということがこの図を見ればわかります。

まず一般的な汎用のパソコンだとプログラムはWindows などの OS があって標準の周辺装置を使う場合は、ソフトウェアはOS に対する呼び出しだけで済んだりもします。

一方で、組込みシステムの場合は

ハードウェア、

別の言い方をするとCPU、ROM、RAM とかインターフェースに対して細かい指示までファームウェアが担当する。

組み込みソフトの場合は、ハードウェアに直接関係する制御までケアしないといけないのが特徴。

スポンサーリンク

まとめ

ファームウェアとソフトウェアの違いは?

組み込みソフト特有のファームウェアは、

ROM 上に書き込まれるプログラム。

ハードウェアに対する細かい指示まで一つ一つ行うのが組み込みソフト。

ハードウェアの制御に密接に関わっているから、一般的なソフトウェアと区別してファームウェアという別の用語で定義されているんですね。

P.S

ソフトができて、ハードもそこそこ分かるっていう人になれば、

仕事の幅が広がります。言い方を変えると、今の職場環境を変えたいなと思っても、

比較的転職しやすくなります。

では、組み込み系、電子、電気系のエンジニアの求人は、具体的にどんな人材が求められているのか?

そこから情報収集するなら、製造業に特化したエンジニア向けのメイテックネクストが情報が豊富で助かります。

カンタンに無料会員登録できるので、登録しない理由なしです↓

--------------
ソフトができて、ハードもそこそこ分かるっていう人になれば、

仕事の幅が広がります。言い方を変えると、今の職場環境を変えたいなと思っても、

比較的転職しやすくなります。

では、組み込み系、電子、電気系のエンジニアの求人は、具体的にどんな人材が求められているのか?

そこから情報収集するなら、製造業に特化したエンジニア向けのメイテックネクストが情報が豊富で助かります。

カンタンに無料会員登録できるので、登録しない理由なしです↓

スポンサーリンク



スポンサーリンク




シェアする

  • このエントリーをはてなブックマークに追加

フォローする