6

/ proc/ksymsおよび/proc/ kallsymsとは何ですか。また、プロセスのアドレス空間にマップされるのはなぜですか。それはどのような目的に役立ちますか?システムコール中のカーネルのコンテキストスイッチングで使用されますか?

4

1 に答える 1

3

のSolarisマンページでksyms(7d)これについて説明しています。データは情報提供のみであり、カーネルは現在使用されているシンボルテーブルをカーネルデバッガーやカーネルモジュールローダーにこの方法で公開します/dev/ksyms

/proc/kallsymsLinuxは;を通して同じことをします。/proc/ksyms-存在する場合-は、同じデータのサブセットを提示する「従来の」ファイルです(つまり、非推奨です)。

Linux / Solarisの場合と同様に、違いはLinuxバージョンではテキストが表示されるのに対し、Solarisバージョンではバイナリであるということです。Solaris 1で実行すると、Linuxnm /dev/ksymsで取得するのと同じタイプの出力を取得できますcat /proc/kallsyms

于 2012-05-21T18:13:37.747 に答える