そのボリュームに書き込む予定の ubifs イメージ (rootfs.ubifs など) のサイズに基づいて、新しいボリューム (静的にすることもできます) を作成する必要があります。その目的は、「rootfs.ubifs」をそのボリュームに書き込み、そこからデバイスを起動するために必要な最小限のサイズでボリュームを作成することです。
誰かがこの点で私を助けてくれますか?
そのボリュームに書き込む予定の ubifs イメージ (rootfs.ubifs など) のサイズに基づいて、新しいボリューム (静的にすることもできます) を作成する必要があります。その目的は、「rootfs.ubifs」をそのボリュームに書き込み、そこからデバイスを起動するために必要な最小限のサイズでボリュームを作成することです。
誰かがこの点で私を助けてくれますか?
違いは、 UBIレイヤーのオーバーヘッドです。これはO
、Web ページまたは、
O
- EC および VID ヘッダーをバイト単位で格納することに関連するオーバーヘッド。つまり、O = SP - SL。SP
は物理的な消去ブロック サイズであり、 UbiFSL
が取得するものです。通常、最小ページサイズの 2 倍です。1 つは an 用、もう 1 つは a 用です。これらは、UBIがフラッシュを管理するために使用する 2 つの構造です。どちらもubi-media.hで定義されています。 は構造であり、構造です。または消去カウントは、消去ブロックが消去されるたびに書き込まれ、これがウェア レベリングの原因となります。or volume idヘッダーにより、UBIは複数 のボリュームをサポートし、EC
VID
EC
ubi_ec_hdr
VID
ubi_vid_hdr
EC
VID
PEBからLEB (物理消去ブロックから論理消去ブロック) への管理。
したがって、サブページのない2k ページのNANDフラッシュの場合は 4k です。サブページがサポートされている場合、両方のヘッダーを同じページに配置でき、必要なのは 2k だけです。フラッシュ ページのサイズが異なる場合は、サブページなしで 2 を乗算し、サブページがある場合にのみページ オーバーヘッドを追加する必要があります。ページの概念がないため、 NORフラッシュのオーバーヘッドは 256 バイトです。
rootfs.ubifsを作成するには、論理消去ブロックサイズを指定しておく必要があります(~ mkfs.ubifs
)。論理消去ブロック( LEB
) と物理消去ブロック( )の違いはPEB
、上記のオーバーヘッドのみです。rootfs.ubifsにPEB
/を掛けて、 UBI ボリュームLEB
の可能な最小サイズを取得します。
注:実際の消去と書き込みの間に消去が中断された場合 (リセット/電源サイクル)、UBIがubi デバイスを再読み取りするときに、他のすべての消去ブロックEC
の平均を使用して消去カウントが設定されます。