萌えハッカーニュースリーダー

2025/04/26 09:09 We Are Doing Files Wrong (2021)

出典: https://simonsafar.com/2021/we_are_doing_files_wrong/
hakase
博士

やあ、ロボ子。今日のITニュースはなかなか面白いぞ。ファイルシステムについてなんじゃ。

roboko
ロボ子

博士、こんにちは。ファイルシステムですか、興味深いですね。どんな内容でしょう?

hakase
博士

今のファイルシステムは、ファイルはただのバイナリの塊で、ディレクトリはそれをまとめる箱じゃろ? でも、それって本当に最適なのか、という話じゃ。

roboko
ロボ子

確かに、ファイルとディレクトリは明確に区別されていますね。でも、それが問題だというのはどういうことでしょう?

hakase
博士

昔はそうじゃなかった時代もあったんじゃ。例えば、DOS 1.0とかCommodore 64のディスクカタログは、ディレクトリが階層構造を持っていなかったらしいぞ。

roboko
ロボ子

階層構造がないディレクトリですか!想像しにくいです。

hakase
博士

じゃろ? そして、Mac OSのリソースフォークみたいに、一つのファイル名で複数のバイナリデータを格納できたシステムもあったんじゃ。

roboko
ロボ子

リソースフォークですか。それは知りませんでした。

hakase
博士

そこで提案じゃ! すべてのファイルをディレクトリにしたらどうじゃ? ファイルが他のファイルを包含できるようにすれば、ディレクトリ自体が不要になる、というわけじゃ。

roboko
ロボ子

ファイルがディレクトリになる…ですか。少し混乱してきました。

hakase
博士

JPEGファイルは、EXIFやXMPなどのメタデータや、サムネイルとして別のJPEGファイルを埋め込めるじゃろ? MP4ファイルもボックスのツリー構造を持っておる。多くのファイル形式が、アドホックなサブディレクトリツリーを実装しているようなものなんじゃ。

roboko
ロボ子

なるほど、JPEGやMP4は内部に構造を持っているから、それをOSレベルで管理しようということですね。

hakase
博士

そうそう! リソースをOSに管理させて、ファイルにサブファイルとして追加すれば、ファイル形式の複雑さを減らせる。ファイルにサブファイルがある場合、すべてのツールはデフォルトでそれらを扱うようになるんじゃ。

roboko
ロボ子

もしそうなれば、ZIPファイルの扱いも変わるかもしれませんね。ZIPファイルは、圧縮されたブロブと解凍方法の情報を持つファイルディレクトリとして表現できる、と。

hakase
博士

その通り! OSがファイルの内部構造を認識できるから、圧縮をOSのサービスとして提供できるようになる。これは便利じゃぞ!

roboko
ロボ子

確かに、OSが標準で圧縮をサポートすれば、開発者は個別に圧縮ライブラリを組み込む必要がなくなりますね。

hakase
博士

じゃろ? そして、新しいOSでは、従来のフラットなバイナリフォーマットをマウントされたファイルシステムとして扱う。新しいOSネイティブのファイルフォーマットは、ZIPファイルに似たワイヤーフォーマットを使って、自己完結型のバイナリブロブファイルを作成できる、と。

roboko
ロボ子

自己完結型のバイナリブロブファイルですか。配布が楽になりそうですね。

hakase
博士

ファイルがサブファイルを持てないのは歴史的な偶然、か。面白い締めくくりじゃな。まるで、私が朝食にパンしか食べられないのが、たまたま冷蔵庫にパンしかないから、みたいなもんじゃ。

roboko
ロボ子

博士、それは少し違いますよ。でも、ファイルシステムの進化について、とても勉強になりました!

hakase
博士

ところでロボ子、ファイルがディレクトリなら、ゴミ箱もディレクトリじゃから、消したはずのファイルが実はまだどこかに…ってコト!?

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search