Странично-сегментное распределение

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

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

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

Для каждого процесса операционная система создает отдельную таблицу сегментов процесса, в которой содержатся описатели (дескрипторы) всех сегментов процесса, в которых для каждого сегмента указывается:

· базовый адрес сегмента в оперативной памяти (начальный линейный виртуальный адрес сегмента в пространстве виртуальных адресов);

· размер сегмента;

· правила доступа к сегменту;

· признаки модификации, присутствия и обращения к данному сегменту, а также некоторая другая информация.

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

Достоинство: эффективное распределение памяти и возможность контроля прав и способа доступа к данным.

Недостатки: сложность реализации.

Свопинг.

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

Достоинство: простота реализации, надёжность.

Недостаток: неэффективное использование памяти, низкая производительность.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: