У меня возникла следующая проблема.Мне необходимо отслеживать запуск новых процессов в ОС Fedora. При этом
я не хочу пересобирвать свою ОС (она собрана без поддержки LKM, без экспорта
sys_call_table).На данный момент я поступаю следующим образом: для выявления
запуска новых процессов, читаю в цикле папку /proc и смотрю на появление
новых pid'ов. Но такой способ может пропускать запуски части процессов, если
врема работы процесса мало (например ps, ls и т.д)Может быть Вы знаете более надежный способ?
Заранее признателен.
>У меня возникла следующая проблема.
>
>Мне необходимо отслеживать запуск новых процессов в ОС Fedora. При этом
>я не хочу пересобирвать свою ОС (она собрана без поддержки LKM, без
>экспорта
>sys_call_table).
>
>На данный момент я поступаю следующим образом: для выявления
>запуска новых процессов, читаю в цикле папку /proc и смотрю на появление
>
>новых pid'ов. Но такой способ может пропускать запуски части процессов, если
>врема работы процесса мало (например ps, ls и т.д)
>
>Может быть Вы знаете более надежный способ?
>Заранее признателен.
Только через ядро, хотяб через KLD. Нужна блокировка вновь запускаемого процесса до получения инфы о нем обработчиком, а это не реализуемо в нынешних рамках высоконадежной и стабильной системы.Хотя в зависимости от того, какая цель преследуется, стоит посмотреть acct(2) и epoll(2). Может быть одного из этого будет достаточно.
В winapi есть hooks, может есть подобное в unix?
>В winapi есть hooks, может есть подобное в unix?
если речь о хуках win32, то там есть и 1001 способ их обрулить. и "подобное" в юниксе нафиг не нужно никому. а если речь про "The Age-Old Art of Hooking", то это делается одинаково во всех ОС.\^P^/