Scribble at 2023-11-23 22:15:53 Last modified: 2023-11-24 09:36:36
ファイル・システムの勉強を丁寧にやってみたいという願望はある。いや、そもそも OS 理論は全般としてスケジューリングだろうとメモリ管理だろうと I/O だろうと全て面白そうだ。何冊かの国内の大学テキストと、Naresh Chauhan, Principles of Operating System (OUP, 2014) くらいは眺めてきたけれど、もちろん教科書なので体系的な見通しを得られたという点では一定の成果を得ても、個々の話題はもっと詳しく学ばなくてはけないし、実際に挙動を確かめる実験もしたい。
ウェブ・アプリケーションのプログラマやウェブ・サーバのエンジニアなどに、ここまでの低レベルな構造や原理の知識が必要かどうかは分からないが、興味があって好きなら勉強すればいいのにという気がするんだよね。だから、もうウェブ制作なりネット・ベンチャーの業界に入って20年以上が経過するのだけれど、大半の従業員(いや、たいていは役員級ですら)コンピュータや通信などの原理的なところに知識もなければ興味すら無いという事実に、呆れるというか驚いてしまう。それでも、適当に儲かっていて何十年も事業を続けられるのだから、プラットフォームの上に乗っかって商売するということがこんなに楽なことなのかと、経済学や経営学という意味でも驚くばかりだ。
それにしても、DDG などでファイル・システム("filesystems" と表記することもあるので、外来語としても中黒で分割せずに「ファイルシステム」と書いてもいいようだ)について書かれたページを検索してみると、もちろん大半が "what is a file system?" という類の判で押したような(恐らく、本当にコピペで掲載してるページも多かろう)ページなのだが、もう一つの傾向として XFS や NTFS などの具体的なフォーマットごとの話に特化したものも多く、かなり不満足な結果となっている。つまり、ファイルシステムを勉強したいと思っても、入口か出口にしか行先がないということだ。その間にある動作原理についての理屈とか実装の話が抜け落ちているため、漠然と基本情報処理技術者ていどの雑な知識をもっている素人か、あるいはファイルシステムを自力で設計できるくらいの埋め込みエンジニアかという両極端になってしまう。ここを繋ごうとすれば、たぶんファイルシステムを実装している現場(つまり埋め込みの OS を自社で開発している企業)へ就職したり、あるいは OS を専攻する学科へ進むしかないということになる。でなければ、具体的にファイルシステムをどう設計したり実装したりパフォーマンスを評価すればいいのかすら分からない。だが、これではコンピュータの知識としては殆ど北斗神拳か陸奥圓明流みたいなものになってしまう。専門の学科か企業にいないと分からないなんて、そんなことではコンピュータの知識を更に得たいという人々の願望に応えられるわけがないのである。