システム情報はどこから来ますか?

システム情報はどこから来ますか?

たとえば、

-list ハードウェアプログラムはどこlshwから情報を読みますか? (私の言葉はソフトウェアレベルでここにいくつかのROMチップがあるかもしれないという意味です。もちろん場合もあります)

基本的に、ユーザーが知りたいマシンとシステムの内部構造に関するすべての情報は、カーネルによって仮想ファイルシステムを介してユーザーに提供されます。つまり、procfsは/proc右側にマウントされていますか?したがって、プロセス/ユーザー空間ではない項目(実際のシステムソフトウェア/カーネル/OS情報を意味し、すべてを知らせる孤児プロセスではない)を読む唯一の方法は、仮想ファイルシステムを介することです。

カーネルはどのようにそれを得るのですか?私は、ROMチップ/センサーをI / Oハードウェアとして扱い、メモリにマップされた物理アドレスを持っていることを意味しますか?

CPUの場合、x86には追加の命令を使用して読み取ることができるレジスタにcpuinfoを入れる特別な命令があることがわかります。 (今すぐlscpu

答え1

x86ハードウェアでは、以下から多くの情報を取得します。DMI、BIOSから情報を取得するAPIです。詳細については、次を参照してください。旗ハブ: lshw

関連情報