Кіріспе

dnotify – Linux ядросы үшін файлдық жүйе оқиғаларын бақылау құралы, fcntl шақыруының қосалқы мүмкіндіктерінің бірі. Ол 2.4 ядролық сериясында енгізілді. Қазіргі кезде inotify-мен алмастырылған, бірақ үйлесімділік үшін сақталып келеді. Оның негізгі функциясы – файлдық жүйедегі өзгерістерді анықтап, осы өзгерістер туралы бағдарламаларға хабарлау арқылы файлдық жүйелерді кеңейту болып табылады. Бағдарламалар файлдық жүйедегі өзгерістерді үнемі тексерудің орнына, файлдық жүйеде өзгерістер болғанда ядродан хабар алуға тіркеле алады. Бағдарламалар бақылауға алынатын каталогтар мен хабарланатын өзгерістердің түрлерін таңдай алады. Оның маңызды қолданылуының бірі – Beagle сияқты жұмыс үстеліндегі іздеу құралдары. Оның мүмкіндігі арқасында файлдық жүйені әрбір бірнеше минут сайын сканерлеусіз, өзгертілген файлдарды қайта индекстеуге болады, бұл өте тиімсіз болар еді. Ядро файл өзгергенін тікелей хабарлағандықтан, белсенді түрде іздеудің қажеті болмайды. Осылайша, Beagle және осындай құралдар өте аз жүйелік ресурстарды қолданып, тек бір секундқа жуық уақытта қайта индекстеуді жүзеге асыра алады (dnotify осылайша мұндай бағдарламаларды тиімді пайдалануға мүмкіндік береді; жүйелік өнімділікті айтарлықтай төмендетіп, пайдаланушыға арналған мүмкіндіктерді ұсынатын демонды дистрибьюторлар көбінесе қабылдамайды).

Шектеулер

dnotify тек каталогтарды ғана қадағалай алады. dnotify пайдаланушы қадағалауды қалайтын каталогқа ашық файл дескрипторын сақтап тұруды талап етеді. Біріншіден, каталог ашық болғандықтан, ол орналасқан құрылғыны ажырату мүмкін емес. Екіншіден, қадағалау тізімі процестің ашық файлдар санының лимитімен шектеледі.