Демоны bdflush и kupdated

Демоны bdflush и kupdated

В ядрах серий до 2.6 работа потоков pdflush выполнялась двумя другими потоками ядра bdflush и kupdated.

Поток пространства ядра bdflush выполнял фоновую обратную запись измененных страниц, когда количество доступной памяти становилось достаточно малым. Также был определен ряд пороговых значений, аналогично тому как это делается для демона pdflush. Демон bdflush возвращался к выполнению с помощью функции wakeup_bdflush(), когда количество свободной памяти становилось меньше этих пороговых значений.

Между демонами bdflush и pdflush существует два главных отличия. Первое состоит в том, что демон bdflush был всего один, а количество потоков pdflush может меняться динамически. Об этом более подробно будет рассказано в следующем разделе. Второе отличие состоит в том, что демон bdflush работал с буферами, он записывал на диск измененные буферы. Демон pdflush работает со страницами, он записывает на диск целые измененные страницы памяти. Конечно, страницы памяти могут соответствовать буферам, но единицей ввода-вывода является целая страница памяти, а не один буфер. Это дает преимущество, поскольку работать со страницами памяти проще, чем с буферами, так как страница памяти — более общий и более часто используемый объект.

Так как демон bdflush выполнял обратную запись, только когда количество свободной памяти очень сильно уменьшалось или количество буферов было очень большим, то был введен поток ядра kupdated, который периодически выполнял обратную запись измененных страниц памяти. Он использовался для целей, аналогичных функции wb_kupdate() демона pdflush.

Потоки bdflush и kupdated и их функциональность сейчас заменены потоками pdflush.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

1.7.6. Порты и демоны

Из книги Linux-сервер своими руками автора Колисниченко Денис Николаевич

1.7.6. Порты и демоны Дальнейшее изложение материала построено, исходя из того, что вы уже знаете, что такое сервер и какие службы вам придется настраивать. В пункте Как устроена книга (п. 1.5) было подробно описано, в каких главах описана настройка той или иной службы. Здесь же


7.2.6.3. Системные демоны и традиционные сигналы

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

7.2.6.3. Системные демоны и традиционные сигналы Многие широко известные системные демоны в качестве сигнала для повторной инициализации (т.е. перезагрузки их конфигурационных файлов) принимают сигнал SIGHUP (первоначально данный сигнал отправлялся программам при разрыве


7.2.6.3. Системные демоны и традиционные сигналы

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

7.2.6.3. Системные демоны и традиционные сигналы Многие широко известные системные демоны в качестве сигнала для повторной инициализации (т.е. перезагрузки их конфигурационных файлов) принимают сигнал SIGHUP (первоначально данный сигнал отправлялся программам при разрыве


Демоны

Из книги Операционная система UNIX автора Робачевский Андрей М.

Демоны Демоны — это неинтерактивные процессы, которые запускаются обычным образом — путем загрузки в память соответствующих им программ (исполняемых файлов), и выполняются в фоновом режиме. Обычно демоны запускаются при инициализации системы (но после инициализации


Глава 13 Процессы-демоны и суперсервер inetd

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард

Глава 13 Процессы-демоны и суперсервер inetd 13.1. Введение Демон (daemon) — это процесс, выполняющийся в фоновом режиме и не связанный с управляющим терминалом. Системы Unix обычно имеют множество процессов (от 20 до 50), которые являются демонами, работают в фоновом режиме и


Демоны syslogd и klogd

Из книги Разработка ядра Linux автора Лав Роберт

Демоны syslogd и klogd В стандартной системе Linux для извлечения сообщений ядра из буфера используется специальный демон пространства пользователя klogd, который направляет эти сообщения в файл журнала системных сообщений. Для чтения системных сообщений программа klogd может