Структура адресного пространства объекта


1. Ссылка на объект представляется в виде дескриптора.

2. Сегмент – это независимое адресное пространство. Понятие сегмента вводится из-за того, что у нас есть объект, который состоит из нескольких сегментов: 1-й сегмент – одно адресное пространство, 2-й сегмент – другое адресное пространство, 3-й сегмент содержит ссылки плюс сами данные. Т.е. мы должны ввести понятие сегмента, которое как-то отличается от понятия объекта.

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

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

Загрузка...