LoginSignup
1
1

Linuxのブートプロセス:BIOSとUEFI

Posted at

BIOS

BIOS(Basic Input/Output System:基本入出力システム)とは、最も基本的な制御プログラムであり、基本入出力を管理します。

コンピュータのファームウェアの一種で、コンピュータのマザーボードに組み込まれているソフトウェアです。

BIOSの主な役割は、コンピュータが電源を入れた時、最初に実行される一連のチェックとプロセスを提供します。

MBR

BIOSでは、起動デバイスの最初のセクタであるMBRでパーティションを管理します。

MBRの構成

MBR(Master Boot Record:マスターブートレコード)はハードディスクの最初のセクタ(通常512バイト)に位置しており、以下の構成になっています:

截屏2024-04-01 21.29.24.png

ブートコード(Boot code)

446バイトを占め、オペレーティングシステムを起動するために必要なコードが含まれています。

パーティションテーブル(Partition table)

64バイトを占め、ハードディスク上のパーティション情報を記録しています。この領域には、各パーティションエントリが16バイトを使用し、合計4つのエントリで4つのプライマリパーティションに対応しています。

ブートシグネチャ(Boot signature)

最後の2バイトを占め、通常0x55AAの値が入っており、これは有効なブートセクタであることを示します。

UEFI

UEFI(Unified Extensible Firmware Interface)は、コンピュータのファームウェアインターフェースの仕様で、従来のBIOS(Basic Input/Output System)のモダンな代替品として設計されています。

UEFIは、システムの起動とハードウェアの初期化を管理するソフトウェアですが、BIOSよりも多くの機能と拡張性を提供します。

GPT

GPT(GUID Partition Table)は、MBR(Master Boot Record)方式の分割表の制限を克服するために設計された新しいディスク分割技術です。

GPTは、特に大容量のストレージデバイスに対応するため、UEFI(Unified Extensible Firmware Interface)と共に使われることが多いです。

GPTの構造

以下はGPT(GUIDパーティションテーブル)のレイアウト構成です:

截屏2024-04-01 21.44.42.png

保護MBR(Protective MBR)

最初のセクター(LBA 0)に位置しており、伝統的なMBRを認識するだけのシステムとの後方互換性を維持するためのものです。

GPTヘッダ(GPT Header)

2番目のセクター(LBA 1)に位置し、GPTパーティションテーブルを識別するための署名、バージョン情報、サイズ、パーティションテーブルの位置とサイズなどの情報が含まれています。

パーティションテーブル(Partition Table)

通常は3番目のセクター(LBA 2)から始まり、複数のパーティションエントリが含まれています。各エントリは通常128バイトで、初期の標準では128のパーティションエントリをサポートするように設計されています。

パーティションデータエリア(Partition Data Area)

各パーティションのファイルシステムデータが格納されています。

バックアップパーティションテーブル(Backup Partition Table)

ディスクの最後に位置し、パーティションテーブルの完全なバックアップです。

バックアップGPTヘッダ(Backup GPT Header)

通常ディスクの最後のセクターに位置し、GPTヘッダのコピーです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1