Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxチュートリアル >> ハードウェアスキャンとドライブのロード一般的な流れ

ハードウェアスキャンとドライブのロード一般的な流れ

  

システムの起動 - > PCIバスのスキャン(PCIバスの列挙) - >ハードウェア構成スペースからのハードウェア情報の読み取り - > PCIバスディスクリプタは含む検出されたPCIデバイスのリスト(特定のデバイスドライバがロードされる前に設定されます) - >カーネルはudevイベントを送信します - >ユーザ側のudevは対応するudevルールを実行して対応するデバイスドライバをロードします。 Etc /udev /50-udev.rules:ACTION ==" add"、SUBSYSTEM =="?*"、ENV {MODALIAS} =="?*"、RUN + =" modprobe $ env {UDEV_MODPROBE_DBG} } $ env {MODALIAS}" - >デバイスドライバをロードするときは、(libprobe.confファイルではなく)/lib /modules /`uname -r` modules.aliasファイルを読み、エイリアスに従って適切なドライバmodules.aliasファイルをロードします。これは、各カーネルモジュール情報のエイリアス情報に従って、カーネルによって一様に生成されます(aliainfoには、エイリアス情報、つまりドライバがサポートするハードウェアが含まれます)。 - >デバイスドライバのロード時に、モジュールの初期化時にpci_register_driverを呼び出してpci_driverを登録します。これには、ドライバが処理できるデバイスIDが記載されたpci_device_idが含まれています。どのデバイスが一致するか、ドライバ用のデバイスのリストを作成し、pci_driverのprobe関数を呼び出して、一致するデバイスごとに関連するデバイス(ネットワークデバイスなど)を呼び出します。

Copyright © Windowsの知識 All Rights Reserved