0
0

セクタ・クラスタについて調べてみた。

Last updated at Posted at 2024-06-25

この記事について

組み込み会社で新人の私が、セクタ・クラスタについて勉強と一緒にまとめたものです。内容は、「ファイルシステム」や「ストレージ(記憶装置)」を調べている内にでてくる、「セクタ」「クラスタ」っていったい何なのか?と思っている方に向けた内容になっています。

はじめに

まず、ざっくり結論から書いてしまうと

セクタ」・「クラスタ」は "記録"の"単位" です。
  • セクタ」は主に "ストレージ""最小記録単位" となります。
  • クラスタ」は主に "ファイルシステム""(理論的な) 最小記録単位" となります。

……と書いたのですが
いきなり上記のように書かれても分からない所があると思うので
「ここで言う"ストレージ"とは?」 という点や 「"単位"とは分かったけど詳しくは?」 など、調べた結果を簡単にまとめようと思います。

ストレージとは?

日本語での ストレージ(Storage) の意味/対訳は 「保管」「貯蔵」「収納場所」 です。

スマートフォンやコンピュータなど、デバイスのデータ容量を調べる時に出てくる用語である「ストレージ」も同じ意味合いを持ち、"データを保管するシステムや装置" のことを指します。

身の回りにある「ストレージ」をあげると、
磁気ディスク( HDD / フロッピーディスク )」「フラッシュメモリ( SD / USB / SSD )」「光ディスク( CD / DVD )」などがあり、
私たちは、数多ものストレージに囲まれて、日々暮らしています。

セクタとは

ストレージ」に対して実際に「ソフトウェア」でデータを読み書きする場合、
データは、下図のように "固定的な長さのブロック" に区切って管理されています。
その「ブロック」は「セクタ」という "単位" で呼ばれており

「セクタ」は主に、"ストレージ" の "最小記録単位" となっています。

"セクタ"の大きさ

セクタは サイズ があり "ストレージ"によってサポートの範囲が異なります
具体的なサイズは 512 Byte、1024 Byte、2048 Byte、4096 Byte の4種類存在します。

通常は 「512 Byte」 が使われています。
Sector_1.png

[補足] セクタの管理

Q. 「セクタ」はどうやって管理されているのか?
A. ファイルシステム上では、MBRという物理セクタの先頭に書かれている論理開始セクタ番号と、PBSという論理セクタの先頭に書かれている構成情報を元に「 セクタ番号(場所) 」を算出しています。

クラスタとは

「ソフトウェア」や「ファイルシステム」に対して、
"固定的な長さのブロック(セクタ)の集合体" に区切って管理されています。
セクタ単位での管理を行わないのは、データが大きくなった際の負荷を軽減するためなどがあげられます。
上記より、

「クラスタ」は主に"ファイルシステム" の "(理論的な) 最小記録単位"となっています。

下図のように、セクタが集合したもの「クラスタ」 と言います。

Sector_1.png

"クラスタ"の大きさ

クラスタのサイズは、セクタサイズ×n で決まり、
n」の値は "2の累乗かつ1以上の値" でなければなりません、
したがって、使用できる値は、 1,2,4,8,...128 ということになります。


クラスタの役割

主に、データの保存場所を管理できます。
また、ファイル・ディレクトリ作成、データ書き込みの際に、必要なクラスタ数を消費し、使用/未使用の状況の管理もしています。

FAT領域におけるデータ管理は 「クラスタ番号」 を使用して行われています。

[追記]:ファイルの「サイズ」と「ディスク上のサイズ」の値が異なる理由

Sector_1.png

「サイズ:」 は、実際のデータサイズ を表示しております。
「ディスク上のサイズ:」 は、クラスタの合計サイズを表示しているため値が異なります。

終わりの「ひとこと」

セクタとクラスタについて、ずらずらと説明を書いて記事として投稿していますが、ここに関してはサラッと流し読んで、実際にストレージの中身を見てみることを勧めたいです。
何が書いてあるかわからないと思いますが、セクタの中に16進数が無数に入っているのがみれるので、「あぁ、これがファイルになるのか」と映画マトリックスのような感じを味わってみてください。

ちなみに、私は「HxD」という16進エディタを使ってデータを見ていました。

次回は、「FAT12/16/32」について調べようと思います。
もし、よろしければまた見にきてください。


関連記事

ファイルシステムに関しての記事

次回の記事はこちらです。

組み込み開発技術ブランド「Cente」

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0