Инфо IT 24

IT блог, IT мышление

Алгоритмы управления процессом

Алгоритмы управления процессомЕсть и другие алгоритмы управления процессом выгрузки страниц. Например существует частотный алгоритм, при котором учитывается частота обращений к страницам памяти. Также может быть применен случайный выбор страниц для выгрузки.

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

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

Первые версии операционных систем семейства UNIX появились еще в 1970-е гг. Эти операционные системы предназначались для обслуживания машин класса PDP-11, которые имели 16-раз – рядную архитектуру и могли адресовать не более 64 Кбайт памяти. Из-за ограничений в вычислительных ресурсах разработчикам ОС UNIX пришлось использовать подход к управлению памяти на основе программных оверлеев. Оверлеи позволяют многократно использовать память за счет затирания неиспользуемой памяти и загрузки в нее новых блоков кода и данных. Это давало возможность в процессе работы системы, например, затирать код, выполнявшийся на этапе загрузки и инициализации операционной системы и не нужный на этапе работы системы, и использовать высвободившуюся память для других программ.

Статью опубликовал: i24TbloG

Метки:

Из каталога:

Программирование Linux Part G

Предыдущая статья:

Следующая статья: