web-dev-qa-db-ja.com

GPTは4kブロックに対応していますか?

ウィキペディアの記事 for GUIDパーティションテーブルでは、基盤となる4kブロックファイルシステムにアラインされているかどうかが明確になりません。図のように、ブロック34としてのデータセクター。これは8で割り切れません(セクターあたり512バイト* 8セクター= 4kブロック)。Windowsが最初のパーティションを Microsoft予約パーティション にしたとしても、私はノーと言いたくなります。 =、通常のように、そのパーティションは65536ブロック(32 MiB)であるため、65536 + 34 = 65570であり、8で割り切れません。

私は何かが足りないのですか?

4
Ricket

はい、2つ欠けています。

  • EFIパーティションテーブルは34ブロックの長さである必要はありませんウィキペディアの記事はまったく誤解を招くものです。この点。 Wikipediaではなく、実際の仕様に従って、パーティションテーブルの長さは、パーティションテーブルエントリのサイズとパーティションテーブルエントリの数によって決定されます。これらは両方とも可変であり、個々のEFIパーティションディスクの値はEFIパーティションテーブルヘッダーに格納されます。 34ブロックは単に128バイトのパーティションテーブルエントリサイズ、512バイトのブロックサイズ、および128エントリのパーティションテーブルで得られるものです。仕様で義務付けられているのは、EFIパーティションテーブルの最小サイズです。 theサイズではありません。
  • 最初のusableブロックは、最初のusedブロックである必要はありません。(ちなみに、これは「データセクション」ではありません。)特定のディスクブロック#34が最初に使用可能なブロックである可能性があるため、notパーティションがそこから始まる必要がありました。 EFIパーティショニングツールは、パーティションを好きなルールに合わせることができます。 (実際、Appleのディスクユーティリティなどのいくつかは、 有名に 。RodSmithのgdiskには 重要なルールセット もあります。)EFI仕様にはありません。パーティションを最初または最後の使用可能なブロックに揃えることを義務付けないでください。実際、厳密に言えば、最初の使用可能なブロックがパーティションテーブルのプライマリコピーの直後に続くことを義務付けていません。
6
JdeBP

JdeBPの応答は良好ですが、実際には、最新のパーティションツールのほとんどは、MBRディスクとGPTディスクの両方で、デフォルトで2048セクター(1 MiB)の境界にパーティションを配置します。これにより、Advanced Formatドライブだけでなく、SSDや他のアライメント要件を持つ一部のタイプのRAIDアレイなど、他のドライブタイプに対してパーティションが適切にアライメントされます。このルールの部分的な例外の1つは、OS Xのディスクユーティリティです。これは、セクター40で始まる最初のパーティションとしてEFIシステムパーティション(ESP)を作成する傾向があります。ただし、ディスクユーティリティは、1MiB境界で始まる後続のパーティションを作成します。

3
Rod Smith