■ データ加工の方法
記憶装置には二つの種類があり、それぞれ役割がちがいます。主記憶装置であるメモリは作業机で、補助記憶装置であるディスクは本棚と思ってください。メモリではビット単位で加工し、ディスクではファイル単位で扱う――つまりメモリはばらばらにして加工し、ディスクは中身自体はいじれないかわりに、ファイル管理はしてくれる、といった感じです。
メモリの管理はCPUが行っていると書きました。これは人間でいうところの「目」で管理というニュアンスです。実際にデータを加工したりする「手」にあたるものが、プログラムになりましてOS(オペレーティング・システム)がその任にあたっています。――つまりOSとは、コンピュータのハードウェア全体を管理するプログラムなのです。
ただOSにもメモリ管理の限界があるので、たとえCPUが高性能でメモリ管理が高くとも、OSのバージョンが低いとそれだけメモリ管理能力も低いので、ハードの性能を充分に発揮できない、といったこともあります。だから、高性能パソコンは、最新のOSが搭載されているのです。
■ データ管理の方法
同じ「記憶装置」でも、「主記憶装置(メモリ)」と「補助記憶装置(ディスク)」に分かれる要因の一つに、データ管理の方法の違いがあります。CPUが直接アクセスできるのがメモリで、間接的にしかアクセスできないのがディスクです。メモリのデータはOSがアドレスを管理するんで直接やりとりできるんですが、ディスク上のデータは、二度手間を踏まなければなりません。方法としては「ディレクトリ」を採用しているので、まず目次を見てファイルの場所を確認してから、そのデータをメモリに読み込んでいるんです。「ディレクトリ」というのは、「このファイルは、この場所にあるよ」という情報だけが書き込まれた特殊な目次のためのファイルです。「ルートディレクトリ」「サブディレクトリ」というような階層構造(こういう階層構造をもつため「ツリー構造」という別名もある)を持ち、MS-DOS時代からファイル管理を円滑にしています。Windows 95以降から、「フォルダ」っていう名称にかわってますが、たぶん、原理はかわってないんでしょう。(^ ^;) オイオイ
更にややこしいのが、実際にデータが記憶されている場所では、一つのファイルは連続してディスク上にあるわけじゃなく、複数の断片として存在していることです。それを関連付けてるのが「FAT(ファット:File Allocation Table)」とか「NTFS(エヌティーエフエス:NT File System)」とかの「ファイルシステム」です。一見効率が悪くみえますが、連続した状態で保存しようとするとどうしてもロスがでてくるので、「ファイルシステム」で関連付けて、あとはばらばらで空いてるところに保存する、というのが効率的なんです。だから、「FAT」や「NTFS」が壊れると、世にも恐ろしい「バラバラ殺人」が起こり、ファイルの再生は不可能に近い……という悲惨な状況を招きます。ファイルシステム(FAT・NTFS)やメモリのことを知れば知るほど、ちょっとパソコンがこわくなるのは事実ですね。
▼ 結局、どうやって管理してるの?
ということで、ハードディスクとかのディスク上は、「ディレクトリ(フォルダ)」と「ファイルシステム(FATとかNTFSとかの)」で管理されているんです。具体的には、こういう管理情報を保存する領域と、実際のデータを書き込む領域(クラスタ領域)という二つの領域があります。ディスク装置を本棚と見るなら、本棚の前に索引目録があって、それがディレクトリとかFATやNTFSのようなファイル管理のための情報。その情報を元に、書庫であるクラスタ領域にある本(データだね)を取って来るっていうノリでしょうか。閉架式の図書館をイメージしてもらえるとわかりやすいかも。
Windowsにおける、実際のデータ管理の方法は、OSのグレードによってちょっと変わっています。95系OS(95/98/ME)では「FAT」を採用し(Windows 95は「FAT16」、Windows 95 OSR2(っていうか、Windows 98)以降は「FAT32」)、NT系OS(NT/2000/XP)では「NTFS」を採用しています。一応、NT系は「FAT」も扱えるようですが、95系は「NTFS」はまったく扱えない(見ることさえできない)ので、ご注意を。
「FAT」より「NTFS」のほうが性能としては上です。データが書き込まれるとその情報を覚えていてトラブル回避に強くなっていたり、アカウントごとのアクセス権の設定機能を持っていたり……他にもいろいろ機能があります。マイクロソフトはよっぽど自信があったらしく、NTFSお目見え当初は、デフラグやスキャンディスクを提供しなかったくらいです。(^ ^;) いや、不便でした。