Системные демоны
Категория: Процессы-демоны | Автор: admin | 2-07-2010, 09:59 | Просмотров: 3450

Ряд системных задач, например управление виртуальной памятью и синхронизация дисковых кэш-буферов, находится в ведении демонов, а не ядра. Системный администратор не может вмешиваться в работу этих демонов.

 

Демон замещения страниц

 

Реализация данного демона и его функционирование зависят от конкретной системы. Он называется pageout в Solaris, vhand в HP-UX, kpiod в Red Hat и pagedaemon во FreeBSD.

Этот демон является частью системы управления виртуальной памятью. При обращении к странице виртуальной памяти система проверяет таблицу и определяет, находится ли страница в данный момент в оперативной памяти. Если ее там нет, то выдается сообщение об ошибке и вызывается демон замещения, который переносит страницу в память из области подкачки. Если свободных физических страниц нет, демон освобождает место, переписывая какую-нибудь страницу в раздел подкачки и корректируя соответствующие элементы таблицы страниц.

 

Демон подкачки

 

Этот демон называется swapper во FreeBSD и HP-UX и kswapd в Linux.

Когда одновременно работает много процессов, система тратит массу времени на обработку ошибок, возникающих из-за отсутствия свободных страниц, потому что каждый процесс использует определенное количество страниц, к которым регулярно обращается. Такая перегрузка системы управления виртуальной памятью серьезно ухудшает производительность системы.

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

Механизм подкачки был изобретен в те времена, когда оперативная память была относительно дорогой. Его полезность в современных компьютерных системах сомнительна. Тем не менее он по-прежнему поддерживается в большинстве систем.

 

Демон синхронизации файловых систем

 

Демон синхронизации каждые 30 секунд выполняет системный вызов sync, который инициирует запись на диск всех модифицированных дисковых блоков, включая суперблоки файловых систем, таблицы индексных дескрипторов и буферизованные блоки данных. Такая операция минимизирует ущерб, наносимый крахом системы.

 

 

В большинстве систем этот демон называется update, но в HP-UX он носит имя syncer, а в Solaris — fsflush.



 (голосов: 0)
Версия для печати | Комментариев: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.


 
Логин
Пароль
 

 
Locations of visitors to this page