こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

ファームウェアの意味がやっぱり分からないです

ファームウェアの意味を知りたくてネットで調べると、「ハードウェアを直接制御するためのソフトウェアのことである。」と出てきます。初心者の方が質問掲示板で質問されているのを見ても、どの回答者さんも「ハードウェアを制御するもの」「ROMやフラッシュメモリーに入っている」「ソフトウェアとハードウェアの間のもの」という解説で、やっぱりよく分かりません。

もっともっとやさしく教えて欲しいです。例えば料理に例えると、
 ハードウェア : 鍋、フライパン、ヤカン、包丁などのこと
 ソフトウェア : 料理の作業のこと(例えば、焼く、煮る、切る、炒める)
 ファームウェア: ハードとソフトの間??例えば包丁を研ぐ?フライパンを買い替える?
など具体的な例を出して教えてほしいです。

 「ハードウェア」はなんとなく分かります。ハードディスク、マウス、液晶画面、DVDドライブ、液晶テレビ、スピーカーなどのことですよね。

このハードウェアを「制御する」とはどういう事しょうか。制御=操るという意味だとすると、ハードディスクのディスクをある回転数で回転させる→ファームウェアが1000回転と命令すれば1000回転で回り、2000回転と命令すれば2000回転で回る、などという理解は正しいでしょうか。

たとえば液晶テレビのファームウェアは、液晶テレビのどの部分をどのように操作しているのでしょう。液晶テレビのファームウェアをアップデートすると、その操作方法がどのように変わるのでしょうか。

すみません、これくら私は全然分かってないです。本当にお恥ずかしい限りですが、どうか分かりやすく教えてください。よろしくお願いいたします。

投稿日時 - 2016-06-06 22:23:38

QNo.9183821

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(18)

ANo.18

> 具体的な例を出して教えてほしいです。

中々 うまい例が思いつきませんが、家を建てる場合で説明すると、下記のようになります(OS は説明できていませんが…)。

ユーザー:施主(せしゅ)
アプリケーション:工務店、設計士
ドライバ-:現場監督
ファームウェア:職人
ハードウェア:大工道具、建設機械(下記ペ「建設機械」参照)

建設機械
https://www.google.co.jp/search?newwindow=1&hl=ja&site=imghp&tbm=isch&source=hp&biw=1024&bih=644&q=%E5%BB%BA%E8%A8%AD%E6%A9%9F%E6%A2%B0&oq=%E5%BB%BA%E8%A8%AD%E6%A9%9F%E6%A2%B0&gs_l=img.12..0l10.2415.2415.0.4068.1.1.0.0.0.0.103.103.0j1.1.0....0...1ac.2.64.img..0.1.102.uC8FXSQ9cdY

投稿日時 - 2016-06-10 09:49:57

ANo.17

> アプリは「抽象度が高くハードウェアに依存しない汎用的な API(アプリケーション・プログラミング・インターフェース) 」を使って、デバイイス・ドライバーに"命令"します。
> ハードディスクのデバイス・ドライバーは「それより抽象度が低いハードウェアに依存するインターフェース(ざっくりと物理層で言うと SATA(Serial ATA) など)」を使って、ハードディスクの中のファームウェアに"命令"します。
> ハードディスクの中のファームウェアは「それより更に抽象度が低いハードウェア」を密接にコントーロールします。

アプリは「抽象度が高くハードウェアに依存しない汎用的な API(アプリケーション・プログラミング・インターフェース) 」を使って、(OS(オペレーティング・システム)にインストールされている)ハードディスク用デバイス・ドライバーに"命令"します。
(OS(オペレーティング・システム)にインストールされている)ハードディスク用デバイス・ドライバーは「それより抽象度が低いハードウェアに依存するインターフェース(ざっくりと物理層で言うと SATA(Serial ATA) など)」を使って、ハードディスクの中のファームウェアに"命令"します。
ハードディスクの中のファームウェアは「それより更に抽象度が低いハードウェア」を密接にコントーロールします。

投稿日時 - 2016-06-09 20:03:50

ANo.16

> OS(オペレーティング・システム) (またはアプリ)がハードディスクの中のファームウェアにハードディスクを1000回転と"命令"し

もう少し正確に言うと、アプリがハードディスク用のデバイイス・ドライバーにハードディスクを1000回転と"命令"し、ハードディスク用のデバイイス・ドライバーがハードディスクの中のファームウェアにハードディスクを1000回転と"命令"し、ファームウェアがハードウェアを密接にコントーロールします。

アプリは「抽象度が高くハードウェアに依存しない汎用的な API(アプリケーション・プログラミング・インターフェース) 」を使って、デバイイス・ドライバーに"命令"します。
ハードディスクのデバイス・ドライバーは「それより抽象度が低いハードウェアに依存するインターフェース(ざっくりと物理層で言うと SATA(Serial ATA) など)」を使って、ハードディスクの中のファームウェアに"命令"します。
ハードディスクの中のファームウェアは「それより更に抽象度が低いハードウェア」を密接にコントーロールします。

投稿日時 - 2016-06-09 19:55:51

ANo.15

実はネットワークHDD(NAS)のファームウェアは Windows NT だったりします。
HDD(ハード・ディスク・ドライブ)自体の説明は前述のとおりだとして、それ以外にネットワークに関連する処理を Windows NT が担当します。
Windows OS は Samba(サンバ) と呼ばれる通信規格で通信しています、セキュリティー関連(ユーザー認証システムなど)は(建前上)秘密になっていると思われるので、Windows 用のネットワークHDD(NAS)を作りたいメーカーは Samba(サンバ) のセキュリティー関連(ユーザー認証システムなど)の処理を自前で勝手に作れないので、 Microsoft から Windows NT を買っています。
Windows なので HD(ハード・ディスク)デバイス・ドライバーとも一体化してないでしょうし、当然 Windows の汎用的な API (アプリケーション・プログラミング・インターフェース)も実装しているでしょうが、「Microsoft Office」などのアプリをインストールできません。
このように汎用的な API (アプリケーション・プログラミング・インターフェース)を実装していてもアプリをインストールできないモノもファームウェアと呼ばれたりします(この論理からすると Android OS をファームウェアと言ってはイケナイ事になりますが…)。


NAS(Network Attached Storage):ネットワークHDD
http://buffalo.jp/products/catalog/storage/hd_lan.html
http://www.iodata.jp/product/nas/info/landisk/

Wikipedia『Samba(サンバ)』
https://ja.wikipedia.org/wiki/Samba

投稿日時 - 2016-06-09 17:07:07

ANo.14

> OS(オペレーティング・システム) (またはアプリ)がハードディスクの中のファームウェアにハードディスクを1000回転と"命令"し、ファームウェアがハードディスクの回転数をチェックしながら、早すぎたら遅くし、遅すぎたら早くするとか、ハードウェアを密接にコントーロールします。

つまり、ハードディスクの回転数は正確に1000回転で回転している訳ではなく、ハードディスクの回転数は小さな誤差の範囲内で絶えず変動している事を意味しています。
ハードディスクの回転数は絶えず変動しており、ファームウェアはハードディスクの回転数を絶えずチェックしながら、早すぎたら遅くし、遅すぎたら早くするとか、ハードウェアを密接にコントーロールします。
そう言うハードウェアを密接にコントーロールするような面倒な処理をファームウェアに丸投げする事により、 OS(オペレーティング・システム) (またはアプリ)はハードディスクを密接にコントーロールする負担がなくなります。

投稿日時 - 2016-06-09 16:22:22

ANo.13

>> このハードウェアを「制御する」とはどういう事しょうか。制御=操るという意味だとすると、ハードディスクのディスクをある回転数で回転させる→ファームウェアが1000回転と命令すれば1000回転で回り、2000回転と命令すれば2000回転で回る、などという理解は正しいでしょうか。

> はい、正しいです。

もう少し正確に言うと、ハードディスクの中にもファームウェアがあります。
OS(オペレーティング・システム) (またはアプリ)がハードディスクの中のファームウェアにハードディスクを1000回転と"命令"し、ファームウェアがハードディスクの回転数をチェックしながら、早すぎたら遅くし、遅すぎたら早くするとか、ハードウェアを密接にコントーロールします。
そうする事により OS(オペレーティング・システム) (またはアプリ)はハードディスクを密接にコントーロールする負担がなくなります。

投稿日時 - 2016-06-09 12:47:01

ANo.12

なんか色々 説明すると余計に訳が分からなくなって来るような感じでなので、ざっくりと簡単に言うと、ファームウェアとは あるマシン用に作られた(ハードウェアを直接的にコントロールする)専用 OS(オペレーティング・システム) 的なモノですが、通常 ファームウェアには API(アプリケーション・プログラミング・インターフェース)自体が実装されていないので、実際はOS(オペレーティング・システム)とは呼べません。


> このハードウェアを「制御する」とはどういう事しょうか。制御=操るという意味だとすると、ハードディスクのディスクをある回転数で回転させる→ファームウェアが1000回転と命令すれば1000回転で回り、2000回転と命令すれば2000回転で回る、などという理解は正しいでしょうか。

はい、正しいです。

> たとえば液晶テレビのファームウェアは、液晶テレビのどの部分をどのように操作しているのでしょう。

例えばリモコンから発せられたデータを解析してチャンネルを変えるとか、ボリュームを変えるとか、そんな感じのモノです。

> 液晶テレビのファームウェアをアップデートすると、その操作方法がどのように変わるのでしょうか。

大抵はバグの修正なので、操作方法は変わらないのが普通です。

投稿日時 - 2016-06-09 05:11:54

ANo.11

> Android の場合は汎用的な API(アプリケーション・プログラミング・インターフェース)が実装されているので OS(オペレーティング・システム)と呼んで良い訳ですが

Android に使われている Linux(リナックス)系 OS(オペレーティング・システム) では OS(オペレーティング・システム) とデバイス・ドライバーを一体化するベキと言う理念があり、この場合 OS(オペレーティング・システム) とデバイス・ドライバーが一体化しているので、Linux(リナックス)系 OS(オペレーティング・システム) では、 OS(オペレーティング・システム) がハードウェアを直接的にコントロールすると言えるので、 Linux(リナックス)系 OS(オペレーティング・システム) はファームウェアと言えます。
実際に Android OS(オペレーティング・システム) (Linux(リナックス)系 OS(オペレーティング・システム))をファームウェアとも言ったりします。
ただし、 Android OS の場合 開発の都合で、(組み込みアプリと言うかたちで)デバイス・ドライバーが Android OS(オペレーティング・システム) と一体化してない場合もあります。

投稿日時 - 2016-06-09 04:29:01

ANo.10

> 通常 BIOS(バイオス) が使われるのは OS(オペレーティング・システム) の起動時だけで、 OS(オペレーティング・システム) の起動後はデバイス・ドライバーがハードウェアを直接的にコントロールします。

つまり、通常 OS(オペレーティング・システム)自体はハードウェアを直接的にコントロールしません(通常 ファームウェアはハードウェアを直接的にコントロールします)。

投稿日時 - 2016-06-09 02:21:04

ANo.9

分かりやすく言うとファームウェアとは あるマシン用に作られた専用 OS(オペレーティング・システム) 的なモノです。
ではファームウェアと OS(オペレーティング・システム) では何が違うのかと言うと、ファームウェアはハードウェアを直接的にコントロールしますが、通常 OS(オペレーティング・システム)はマザーボードに実装されている BIOS(バイオス) と呼ばれるファームウェアを使って起動します(BIOS(バイオス)に関しては下記 BIOS 【 Basic Input/Output System を参照して下さい)。
通常 BIOS(バイオス) が使われるのは OS(オペレーティング・システム) の起動時だけで、 OS(オペレーティング・システム) の起動後はデバイス・ドライバーがハードウェアを直接的にコントロールします。

実際にファームウェアが使われている製品を挙げると「デジタル時計、炊飯器、エアコン」など今どきの家電などにはファームウェア(専用 OS(オペレーティング・システム)的なモノ)が使われています。
Android の場合は汎用的な API(アプリケーション・プログラミング・インターフェース)が実装されているので OS(オペレーティング・システム)と呼んで良い訳ですが、家電などのファームウェアには API(アプリケーション・プログラミング・インターフェース)自体が実装されていないので、実際はOS(オペレーティング・システム)とは呼べません。


BIOS 【 Basic Input/Output System 】
http://e-words.jp/w/BIOS.html

↑ざっくりと簡単に言うとハードウェアを動かすための仕組みです。

API 【 Application Programming Interface 】
http://e-words.jp/w/API.html

↑ざっくりと簡単に言うとアプリケーションが OS(オペレーティング・システム) を使うための仕組みです。
「メモ帳、ブラウザ、Microsoft Office」などのアプリケーションは OS(オペレーティング・システム) の API(アプリケーション・プログラミング・インターフェース)を使って動いて動いています。

投稿日時 - 2016-06-09 02:16:18

ANo.8

説明をわかっていただきたいので、いきなり話が飛びますが、一つ一つ理解しながら読んで下さい。

最近の自動車は機能のコンピュータ化が進んで、ギアの操作をしなくてもアクセルを踏むだけでその時の道路状況や車の状態に合わせて最適な速度で走ってくれます。ユーザーにはわかりませんが、燃料と空気の混合比やシリンダー内の点火タイミングも条件に合わせて最適に調整されます。

また、ライトのスイッチをいちいち操作しなくても、autoのポジションに設定していれば、暗くなった時に自動的にヘッドライトが点灯し、明るくなれば勝手に消灯してくれます。

カーエアコンだって、オートに設定していれば、自動的に設定温度を維持するようにうまく調節してくれます。

これらは機械自体が調節をしていると思いますか? 実はそれぞれの機械に付属しているマイクロコンピュータにインストールされている専用のソフトウェアが人間に代わって調節の仕事をしてくれているのです。

さて、話をファームウェアに戻しますが、コンピュータというものが色々な機能を持った部品の集合体であることはご質問の文章を拝読する限り質問者さんも理解されているものと思います。

>制御=操るという意味だとすると、ハードディスクのディスクをある回転数で回転させる→ファームウェアが1000回転と命令すれば1000回転で回り、2000回転と命令すれば2000回転で回る、などという理解は正しいでしょうか。

正しいです。しかし、実際にファームウェアが行っている仕事は、そんな単純なものだけではなく、もっと複雑な、例えて言えば条件が変化したならばそれに応じて適切な反応でハードをコントロールするといった能力を付与されています。

>液晶テレビのファームウェアをアップデートすると、その操作方法がどのように変わるのでしょうか。

操作方法は何ら変わりません。ファームウェアは「縁の下の力持ち」ですから、ユーザーは何も余計な事を考える必要は無く、やりたいことをやっていれば良いのです。メーカーとしては、ハードが性能アップしたり、何かハードに関して問題が見つかったような時に、改善のためにファームウェアのアップデートを行います。ユーザー側はその勧告に従ってファームウェアのアップデートを実行するだけです。

料理に例えての説明をご希望ですので、私に出来る限りで説明をさせていただきます。

>ハードウェア : 鍋、フライパン、ヤカン、包丁などのこと

その通りです。

>ソフトウェア : 料理の作業のこと(例えば、焼く、煮る、切る、炒める)

「ソフトウェア」という言葉は極めてアバウトな言葉で、注意深く取り扱う必要があります。「料理の作業のこと(例えば、焼く、煮る、切る、炒める」と言った場合には、「アプリケーション・ソフト」という言葉が対比すると考えます。

「ソフトウェア」という言葉には、もう一つ意味があって、音楽のCDや映画のDVD(BD)やコンピュータ・ゲームのプログラムなど、一般には「デジタルコンテンツ」と呼ばれるグループも存在します。これらは、筑前煮とかビーフシチューとか札幌ラーメンとかオムライスとか筍ご飯といった、メニューに相当するものと考えて下さい。

>ファームウェア: ハードとソフトの間??例えば包丁を研ぐ?フライパンを買い替える?

最初にたとえ話でお話しした自動車のオート機能の事を思い出して下さい。人間が細かい操作をしなくても、縁の下の力持ちのように適切なコントロールを行ってくれる機能のことを言うのでしたよね。

「鍋で煮る」といっても、野菜を煮るのと魚を煮るのとでは違うという事はご存知だと思います。野菜の場合は最初から水と野菜を入れて火を着けます。魚の場合はまず水だけ入れて火をつけ、グラグラに沸騰させてから魚を入れます。こうすることで臭みを取り除きます。素材によってやり方は違うのです。

包丁で素材を切るとき、右手で包丁を握りますが、左手の指は伸ばしたまま素材を押さえるのでなく、指先を内側に丸め込んで素材を押さえます。こうする事によって自分の手を切る事故を防ぐのです。

これらは「料理のコツ」とか「調理道具の使いこなしの基本」と呼ばれていますが、実はファームウェアの役割というのは、まさにこの「コツ」とか「使いこなしの基本」といった要素を人間に代わって処理してくれるプログラムのことなのです。

分かり易く説明をしたつもりですが、もし分からない所がありましたら、補足欄に書いて下さい。できるだけ解説をしたいと思います。

投稿日時 - 2016-06-08 20:47:54

ANo.7

回答の中にもファームウェアをご存じない人や勘違いしている人がいるようですね。
言われるようにファームウェアはハードウェアとソフトウェアの中間にあるものです。

Namie-popjpさんのハードウェアに対する認識は間違っています。
ハードディスク、液晶モニター、DVDドライブ、液晶テレビなどにもファームウェアは入っています。ハードウェアはハードディスクなら内部のモーターや磁気ベッドなど、液晶モニターや液晶テレビでは液状パネルやスイッチやコネクターです。

また料理に例えられていますが、それも間違っているし、料理に例えるとかえって分かりにくくなると思いますよ。

例えばテレビを例にすると、液晶パネルやスイッチやコネクターなどがハードウェアですが、スイッチもいくつかあり、それらをソフトウェアで認識できるようにスイッチが押されたことをスイッチからソフトウェアに伝える一番基本的な部分がファームウェアです。
ファームウェアではテレビの機能も性能も決まりません。それを決めるのは、ファームウェアの上で動作しているアプリケーションソフトウェアです。
つまり、ファームウェアは、いくつもあるスイッチをスイッチとして認識し、どれが押されたかをアプリケーションソフトウェアに伝えるためのものです。
そしてアプリケーションソフトウェアは、どのスイッチが押されたかの情報をファームウェアからもらうと、スイッチに割り付けられた機能に従って、↑のスイッチなら音量をあげ、↓のスイッチなら音量を下げ、→ならチャンネルを一つ進め、←ならチャンネルを一つ戻すといった動作をします。

ボタンを押し続けると送り速度が速くなったりするのもアプリケーションソフトウェアの方で決まります。

ファームウェアはめったなことでは変更しないハードウェアに直結した制御ソフトウェアです。
アプリケーションソフトウェアは機能・性能の改良のために良く変更します。

投稿日時 - 2016-06-08 17:52:00

ANo.6

冷蔵庫なら急速冷凍の動作や庫内の温度管理などを行うソフトのことです。
車ならエンジンなどを制御するコンピューターのプログラムですね。
フライパンで例えるなら焦げ付き防止の加工みたいなものでしょうか?
フッ素やマーブルなど色々な処理がされていますね。
あれのようなものです。

>たとえば液晶テレビのファームウェアは、液晶テレビのどの部分をどのように操作しているのでしょう。液晶テレビのファームウェアをアップデートすると、その操作方法がどのように変わるのでしょうか。
基本的には変わりません。
不具合の解消やチャンネル変更時の速度向上とかほとんど知られることが無いような機能の向上が主ですから。
しかし、思いっきり書き換えるとリモコンのボタンとチャンネルを入れ替えるとか
チャンネルの切り替え速度を遅くするとかできます。

投稿日時 - 2016-06-07 16:18:03

ANo.5

ファームウェアという言葉がわかりにくくなる一因は
昔は付属ソフトがついてきた程度だったパソコンが
いつしかWindows入りで買うのがあたりまえになったことにある気がします。

非常に乱暴な表現をすれば、電子制御された機械において
それを動かすために、工場出荷時に組み込まれているソフトウェア
その総称がファームウェアと言うことができます。

言い換えれば、ファームウェアが組み込まれている
HDDやテレビチューナーカードや、モデムやルーターなど
さまざまな機器が、実際には小規模なコンピューター装置であることを意味します。

実際には、そういった機器では組み込みOSが入っているわけですが
そういう組み込みOSは、名前が表に出ないほうがあたりまえのもので
更新の際には、ファームウェア更新として案内されるのが慣例です。

組み込みOSとして、小規模なものもありますし
OSとは呼べないような、シンプルなものもありますが
そういったソフトウェアないしソフトウェア群がファームウェアなんです。

Windows,OS X,iOS,AndroidといったOSは、OSとしての知名度が高く
ファームウェアとして考えない場合が多いと思いますが
OSの供給元との契約による制限が無いなら
PCメーカーが、それらをファームウェアと呼ぶこともあると思いますよ。


プリミティブなファームウェアの働きの一つは、ボタンを押したら…とか
~という条件が揃ったら…といったきっかけで、なんらかの処理を行なうことです。

でも、そのごく単純な仕組みは、シーケンシャル制御とかで行えます。
工業高校とかだと、そういうのは習うかもしれませんが
一般的には、シーケンシャル制御という言葉自体知る機会が無いかもしれません。

ファームウェアは、シーケンシャル制御で行われるような
単純な、あるいは要素の少ない条件判断では追いつかないような
さまざまな機能を実現するような場合に必要になります。

それによって、ファームウェアの裁量で
その装置の中で完結して処理されている要素もありますし
外部からの指示を受けて処理する要素もあります。

HDDの回転速度は、一般的には一定ですが
一部の省電力志向のHDDでは回転数調整が行われます。
たしかに、それはファームウェアが制御している要素のはずです。

また、複雑な処理への対応だけではなく、後から処理内容を
改善したり、拡張,強化したりできることもファームウェア式の利点で
そういった場合は、ファームウェアがフラッシュROMなどに収容されていて
後から、メーカーで、あるいは消費者レベルで更新作業ができるように作られています。

投稿日時 - 2016-06-07 04:37:22

ANo.4

こんにちは

まず、ここで言うハードウェアは製品ではなく、その製品を構成するパーツ単位で考えてください。
そのパーツの中でも特に製品全体の制御を司る制御回路の場合、各製品の制御回路を比較するとハードウェアとしては、全く同じ物と言う事が起こりえます。

例えば、ハードディスク、液晶ディスプレイ、DVDドライブの制御回路がまったく同じハードウェアである場合があります。
しかし、ハードディスク、液晶ディスプレイ、DVDドライブでは、当然制御するべきものが違うはずですので、制御回路が同じだと無理があるように見えます。

では、なぜその様な事が可能なのか。それは制御回路が汎用性の高い、つまり予め色々な使い方が出来るように設計されているハードウェアだからです。
そして、実際の製品に組み込む時に、どの様な制御をすれば良いのかと言う命令を予めハードウェアに与えておきます。
この命令の内容によって、同じハードウェアでもハードディスクの制御をしたり、液晶ディスプレイの制御をしたり、DVDドライブの制御をしたりすることが出来ます。

そして、このハードウェアに予め与えられた命令こそがフォームウェアを呼ばれるものです。
又、フォームウェアの中身はプログラム、つまりソフトウェアです。

フォームウェアの中身がソフトウェアであるため、後からでもプログラムを書き換えることが比較的容易に出来ます。そこで制御回路の改良や不具合修正のため、後からアップデートを行うと言う事があるわけです。

投稿日時 - 2016-06-07 02:15:47

ANo.3

電子機器に関して
ファーム(firm:固定)ウェアもプログラムなのですが ROMデータという少々特殊な使われ方をしています リードオンリーメモリ 読み込みだけ
基盤にハンダ付けされて取り外せない 固定されたメモリーやチップ用プログラム

ファームウェアとソフトウェアはプログラムデータなのですが ハードウェアは装置、機械 なんで?とは思うものの 決められた名前に文句を言ってもどうしようもないもんで

デジタルカメラ ビデオデッキ テレビなど 基板上のメモリに記録されたプログラム
パソコンではBIOSがファームウェアになります

ファームウェアの更新は 新しい環境に合わせる場合が多いです
色々な新しい増設機器が開発されている 新しい増設機器を使えるようにするための書き換えが多いと思います

投稿日時 - 2016-06-07 00:35:09

ANo.2

はじめまして♪

ファームウエアは、固有のハードウエアに存在しているソフトウエア。

と、言っても、なかなか理解出来にくいのが現実です。

たまたま、namie_popjp様の場合、調理器具の部分も在りましたので、この部分で仮想考察してみます。

最近のフライパンや包丁や鍋やヤカンもまな板も、本質的な素材と加工、その上に投手コーティングとかメッキ等の表面処理技術」も重要ですよねぇ。

本物の調理器具ですと、販売後に表面処理の変更って、物理的に対処する以外、不可能ですが、電子機器の一部だけですけれど、必要に応じてその部分が後から変更出来る、という構成に成っている場合に限り、ファームウエアの更新が出来ます。
フッ素加工のフライパン、フッ素加工の部分の一部だけ変えてより良く広い対応が出来る、物理的にはほぼ不可能ですけれど、そういう効果や機能を、ハード機器(フライパン)専用に、フライパンに組み込まれたソフトウエア、という理解がファームウエアです。


デジタル環境は日進月歩、OSのバージョンが新しく成った時に、通常のアプリ(ソフト)の更新だけでは追従出来なく成るハード機器内の専用ソフト、通常のアプリ(ソフト)でも無く、基本オペレーションのOSでも無く、固体機器内のソフトの部分がファームウエアと呼ばれています。

昔は、この専用ソフトを書き換え不能な電子回路(ICやLSI)等に詰め込んで、周辺環境が変わったら、製品その物を買い替えろ!、なんて言う思想も在りましたが、コンピューター関連機器では「製品ごと買い替えなくても、対応制御部分のプログラム(ソフト)を更新すれば良いんじゃねぇ」って事から、ハード機器に依存した専用の制御ソフトが、必要に応じて更新出来るようにしたので、コノ部分を「ファームウエア」(ソフトウエアでもなく、ハードウエアでもない、中間)という表現として一般的に理解されているようです。


一般的なコンピューターであれば、OSが根底の基本ソフトで、其の上にアプリケーションソフトが動いて、いろいろ使えている。と考えます。
しかし、電源を入れた瞬間は、「OS」を読み込んで起動させる為の、さらに初期プログラムが起動して、ソコからスタートと成ります。
初期プログラムを働かせる為には、電源が入ったらこのように監視し動作する手順という、ハードウエア的な動作手順がプログラミングされています。

Windows系のPCであれば、BIOS(バイオス)、基本の入出力システム、ベーシック インプット アウトプット システム の頭文字で、コイツをヘタにいじりますと、電源を入れてもOS(Windows)が起動しないコンピューターにも出来ます。

ファームウエアは、BIOSよりも根底にある、ハード側の内蔵コントロールソフトとも考えられます。

今のデジタル環境機器には、製造出荷時には良かったのが、後から問題が見つかったり、あるいは新しい環境で使えるようにする等で、たまに「ファームウエアの更新」がヒッ用に成る事も在ります。30年も40年も前でしたら、コントロールする手順が決っていた基盤交換などで対応した場面も少なく成ったでしょう、機器の買い替えや、基盤交換等を行なわ無くとも、新しい環境出使えるようにに成った制御系の、あるいはコントロールや対応性と言う部分で、固体ハードの「内部」に在るソフトウエア、と考えても良いでしょう。

ファームウエアの更新で、途中にトラブルが在ると。全く使えないハードに成ってしまう場合も在ります。
「ファームの更新」には、OS やアプリのバージョンアップなどよりも、より慎重に考えて、適切な「更新」が完了するようにして下さい。

投稿日時 - 2016-06-06 23:18:37

ANo.1

『たとえば液晶テレビのファームウェアは、液晶テレビのどの部分をどのように操作しているのでしょう。液晶テレビのファームウェアをアップデートすると、その操作方法がどのように変わるのでしょうか。』

液晶テレビの主電源ボタンが押されたら、ファームウェアのプログラムを実行し始める。

そうすると、リモコンの受光部の信号に応じて、各ボタンが押されたと判定して操作する。

アンテナから来た電波のどのチャンネルの周波数を抜き出して、それを画像に変換するかをチューナーと画像処理部品に伝える。

メニューとか設定画面のボタンを押されたら、上下左右のボタンに応じたメニューの動き・変更をして、設定内容を記憶する。

以上のような、すでに決まった手順は、あらかじめ製品に組み込んでおけばいいから、不具合でもなければアップデートもしない家電製品のプログラムだし、ハードディスクとかじゃなくてもメモリの仲間に書き込んでおいて、そこから毎回起動してもらえばいいよね、

というのがファームウェア。

投稿日時 - 2016-06-06 22:33:56

あなたにオススメの質問