|
|||
Управление виртуальной памятьюУправление виртуальной памятью
В многозадачном режиме кроме активного процесса имеются приостановленные, такие процессы могут быть выгружены на диск. В данном случае в распоряжение программ предоставляется виртуальная оперативная память. Использование виртуальной памяти осуществляется за счет модулей ос и аппаратных схем процессора. В настоящее время существует 3 схемы распределения виртуальной памяти. 4.1 Страничный способ распределения виртуальной памяти
При таком способе все фрагменты программы, на которые она разбивается получаются одинаковыми и называются страницами. Оперативная память разбивается на физические страницы, а программа на виртуальные. Часть виртуальных страниц программы размещается в оперативной памяти, а часть на внешней, на диске. При обращении к виртуальной странице, не оказавшейся в данный момент в оперативной памяти, возникает прерывание и управление передается диспетчеру оперативной памяти. Если физической страницы нет (свободной), то диспетчер памяти выбирает для замещения ту страницу на которой не было ссылки на протяжении длительного времени. Преимущества: устранение фрагментации памяти, т.е. страницы одинакового размера. Недостатки: программа разбивается на страницы случайно, без учета логической связи, это приводит к потерям времени на межстраничные переходы. В ОС Windows XP, Vista, 7 (64Bit) память может быть увеличена до 4 Гб, а размер страниц до 4 Кб. 4.2 Сегментный способ распределения виртуальной памяти
Виртуально – адресное пространство делится на сегменты с учетом смыслового значения. Отдельный сегмент может представлять собой подпрограмму, массив данных. При загрузке процесса в оперативную память, помещается только часть сегментов, причем подыскивает ос непрерывный участок определенного размера. Если в оперативной памяти недостаточно места для загрузки сегмента, то часть сегмента из оперативной памяти выгружается на диск в файл подкачки. ОС (в частности диспетчер памяти) подбирает для выгрузки сегмент, который не использовался наиболее длительное время. В оперативной памяти для каждого сегмента хранятся информационные структуры, на основе которых ос выбирает сегменты для выгрузки. - о месте расположения сегмента (в оперативной памяти или на жестком диске); - права доступа; - отметка об обращении к сегменту (т.е. давно или недавно использовался сегмент). Преимуществом является то, что это был первый способ распределения с использованием файла подкачки, так же можно было устанавливать права доступа к сегментам. Недостатки: потеря процессорного времени на загрузку сегментов и на обработку информационных структур, информационные структуры требовали для себя памяти, дефрагментация памяти. 4.3 Сегментно-страничный способ распределения виртуальной памяти
В данном способе программа разбивается на логически-законченные части, а сегменты на страницы и адрес страницы состоит из номера сегмента, при этом сегмент при загрузке в оперативную память размещается целиком, но страницы одного сегмента могут занимать несмежные страницы. Преимущества: сокращается время для загрузки страниц, но требуются вычислительные ресурсы для хранения информационных структур – способ используется в дорогих ос.
|
|||
|