ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
ファームウェアとは
ファームウェア (Firmware) は、ハードウェアに組み込まれてそのハードウェアを直接動かすための専用ソフトウェアです。アプリケーションソフトとは違って、機器の電源を入れた直後から動き始め、ハードウェアの初期化、外部 OS の起動、機器固有の制御といった役割を担います。ユーザが普段触ることはなく、機器の中の Flash メモリや EEPROM に書き込まれています。
ソフトウェアとの位置づけ
| 区分 | 例 | 特徴 |
|---|---|---|
| アプリケーション | ブラウザ / 表計算 / ゲーム | ユーザが起動・終了する |
| OS(システムソフトウェア) | Windows / Linux / iOS | アプリとハードの仲介 |
| ファームウェア | BIOS/UEFI / ルータ OS / IoT 機器の中身 | ハードに常駐、機器固有、電源直後から動く |
| マイクロコード | CPU 内部の命令制御 | ファームウェアより更に低層 |
身近なファームウェアの例
| 機器 | ファームウェアの役割 |
|---|---|
| PC のマザーボード | BIOS / UEFI がハード初期化と OS ローダ起動 |
| HDD / SSD | セクタ管理、ウェアレベリング、SMART 提供 |
| 無線ルータ | 管理 OS。Wi-Fi / NAT / DHCP / 管理画面 |
| プリンタ / 複合機 | 用紙搬送 / インク制御 / ネットワーク機能 |
| スマートウォッチ / IoT | センサ制御、BLE、OTA 更新 |
| 家電のマイコン | エアコン / 炊飯器 / 給湯器の動作プログラム |
| カメラ / レンズ | センサ制御、AF アルゴリズム改善 |
| キーボード / マウス(高機能機) | マクロ / ライティング制御 |
どこに保存されているか
| 媒体 | 性質 |
|---|---|
| Flash メモリ(NOR / NAND) | 書き換え可能。現在主流 |
| EEPROM | 少量データの書き換えに使用 |
| マスク ROM | 製造時に固定。書き換え不可。古い機器 |
| OTP (One Time Programmable) | 1 回だけ書き込み可能。ブートローダなどで利用 |
BIOS と UEFI
PC を起動すると最初に動くのがマザーボードのファームウェアです。古くは BIOS、現在はその後継である UEFI が主流です。
| 項目 | BIOS | UEFI |
|---|---|---|
| 起動ディスク | MBR(最大 2TB) | GPT(>2TB 可) |
| UI | テキスト | グラフィカル、マウス可 |
| セキュアブート | 無し | Secure Boot で署名検証 |
| 動作モード | 16bit リアルモード | 32/64bit プロテクトモード |
| 起動速度 | 遅め | 速い |
ファームウェアアップデート
ファームウェアの更新は、機器ベンダから配布されるファイルを書き込み直して機能追加 / バグ修正 / セキュリティパッチを適用する作業です。最近は機器がインターネット経由で自動取得・適用する OTA (Over-The-Air) 更新が一般的です。
- ベンダのサイトでファームウェアファイルをダウンロード(または OTA で配信)
- 機器が署名検証を行い、改ざんがないことを確認
- 新ファームウェアを Flash 上の予備領域に書き込み
- 再起動時に新領域から起動
- 正常起動を確認したら旧領域を破棄、失敗ならロールバック
文鎮化(Brick)に注意
更新中に電源断 / 通信切断 / 誤ったファイルでフラッシュが半端な状態になると、機器が二度と起動しなくなることがあります。これを俗に「Brick(レンガ化)」「文鎮化」と呼びます。対策として、最近の機器は次のような仕組みを持ちます。
- デュアルバンク: 旧領域と新領域を別々に持ち、新が失敗したら旧で起動
- ロールバック: 起動失敗を検出したら自動で旧バージョンへ戻す
- リカバリーモード: USB / シリアル / リセット長押しから素のローダを呼べる
- 署名検証: 改ざん・誤ファイル投入を弾く
セキュリティ観点
| 観点 | 説明 |
|---|---|
| 未パッチの脆弱性 | 古いルータが Mirai 等のボットネットに感染。更新を放置しない |
| Secure Boot | 署名のないファームウェアを起動させない仕組み |
| SBOM / 部品表 | ファームウェアに含まれる OSS 一覧を公開し、脆弱性追跡を容易に |
| EOL(サポート終了) | 更新が来なくなった機器は使い続けず置き換え検討 |
| 初期パスワード | 管理画面用の既定パスワードは必ず変更 |
関連
- BIOS — PC マザーボードの古典的ファームウェア
- UEFI — BIOS の後継
- Secure Boot — 署名検証付き起動
- OS — ファームウェアの上で動く
- IoT — ファームウェア更新運用が肝
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 Spring Frameworkのアノテーション一覧
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- PHPでのファイルアップロード方法|multipart/form-dataと$_FILES 2026-08-07 17:15:57
- PHP $_SERVERとは|DOCUMENT_ROOT・PHP_SELFなど主な要素 2026-08-07 17:15:57
- Scratchのアカウントの作り方|メールアドレスとユーザー名の登録手順 2026-08-07 17:15:57
- djangoにおけるMVCアプリケーション実装例 2026-08-07 17:15:57
- Bluetoothとは|仕組み・BLEとClassicの違い・用途 2026-08-07 17:15:57
- Spring Bootのテスト入門|@SpringBootTestとJUnitでの単体・結合テスト 2026-08-07 17:15:57
- APIキー取得方法 2026-08-07 17:15:56
- インストール方法(Windows版) 2026-08-07 17:15:56
- Java とは?言語仕様・JVM・主要フレームワーク一覧 2026-08-07 17:15:56
- 【PHPフレームワーク】Laravelの使い方 2026-08-07 17:15:56
- Scratch 作品の公開方法 2026-08-07 17:15:56
- Google OAuth 2.0 認証の実装方法 2026-08-07 17:15:56
- データベースとは?RDB / NoSQL / SQL の基礎 2026-08-07 17:15:56
- インストール(eclipseプラグイン) 2026-08-07 17:15:56
- Spring Frameworkの使い方 2026-08-07 17:15:56
コメントを削除してもよろしいでしょうか?