パソコンオタクのおじいちゃんいる???
■ このスレッドは過去ログ倉庫に格納されています
今、FAT16を実装してんだよね。
だからこの辺の時系列を知りたい まず、MSDOS登場以前ってディレクトリとかファイルって概念はあったの?
メインフレームとかってディレクトリの木構造そのものがないっていうじゃん
そのへんどんな感じで登場したの? ハードディスクがC:ドライブなのは
フロッピーディスクドライブ2個がA:とB:だから
DOS時代に決まった >>6
まずUNIXがあったからな
その前にMULTICSがあって、これが階層型ファイルシステムの元祖じゃなかったけ
MS-DOSが階層型ファイルシステムを導入したのは後になってからだよ >>7
そのへんも気になってる
UNIXってドライブ番号とかないのに、MS製品はあるよね
何でそうなってんだって思う >>9
最初のUNIXにも木構造のファイルシステムがあったん?
それはFATとは別のやり方で管理してたの? >>11
むしろケン・トンプソンはミニコンで階層型ファイルシステム使いたくてUNIXを作った >>12
なるほど
ケン・トンプソンってバケモンだな >>13
あのへんの時代の開発者は石器時代にライター作ったぐらいやばいからしゃーない >>11
初期のUNIXのファイルシステム、例えばSysV FSはとってもシンプルだよ
ディレクトリーはファイルそのもので、オープンして中身を読み取ることすら可能だった
opendir()システムコールは存在しなかったんだよ
エントリーひとつは16バイトで、先頭2バイトがi-node番号、ファイル名は最大14バイトだった
i-nodeと呼ばれるブロックにリンクリストが格納されていて、それがファイルの中身が格納されている場所を示す
FATとそう変わらないだろ? >>16
いや、お前の説明がよくわからんからなんとも言えん。
その説明だとFile Allocation Tableに相当するものは存在しないって理解だけど会ってる? FATの実装してみてるのは、マルチプロセス環境で同じファイルに書き込んだときに不整合が怒らない仕組みとはどのように実装されてるのか知りたいからなんだよね
で、こういうファイル不整合の問題はどの時代から認識されて対処されてきたのか知りたい >>18
そういう排他処理は、どのくらい並列性を維持したいかで変わってくる
一番簡単な実装はカーネル内に排他セクションをひとつ設けて
そこがファイルシステムへの読み書きを一手に引き受ければいい
これだと複数プロセスが同時に読み書きできなくなってしまうから
実際は必ず排他しなければならない箇所とそうでない箇所を分けて巧妙に実装する
ハゲるよ >>19
さ、さすが、おじいちゃん!!
詳しそう…
その辺どうやったら理解できる?
なんか本とかある? ちなみにさ、ケン・トンプソンの時代のパソコンって8bitだよね?
だとすると扱えるファイル数とかセクター数が256個に制限される気がするけどこれもあってる? 詳しい参考書を教えようとしたらNGワードにひっかかった >>21
うんにゃPDP-11は16bitだよ
当時はまだパソコンなんて存在せず、UNIXはミニコン上で開発された >>22
頼むから教えてくれ
5chに貼れないならメールで送ってきて
wapa505@macr2.com ちなみにZ-80とかの8bit CPUでもキャリービット使って16bitや32bitの加減算できるよ >>22
家帰ったからID変わったわ
1です。
メールで送ってきてください。お願いします。
wapa505@macr2.com まず通称Lion's Commentaryって本を探して
いまだと入手が難しいかもしれない >>23
16bitなのか
だったら6万ぐらい保存できるのか
使い物になるね あとはMINIXのソースコードをどこからかダウンロードできるはず
WikipediaのMINIXのページ見てリンクを辿ってくれ なんとなくだけど、ファイルシステムの排他制御はファイルシステムの機能として実装されてるのではなくて、カーネル側でなんとかしてることはわかった。
なので俺は、MINIXのコードを読まないといけないのか… ■ このスレッドは過去ログ倉庫に格納されています