DOS MBRを使用してeMMCを分割し、パーティションを8MiBにソートする方法

DOS MBRを使用してeMMCを分割し、パーティションを8MiBにソートする方法

私の問題はもう一つただし、重複ではありませんので、重複として表示する前にご理解ください。コメントできません。もう一つ

存在するもう一つ、私はこの答えを理解して同意します。ただし、i.MX6ULプロセッサの制限により、GPTの代わりにDOS MBRを使用する必要があります。拡張パーティションの論理パーティションサイズを8MiBに調整するには?

写真とともにいくつかの詳細な例をお寄せいただきありがとうございます。 16 GiB eMMCには、次のパーティションスキームがあります。

p1 primary 128 MiB
p2 primary 128 MiB
p3 primary  16 MiB
p4 extended
p5 logical 256 MiB
p6 logical 256 MiB
p7 logical 256 MiB
p8 logical whatever remains

U-Bootの場合、最初の4MiBをスキップする必要があります。 8MiBに合わせるために、最初のプライマリパーティションp1を8MiBのオフセットまたはブロック番号16,384から始めることができます。 p1、p2、p3の計算は非常に簡単です。

ただし、拡張パーティションの各論理パーティションの前にEBRが含まれていることを考慮すると、これをどのように説明するのかわかりません。ただし、EBRサイズは512バイトです。https://en.wikipedia.org/wiki/Extended_boot_record論理区画が 1MiB 境界に整列していることを示します。

これが私が今まで得たものです。しかし、誰かがこれが正しいことを確認して説明できれば幸いです。

Partition    Start Block     End Block   Partition Type
---------    -----------     ---------   --------------
1                 16,384       278,527   primary
2                278,528       540,671   primary
3                540,672       573,439   primary
4                573,440    29,884,415   extended
5                589,824     1,114,111   logical
6              1,114,112     1,638,399   logical
7              1,638,400     2,146,303   logical
8              2,146,304    29,884,415   logical

答え1

結局、MBRパーティションではなくGPTを使用することをお勧めします。 GPTパーティションは処理がはるかに簡単で(拡張/論理的混乱はありません)、i.MX6ULブートROMに課される制限を解決できます。リファレンスマニュアル(IMX6ULRM)は、表8.25に、画像ベクトルテーブルがeMMCのオフセット1024から読み取られることを示しています。これは、IVTの前にMBRおよびGPTヘッダを格納するのに適しています。一般に、パーティションエントリテーブルは、LBA2から始まるGPTヘッダに従うが、ヘッダ内の「パーティションエントリアレイのLBA開始」(オフセット72)フィールドを設定することによって移動することができる。これにより、GPTヘッダーとパーティションエントリテーブル間のイメージスペースを最大限に確保できます。再配置されたパーティションエントリテーブルでGPTを作成するには、次のものを使用できますsgdisk(この-jオプションを使用)。

関連情報