HoverHell <[EMAIL PROTECTED]> writes:

> В дебиановском скрипте /etc/init.d/alsa проблема убивания процессов,
> использующих звук, при выгрузке модулей, решена так: "lsof +D /dev -F rt|awk
> '/^p/ {pid=$1} /^t/ {type=$1} /^r0x(74|e)..$/ && type == "tCHR" {print
> pid}'|cut -c 2-|uniq"
>
> * Попутно говоря, можно ли как-то узнать, какие файлы в /dev (или где ещё)
> создал модуль ядра?
Напрямую -- нет. Потому что файлы в /dev создает не модуль ядра. Они либо
создаются руками, либо демоном udev. Первый случай (нынче уже не слишком 
типичный)
интереса не представляет; во втором случае можно написать udev-правило которое
будет где-то фиксировать запросы от ядерных модулей на регистрацию устройств -- 
после этого можно будет узнать какой модуль чего создал (но там, впрочем, логика
не совсем тривиальная).

Кроме того, анализируя файл /etc/modprobe.d/aliases и ему подобные можно 
установить
соответствие между номерами устройств и именами модулей -- ну а дальше по имени
устройства определяется его номер и т.д. 

-- 

                                        S. Y. A(R). A.

Ответить