1. FAT形式のファイルシステム
FAT/FAT32 は、Windows で主流のファイル形式でした。FAT は長年使用されており、いくつかの欠点もありましたが、FAT に精通していることは、ファイル システムを理解するのに依然として非常に役立ちます。
私はpunctual atomのAlpha開発ボードを使用しており、コアボードはEMMCメモリチップの代わりにNand-Flashです。
ここではSDカード上のファイル操作コマンドを実行して使用します。
一般に、次のような知識が必要です。
1. ファイルはフラッシュまたはハードディスクに保存され、バイト単位で保存されますが、ストレージ メソン自体は特定のコンテンツに対して責任を負いません。ハードディスク上のデータを識別するには、特定のフォーマットとそれを識別するためのドライバーが必要です。
2. ファイル形式の主な機能: 形式管理、ファイルの迅速な検索。
2. FAT形式ファイル操作コマンド
1.IMX6ULLのEMMCまたはSDカードパーティション
IMX6ULL がシステムを書き込むと、EMMC または SD カードは 3 つのパーティションに分割されます。
最初のパーティション: uboot (これは認識されません)
2 番目のパーティション: システム イメージ、つまり Linux zImage+デバイス ツリー ファイル (.dtb) を保存します。FAT形式です
3 番目のパーティション: ルート ファイル システム (EXT4 形式) を保存します。
2. FAT形式ファイル操作コマンド
FAT形式ファイル操作コマンドは、FAT形式ファイルシステムに対する操作です。
(1) fatinfoコマンド
fatinfoコマンドは、指定されたMMCデバイス パーティションのファイル システム情報を照会するために使用されます。形式は次のとおりです。
fatinfo <interface> [<dev[:part]>]
たとえば、SD カードのパーティション0のファイル システム情報を照会したい場合、コマンドは次のとおりです。
=> fatinfo mmc 0:0
** Unable to use mmc 0:0 for fatinfo **
見てわかるように、パーティション 0 はビューの失敗です。前に述べたように、SD の最初のパーティションには uboot が保存されます。これはベアメタル プログラムであり、ファイル システム形式はありません。
SDカードのパーティション1のファイル システム情報を照会するには、コマンドは次のとおりです。
=> fatinfo mmc 0:1
Interface: MMC
Device 0: Vendor: Man 000003 Snr 9193d501 Rev: 15.13 Prod: SD32G
Type: Removable Hard Disk
Capacity: 30448.0 MB = 29.7 GB (62357504 x 512)
Filesystem: FAT32 "NO NAME "
=>
SD カードのパーティション 1 は 2 番目のパーティションであり、システム ファイルが FAT 形式で保存されていることがわかります。
(2) fatlsコマンド
fatls <interface> [<dev[:part]>] [directory]
=> fatls mmc 0:1
system volume information/
0 file(s), 1 dir(s)
(3) fstypeコマンド
fstype <interface> <dev>:<part>
たとえば、SD カードのパーティション 1 を見てください。パーティション0にはuboot が格納されており、パーティション0はフォーマットされていないため、ファイル システムのフォーマットは不明です。次のように:
=> fstype mmc 0:0
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
SD カードの 2 番目のパーティションを確認します。以下に示すように、SD カードの 2 番目のパーティションの形式は FAT です。
結果は次のとおりです。
=> fstype mmc 0:1
fat