2

私は現在、本Advanced Programming in the Unix Env​​ironment で、プロセス テーブル、ファイル テーブル、および v ノード テーブルについて読んでいます。

理解を助けるために、プロセス テーブル、ファイル テーブル、v ノード テーブル、およびそれらの間の関係を表示できると便利です。C コードを書いたりデバッグしたりするときに、これらの内部構造を表示するにはどうすればよいですか?

psandからの出力を使用して内部構造情報をつなぎ合わせls、関係を紙にスケッチして構造を視覚化しようとしましたが、それは非常に遅いです.

プロセス テーブルの表示についてはインターネット上に多くの投稿があるようですが、プロセス テーブル、ファイル テーブル、v ノード テーブル、およびそれらの関係は表示されません。

4

1 に答える 1

1

あなたが求めていることのほとんどはprocfs、としてマウントされた仮想ファイルシステムによって公開されていると思います/proc

最上位/procディレクトリには、実行中のすべてのプロセスのプロセス ID がディレクトリとして表示されます。

プロセス ディレクトリ内には、プロセスに関する情報を含むファイルとサブディレクトリがあり、1 つのサブディレクトリは/proc/XXX/fd/、プロセスによって開かれたファイルを含む です。

詳細については、次のドキュメントを参照してください。

http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/proc.html http://www.thegeekstuff.com/2010/11/linux-proc-file-system/

または、「linux /proc filesystem」をグーグルで検索したときに表示されるその他のもの。

于 2013-09-12T08:00:24.273 に答える