UNIX, アルゴリズムとデータ構造2
UNIX
- カーネルの構造と機能 - UnixClassWiki
- プロセス管理 - UnixClassWiki
- デバイススペシャルファイル - UnixClassWiki
- ファイルシステム - UnixClassWiki
今使っているLinuxにはおおよそいくつのシステムコールが用意されているのが調べてみよう。
/usr/share/man/man2
に492個のファイルがあったので,
およそ500個でしょう.
次に、既に使われなくなりなくなったシステムコールと、互換性のために残してあるが使用するのに推奨されていないシステムコールを1つ以上みつけてみよう。
create_module(2)は既に存在しません. bdflush(2)は非推奨となって何も行わなくなっています.
カーネル空間の話. カーネル空間でhttpを処理するkhttpdの話. khttpdのことは初めて知りました.
ext4をext3の少々の改変だと思っていたのですが, 講師の人が「ext4はext3とは別物になっている」と述べたので, 調べなおしてみたら本当にそのようでした. ext4が拡張機能を使って無ければext3としてマウントできることからマイナーチェンジだと思っていました. 間違いでした.
多くの点で、Ext3 から Ext4 になって Ext2 から Ext3 に進んだときよりも大きな改善がされています。 Ext3 では Ext2 にジャーナリングを追加したのがほとんどでしたが、Ext4 ではファイルデータを保存するファイルシステムの重要なデータ構造にメスが入っています。
Portalsというファイルシステムでは/p/tcp/example.com/www
のようにTCP/IPにアクセスできるという話をしてくれたのですが,
/p/tcp/com/example/www
ならともかく,
トップレベルドメインがドットになっているのは奇妙では?
と思って質問してみたのですが,
「その人がそうしたかったからでは」「論文を読めばわかる」ということで,
論文へのリンクが貼られていたPortals in 4.4BSDのでこれを読んでみます.
論文の中でfd = open("/p/tcp/foo.com/smtp", O_RDWR);
というコードが貼られていたので,
私の勘違いが明らかになりました.
/p/tcp/example.com/www
のwwwはサブホストではなく,
ポートを表していたのですね.
というか教科書にもそう書かれていました.
しかし,
そうならば,
wwwではなくhttpを使うべきなのではないでしょうか.
実装された当時はhttpという名称は一般的では無かったのでしょうか?
今はhttpsを意識しないといけないのでwww
では絶対にまずいと思います.
アルゴリズムとデータ構造2
丁度昼休みに図書館でSoftware Designにて読んだチェックサムの話をしていてシンクロニシティを感じました.
アルゴリズムとデータ構造の講義だけどRSA暗号の話になりました.
暗算が苦手すぎてmaximaで解いているのでテストがこなせるか不安すぎますね…