В портале Duetgroup Вы будете проинформированы о технологии и программирования на базе Linux.
А также о комплектации программ, о процессе разработки ПО, о скорости обработки данных и решении практических задач.

Обращение к сегменту

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