Аналогичный инструмент, такой как inotify, для версии ядра 2.6.9 (или ниже)

Мне нужно написать приложение на С++ (среда Linux), которое отслеживает изменения файла и удерживает процесс до тех пор, пока запись файла не будет закрыта. Я посмотрел и установил inotify Но это не сработало, так как у меня версия ядра 2.6.9. Я не могу обновить версию ядра, так как использую удаленную машину.

Есть ли у нас какой-нибудь инструмент, который можно использовать на С++ (linux-машина) с ядром 2.6.9 или lwoer?


person user765443    schedule 06.03.2013    source источник
comment
Это очень старая версия ядра; вы можете обновить?   -  person Alex Chamberlain    schedule 06.03.2013
comment
Возможен ли опрос?   -  person us2012    schedule 06.03.2013
comment
Быстрый поиск в Google приведет вас на эту страницу Википедии. Если это невозможно использовать, см. раздел См. также.   -  person Some programmer dude    schedule 06.03.2013
comment
Спасибо за быстрое обновление...   -  person user765443    schedule 06.03.2013
comment
@AlexChamberlain, мы используем удаленную машину, и у нас нет разрешения на обновление ядра.   -  person user765443    schedule 06.03.2013
comment
@Polling — это вариант, наша цель — заблокировать файл до запуска процесса или проверить статус файлов, если они изменяются.   -  person user765443    schedule 06.03.2013


Ответы (1)


Разве вы не можете использовать dnotify?

Он доступен начиная с 2.4 ядра и устарел на inotify начиная с 2.6.13 ядра.

dnotify доступен через fcntl API, и более чем вероятно, что он может быть доступен в вашем текущем ядре, если inotify API не доступны. Вот документ о том, как его использовать.

person Halim Qarroum    schedule 29.04.2013