たとえば、
-list ハードウェアプログラムはどこlshw
から情報を読みますか? (私の言葉はソフトウェアレベルでここにいくつかのROMチップがあるかもしれないという意味です。もちろん場合もあります)
基本的に、ユーザーが知りたいマシンとシステムの内部構造に関するすべての情報は、カーネルによって仮想ファイルシステムを介してユーザーに提供されます。つまり、procfsは/proc
右側にマウントされていますか?したがって、プロセス/ユーザー空間ではない項目(実際のシステムソフトウェア/カーネル/OS情報を意味し、すべてを知らせる孤児プロセスではない)を読む唯一の方法は、仮想ファイルシステムを介することです。
カーネルはどのようにそれを得るのですか?私は、ROMチップ/センサーをI / Oハードウェアとして扱い、メモリにマップされた物理アドレスを持っていることを意味しますか?
CPUの場合、x86には追加の命令を使用して読み取ることができるレジスタにcpuinfoを入れる特別な命令があることがわかります。 (今すぐlscpu
)