Страничное распределение (3)

 

 

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

 

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

 

Страничное распределение (4)

 

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

 

Если данная виртуальная страница находится в оперативной памяти,

то выполняется преобразование виртуального адреса в физический.

 

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


активизируется друго процесс из очереди готовых.


Параллельно


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