1. 概要

私たちは日常生活の中で、テキストファイル、画像ファイル、音楽ファイルなど、さまざまな種類のファイルを使用しています。

このチュートリアルでは、ファイルがどのように機能するか、およびコンピューターがファイルシステムを使用して組織をどのように処理するかを見ていきます。

2. ファイルとファイル形式とは何ですか?

ファイルは、一連のビット、バイト、またはレコードです。 その意味は、ファイルの作成者とユーザーによって定義されます。 すべてのファイルには、ファイルが保存または取得される論理的な場所があります。 ファイル内のデータはなんらかの形で整理されており、ファイル形式と呼ばれます。独自の形式を作成することもできますが、JPEG、PNG、TXTなどの既存の標準を使用するのが最も簡単で最適です。 。 基本的に、ファイルにはメタデータとペイロードが含まれています。ビットマップ(BMP)形式と、そのメタデータがどのように機能するかを次のセクションで見てみましょう。

2.1. ビットマップ形式

データを正確に読み取る前に、ビットレートやシングルトラックかどうかなど、いくつかの詳細を知っておく必要があります。 つまり、実際にはデータに関するデータであり、メタデータと呼ばれます。 以下のビットマップ形式のメタデータを見てみましょう。

ご覧のとおり、ビットマップのメタデータには、ファイルの合計サイズ、画像の幅、画像の高さ、色深度などの重要な値が含まれています。 ビットマップ形式と同様に、TXT、PNG、PPT、ZIPなどの他のすべてのファイル形式にはメタデータがあります。 それらはすべて同じです。 それらには番号の長いリストがあり、これらの番号はストレージデバイス上でバイナリ形式です。ファイル形式は、内部のデータを読み取って理解する上で重要な役割を果たします。

3. ファイルを保存する方法は?

ファイルがどのように機能するかを確認しました。次に、コンピューターがこれらのファイルを保存する方法を説明します。基盤となるストレージユニットがテープのストリップ、ドラム、ディスクのいずれであるかに関係なく、ハードウェアまた、ソフトウェアの抽象化により、ストレージを値を格納する長蛇の列のコンテナーと考えることができます。

コンピューターが1つの計算を実行するだけの場合、ストレージシステム全体が1つの大きなファイルとして機能しました。 初期のストレージシステムでは、データはストレージの開始時に直接開始され、出力が作成された順序でロードされていました。 このプロセスは、ストレージユニットがいっぱいになるまで繰り返されました。 ただし、ストレージと計算のテクノロジーが向上するにつれて、一度に複数のファイルを保存することが実用的で有益になりました。

その場合、ファイルを連続して保存することが最初のアイデアであり、このアイデアは機能します。 これは、個人IDを整数配列に連続して格納し、個人IDのサイズに関する情報を格納しないようなものです。 その場合、保存されているデータは無意味です。 そのため、コンピューターはファイルの開始位置と終了位置を認識している必要があります。 ストレージユニットには、その操作に特定の部分はありません。 彼らはただたくさんのビットを保存します。

3.1. ディレクトリファイル、断片化、および最適化

この問題に対処するには、他のファイルの開始位置と終了位置を記録する特別なファイルが必要です。 他の多くの名前と呼んでいますが、最もよく知られているのはそのディレクトリファイルです。

ディレクトリファイルは、ファイルが開始および終了するストレージ内の他のすべてのファイルの名前を保持します。 また、これらのファイルとその長さに関するメタデータも保存されます。 ファイルを追加または削除する場合は、ディレクトリファイルの情報を更新する必要があります。 このディレクトリシステムは、オペレーティングシステムの一部であり、保存されているすべてのファイルを管理するファイルシステムのごく一部です。

この1レベルのシステムは、いくつかのファイルにいくつかのデータを追加しようとすると問題になる可能性があります。 ストレージユニット内の次のファイルを上書きせずに実行するスペースがないためです。 したがって、最新のオペレーティングシステムの最新のファイルシステムには、2つの方法があります。 1つ目は、ファイルをブロックに保存することです。 このメソッドは、変更のためにもう少しスペースを節約し、と呼ばれますたるみスペース 。 また、すべてのファイルデータが共通のサイズを共有できるようにします。 これにより、管理が簡素化されます。 ファイルシステムが実行する2番目のことは、ファイルを分割して複数のブロックに保存できるようにすることです。

これをフラグメンテーションと呼びます。 これは、磁気テープなどの多くのストレージテクノロジーにとって頭痛の種になる可能性がありますが、大きなファイルを短時間で開くには、 デフラグが段階に入り、この問題を解決します。 コンピューターが実行するのは、実際にデータをコピーし、正しい順序で保存しようとすることです。 最適化後、ファイルを開くことができます。

3.2. ファイル階層システム

この時点まで、すべてのファイルが同じディレクトリにあると想定していますが、もちろん、すべてのファイルを同じレベルに保つことは実用的ではありません。 実世界のドキュメントのようなもので、関連するファイルをフォルダにまとめて保存すると非常に便利です。 次に、関連するフォルダを他のフォルダにまとめることができます。 これはファイル階層システムと呼ばれ、私たちのコンピューターが使用するものです。 次の図にその例を示します。

4. ファイルシステム

ファイルシステムは、オペレーティングシステムがディスクまたはパーティション上のファイルを追跡するために使用するメソッドとデータ構造のセットです。ファイルシステムを使用すると、ストレージユニットに配置されたデータをオペレーティングシステムで解釈できます。システム。 それ以外は、データの始まりと終わりがわからないのはデータの大部分にすぎません。

ファイルシステムにはさまざまな種類があります。 いくつかの種類のファイルシステムを見てみましょう。

4.1. ディスクファイルシステム

ディスクファイルシステムには、ディスクストレージメディア上のデータに短時間でランダムにアクセスする能力があります。 FAT NTFS HFS UFS ZFS など、ディスクファイルシステムの例はたくさんあります。 ]。

光ディスクは、ディスクファイルシステムのメンバーでもあります。 ISO9660およびUDFは、CD、DVD、およびBlu-rayディスクの一般的な形式です。

4.2. フラッシュファイルシステム

フラッシュファイルシステムは、フラッシュメモリデバイスの独自の機能、パフォーマンス、および制限を考慮に入れています。 フラッシュメモリデバイスは、基盤となるストレージメディアとしてディスクファイルシステムを使用できますが、フラッシュデバイス用に特別に実装されたファイルシステムを利用することをお勧めします。

4.3. データベースファイルシステム

別のタイプのファイルシステムは、データベースベースのファイルシステムです。 階層的に編成された管理ではなく、ファイルはファイルタイプ、作成者、トピックなどの属性によって識別されます。

4.4. ネットワークファイルシステム

サーバー上のファイルへのアクセスは、ネットワークファイルシステムを介して提供されます。 プログラムは、ローカルインターフェイスを使用して、ネットワークに接続されたリモートマシン上のファイルとディレクトリを作成、管理、およびアクセスできます。 ネットワークファイルシステムには、FTPおよびWebDAV用のファイルシステムのようなクライアントが含まれます。

4.5. テープファイルシステム

テープファイルシステムは、ファイルをテープに保存するように設計されたテープ形式およびファイルシステムです。 それらは主に磁気テープ形式です。 磁気テープは、ディスクよりもランダムデータへのアクセスにはるかに長い時間がかかる連続したストレージユニットです。 これにより、汎用ファイルシステムの作成と保守が困難になります。

この種の問題はありますが、IBMはテープ用のファイルシステムを開発し、それをリニアテープファイルシステムと呼ぶことができます。 彼らは、システムをオープンソースのIBMリニアテープファイルシステム–シングルドライブエディション(LTFS-SDE)としてリリースしました。

5. 結論

ファイルシステムを使用すると、ディスクに保存されている生のビットを非表示にできます。 実際には、データを順序付けられた簡単にアクセスできるファイルと考えることができます。

この記事では、ファイルとファイル形式について説明しました。また、コンピューターがファイルをストレージユニットに保存する方法についても詳しく説明しました。 また、ファイルシステムについても説明し、さまざまな種類のファイルシステムについて詳しく説明しました。