実行中のシステムでデバイスドライバを検出して分類します。

実行中のシステムでデバイスドライバを検出して分類します。

実行中のカーネルにどのデバイスドライバが含まれているかをどうやって知ることができますか?

それに加えて、これらのデバイスドライバをどのように分類しますか?

たとえば、以下はWikipediaのLinuxカーネルの概念図です。

ここに画像の説明を入力してください。

検出されたデバイスドライバを上記の画像の対応する領域にどのように展開できますか?

私の考えでは、そのような情報はカーネル構成ファイルから得ることができるということです。

(回答がグラフィック形式であることは望ましくありません。テキスト分類で十分ですが、全体的に適切なカテゴリは画像の領域と一致します。)

ベストアンサー1

以下を使用して、ロードされたドライバを一覧表示できます。lsmod。例えば、

[root@vm bin]# lsmod Module Size Used by coretemp 13435 0 crc32_pclmul 13113 0 ghash_clmulni_intel 13259 0 aesni_intel 69884 0 lrw 13286 1 aesni_intel gf128mul 14951 1 lrw glue_helper 13990 1 aesni_intel ablk_helper 13597 1 aesni_intel cryptd 20359 3 ghash_clmulni_intel,aesni_intel,ablk_helper sg 40721 0 ppdev 17671 0 pcspkr 12718 0 vmw_balloon 13415 0 parport_pc 28165 0 parport 42348 2 ppdev,parport_pc vmw_vmci 67106 0 i2c_piix4 22106 0 shpchp 37032 0 ip_tables 27240 0 xfs 939662 3 libcrc32c 12644 1 xfs sr_mod 22416 0 cdrom 42556 1 sr_mod sd_mod 45497 3 crc_t10dif 12714 1 sd_mod ata_generic 12910 0 crct10dif_generic 12647 0 pata_acpi 13038 0 mptspi 22542 2 scsi_transport_spi 30732 1 mptspi mptscsih 40150 1 mptspi vmwgfx 176029 1 drm_kms_helper 125008 1 vmwgfx crct10dif_pclmul 14289 1 crct10dif_common 12595 3 crct10dif_pclmul,crct10dif_generic,crc_t10dif ttm 93441 1 vmwgfx crc32c_intel 22079 1 ata_piix 35038 0 drm 349210 4 ttm,drm_kms_helper,vmwgfx mptbase 105960 2 mptspi,mptscsih serio_raw 13462 0 libata 218730 3 pata_acpi,ata_generic,ata_piix vmxnet3 53833 0 i2c_core 40582 3 drm,i2c_piix4,drm_kms_helper floppy 69417 0 dm_mirror 22135 0 dm_region_hash 20862 1 dm_mirror dm_log 18411 2 dm_region_hash,dm_mirror dm_mod 113292 11 dm_log,dm_mirror

その後、各ドライバの詳細については、次を使用してください。モジュール情報

[root@vm bin]# modinfo coretemp filename: /lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/hwmon/coretemp.ko license: GPL description: Intel Core temperature monitor author: Rudolf Marek <[email protected]> rhelversion: 7.2 srcversion: 39EE385A7A807BDCB75C480 alias: x86cpu:vendor:0000:family:*:model:*:feature:*00E7* depends:
intree: Y vermagic: 3.10.0-327.el7.x86_64 SMP mod_unload modversions signer: CentOS Linux kernel signing key sig_key: 79:AD:88:6A:11:3C:A0:22:35:26:33:6C:0F:82:5B:8A:94:29:6A:B3 sig_hashalgo: sha256 parm: tjmax:TjMax value in degrees Celsius (int)

その後、この情報を使用して各ドライバーが属する場所を分類できます。

おすすめ記事