murasaki.usb
Last modified:
Sat Apr 10 23:37:41 JST 2004
murasaki.usbはUSBイベント発生時に hotplug.murasakiが呼び出す
Agentプログラムです。
[実行までの流れ]
カーネル(USBイベント発生)
|
|
hotplug.murasaki
|
|
murasaki.usb
[実行内容]
usbmapから対応するモジュールを探す(1,2)
|
|
murasaki.dependを元に依存モジュール/エイリアスを展開する(3,4)
|
|
murasaki.precallを元にモジュール/デバイスに
対応するスクリプトを実行する(5,6)
|
|
モジュールをロード/アンロードする(7)
|
|
murasaki.callを元にモジュール/デバイスに
対応するスクリプトを実行する(8,9)
-
hotplug.murasakiを通じてカーネルから渡された情報を元に
murasaki.usbmapから一致するモジュールを探す。
- addの場合
- murasaki.blacklistに登録されているモジュールは無視される。
- removeの場合
- murasaki.stickylistに登録されているモジュールは無視される。
-
同様に modules.usbmapから一致するモジュールを探す。
- addの場合
- murasaki.blacklistに登録されているモジュールは無視される。
- removeの場合
- murasaki.stickylistに登録されているモジュールは無視される。
-
得られたモジュールに依存するモジュールを、murasaki.dependから探す。
-
上記で得られたモジュールにエイリアスがあれば、展開する。
- addの場合
- 展開されたモジュールがmurasaki.blacklistに登録されていれば無視される。
- removeの場合
- 展開されたモジュールがmurasaki.stickylistに登録されていれば無視される。
(全モジュールのリストが完成)
-
murasaki.precallから各モジュールに対応したスクリプトを探し、
実行する。
-
murasaki.precallに[usb]で指定されている、スクリプトを実行する。
-
モジュールをロード/アンロードする。
# アンロード時、他で使用しててbusyのモジュールはアンロードされない。
-
murasaki.callから各モジュールに対応したスクリプトを探し、
実行する。
-
murasaki.callに[usb]で指定されている、スクリプトを実行する。
(今は指定なし)
[関連]
Shuu Yamaguchi :
shuu@dotAster.com