FC2カウンター

現在の訪問者数

現在の閲覧者数:

カレンダー

05 | 2017/06 | 07
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -

プロフィール

剣菱P

Author:剣菱P
剣菱Pと申します。
性別:男
年齢:27
二兎を追って一兎も得られないタイプ

マイコンやプログラミング、ニコニコ動画、雑記等
方向性は見えずとも、ちょっとずつ更新していく予定です!

リンクフリーです。
こんなブログでよかったらよろしくお願いしま~す。

公開メール kenbishiP@gmail.com

検索フォーム

最新記事

最新コメント

カテゴリ

メールフォーム

名前:
メール:
件名:
本文:

月別アーカイブ

最新トラックバック

リンク

ブロとも一覧

ブロとも申請フォーム

ランキング

ランキング参加中です。気が向いたらクリックしてあげてください。


にほんブログ村 その他趣味ブログへ
にほんブログ村 その他趣味ブログ 趣味の工作へ

スポンサーサイト


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

FAT16 ルートディレクトリあたりを眺めてみる SDカード FATの整理1»

コメント

コメントの投稿













管理者にだけ表示を許可する

SDカード FAT16の整理2


前回はFATの先頭に

20121215_170103.jpg

こんなのが出て、これがクラスタの順番を表してるらしい

sdfatmap.jpg
んで、クラスタってのはデータをひとまとめにしたもので
データ領域に並んでるみたいだ

SDFAT16_7.jpg
1クラスタのセクタ数はここで 今は32セクタらしい

つまりどんな小さなファイルでも最低32セクタは消費しちゃうのか

32×512=16KBか



データ領域の前にルートディレクトリエントリって領域があって
SDFAT16_8.jpg
ファイルやフォルダの情報を記録する32bitの領域がルートディレクトリエントリ数分だけ存在する

32ビット×512コ =32セクタ

つまり32セクタ分

ってわけでこうなるのか
20121215_182032.jpg


FATの先頭の
20121215_1701032.jpg
これのうちFAT16の場合は2バイト(16ビット)ずつクラスタの番号をあらわしてるらしい

で、先頭の0番目と1番目は予約済みで

実際のデータはクラスタ2番から記録されるみたい
20121215_1701033.jpg

20121215_001748.jpg
今回は1クラスタに収まるファイルなので複数のクラスタにまたがることはない

FATのFFFFはクラスタのつながりの終了を意味してるらしい

もし、クラスタ1つに収まらないファイルだった場合

クラスタ情報に次のクラスタの番号が記される 例としてこんな風になってたら
sdfatmap2.jpg
この場合先頭クラスタ2番に0x0003という番号が入ってるので3番に行くと
3番の中には4番と書いてある
4番の中にはFFFFと書いてあるのでおしまい
つまりクラスタ2→3→4の順番でファイルが収められている

5番はFFFFなので5番のなかに一つのファイルが収まっている

と、いうことらしい

今までのをまとめると

20121215_184117.jpg

よーし、これで必要なアドレスが割り出せたぞ

早速正しいか実験してみよう
セクタ0とセクタ488 セクタ520を連続して呼び出してみる
20121215_184924.jpg
20121215_184935.jpg
おおおおおおおおおおお!!
ちゃんとファイル情報とその中身が読み出されてる!!
この前はいい加減だったけど、今回はきちんとアドレスを指定して呼び出せた!
めっちゃうれしい

ちなみに↑の図のアドレスは連続して受け取ったデータのアドレスで、
実際のSDカードのアドレスを表示してるわけじゃないので
セクタ488の先頭アドレスが0x0200になってしまっている(SDカード上の物理アドレスは0x03D000)
セクタ520の先頭アドレスも同様に0x0400になってる


まだまだ勉強しなきゃいけないことはたくさんあるだろうけど

FAT16の基本は理解できた!

スポンサーサイト

FAT16 ルートディレクトリあたりを眺めてみる SDカード FATの整理1»

コメント

コメントの投稿













管理者にだけ表示を許可する


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。