回答:
http://lxr.linux.no/linux+v3.2.9/fs/proc/base.c#L2482が現在の実装です。
proc
ファイルシステムは完全に仮想あり、かつその内部のVFS実装されているreadlink
特殊なシンボリックリンクのための適切な場所にデリゲートを。そのため、self
すべてのコンテキストスイッチではなく、読み取り/トラバース時のポイントを計算します。
ファイルは/proc
ディスクに保存されず、カーネルによってオンザフライで生成されます。参照してください。私が開いてからは/ proc読んだときにどうなりますか?
プログラムを使用する場合/proc
は、カーネルソースコードの実装を読むことができます。/proc/self
シンボリックリンクの内容は、呼び出しプロセスのpidでバッファを埋める関数によって生成されます。