私は最近、パーティショニングについて調査しましたが、いくつかの点について本当に混乱しました。
パーティションテーブルとは何ですか?その用途は何ですか?
パーティションスキーム(GPTとMBR)とは何ですか?目的は何ですか?
最後に、いくつかの調査で、「MBR」と「GPT」という用語がパーティションテーブルを記述するために使用されることがわかりました。最後の質問はMBRとGPTがパーティションの別の名前ですか?
答え1
分割
別の質問から始めましょう。 (ソフトウェアの観点から)ディスクとは何ですか?
ディスクはメモリの断片です。それは始まりと終わりがあります。 0から始まり、列挙されたデータの断片を保持します。住所)。一般にデータフラグメントと呼ばれます。部門通常、512バイトを生成します。
ファイルシステムのない世界を想像してみてください。ディスクに直接データを書き込むだけで、ディスクを最大限に活用できます。これにより、データがディスクに保存されます。それは一定の長さを持っています。アドレス a から始まり、アドレス b までスペースを占めます。これで、複数のデータセットが必要になり、任意の方法でデータを整理できます。次のように言うこともできます。メモリを固定サイズのより小さい部分に分割したいと思います。私はこの部分をそう呼ぶ。分割。私はそれらを使用してデータを整理します。
だからパーティションテーブルの概念を思いついた。パーティション表は、ディスクパーティション(開始、終了、指定された使用タイプ)を特徴付ける明示的に指定された整数のリストです。
これ膜バイオリアクター実際には単純なパーティションテーブルではありません。含むパーティションテーブル。 MBRには、システムの起動に関連するいくつかの実行コードも含まれています。 MBRは、分割テーブルの概念の実装として広く使用されていると言えます。 MBRはセクタ0に位置すると予想されます。 512バイトセクタに合うように設計されています。したがって、説明できるパーティションの数とサイズは制限されています。
GPT別の実装ですが、サイズが大きいため、より多くのパーティションを説明できます。
語源
MBRという単語の語源を理解するには、いくつかの歴史を考慮する必要があります。データを整理する方法を考える前に、システムを起動する必要があります。停電後、コンピュータは何も実行できないため、ほとんど「故障」します。起動時に便利に使用するには、最初のプログラムを既知の場所からロードする必要があります。このよく知られている場所は、ハードドライブの最初のセクタになることができます。これは起動プロセスを一般的に簡素化したものです。最初のプログラムは次のとおりです。ブートローダー。いくつかの標準とMBR(基本始める記録)が誕生した。この観点から見ると、MBRにパーティションテーブルを持つことは必須ではなく、良い追加です。
ブートローダは通常、パーティションテーブルを読み取り、最初の起動可能なパーティションを見てから、実際のオペレーティングシステムをロードします。だからこそMBRパーティションスキーム通常、オペレーティングシステムのパーティションが付属しています。
GPT(GUIDパーティションテーブル)は、起動プロセス用のパーティションであるESP(EFIシステムパーティション)を指定します。 ESPは通常FATファイルシステムを使用してフォーマットされます。ブートローダはファイルに保存されます。実際のオペレーティングシステムは通常別のパーティションにあります。だからこそGPTパーティションスキーム通常、少なくとも2つのパーティションがあります。 1 つはブートローダー用、もう 1 つはオペレーティングシステム用です。
答え2
パーティションの場所を格納するパーティションテーブル。パーティションには何も保存されません。オペレーティングシステムはパーティションテーブルを読み取り、ソフトウェアが書き込むことができる制限を読み取り(ブロック/dev/sda1
番号にオフセット(startOffset)を追加)、ゼロ未満または$ EndOffset-startOffset $より大きいブロックをブロックします。
マスターブートレコードはパーティションテーブルの横に格納され、2番目のステップブートローダ(最初のステップはROMにあります)を含みます。次に、ステップ3(例:grub)をロードします。
GPTは新しいパーティションテーブル標準です。