Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Назначение виртуальной памяти




Назначение и основные функции ОС

Операционная система (ОС) - это комплекс программного обеспечения, предназначенный для снижения стоимости программирования, упрощения доступа к системе, повышения эффективности работы.

Цель создания операционной системы - получить экономический выигрыш при использовании системы, путем увеличения производительности труда программистов и эффективности работы оборудования

Функции операционной системы:

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

- выполнение операций ввода-вывода; в частности, в состав операционной системы входят программы обработки прерываний от устройств ввода-вывода, обработки запросов к устройствам ввода-вывода и распределения этих запросов между устройствами.

- управление памятью, связанное с распределением оперативной памяти между прикладными программами.

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

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

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

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

Реальный режим работы процессора

Режим работы процессора определяет некоторые важные характеристики выполнения:

– сколько памяти может адресовать процессор,

– как процессор транслирует логические адреса, формируемые программой, в физические адреса на шине,

– как процессор защищает доступ к памяти и портам ввода-вывода и предотвращает выполнение некоторых инструкций.

Защищенный режим работы процессора

В различных режимах процессор по-разному формирует физический адрес. Существует три этапа формирования физического адреса:

1. Формирование эффективного адреса: из логического адреса (база-индекс-смещение) процессор вычисляет эффективный адрес - расстояние от базового адреса текущего сегмента памяти.

2. Формирование линейного адреса: эффективный адрес складывается с базовым адресом сегмента, полученное значение является адресом в плоском (линейном) 4Гбайтном виртуальном пространстве.

3. Страничная трансляция адресов: линейное 4Гбайтное адресное пространство с помощью 4Кбайтных страниц отображается на физически присутствующие блоки памяти (физическое пространство).

Суть защищённого режима в следующем: программист и разрабатываемые им программы используют логическое адресное пространство, размер которого может составлять 16 мегабайт. Логический адрес преобразуется в физический адрес автоматически с помощью схемы управления памятью (MMU). Благодаря защищённому режиму, в памяти может храниться только та часть программы, которая необходима в данный момент, а остальная часть может храниться во внешней памяти (например, на жёстком диске). В случае обращения к той части программы, которой нет в памяти в данный момент, операционная система может приостановить программу, загрузить требуемую секцию кода из внешней памяти и возобновить выполнение программы. Следовательно, становятся допустимыми программы, размер которых больше объема имеющейся памяти, и пользователю кажется, что он работает с большей памятью, чем на самом деле.

Физический адрес формируется следующим образом. В сегментных регистрах хранится селектор, содержащий индекс дескриптора в таблице дескрипторов (13 бит), 1 бит, определяющий к какой таблице дескрипторов будет производиться обращение (к локальной или к глобальной) и 2 бита запрашиваемого уровня привилегий. Далее происходит обращение к соответствующей таблице дескрипторов и соответствующему дескриптору, который содержит начальный 24-битный адрес сегмента, размер сегмента и права доступа, после чего вычисляется необходимый физический адрес путём сложения адреса сегмента со смещением из 16-разрядного регистра.

Система прерываний в реальном режиме

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

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

Кроме того, некоторые прерывания зарезервированы для использования самим процессором - прерывания по ошибке деления, прерывания для пошаговой работы, немаскируемое прерывание и т.д.

Для обработки прерываний в реальном режиме процессор использует таблицу векторов прерываний. Эта таблица располагается в самом начале оперативной памяти, т.е. её физический адрес - 00000.

 

Сегментная и страничная адресация оперативной памяти

Суть концепции виртуальной памяти заключается в том, что адреса, к которым обращается выполняющий процесс, отделяются от адресов, реально существующих в первичной памяти. Первые называются виртуальными адресами, а вторые – реальными. Механизмы динамического преобразования адресов обеспечивают преобразование виртуальных адресов в реальные во время выполнения процесса. Все подобные системы обладают общим свойством: смежные адреса виртуального адресного пространства процесса необязательно будут смежными в реальной памяти, это свойство называют “искусственной смежностью”.

 

Назначение виртуальной памяти

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

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

Суть концепции виртуальной памяти заключается в том, что адреса, к которым обращается выполняющий процесс, отделяются от адресов, реально существующих в первичной памяти. Первые называются виртуальными адресами, а вторые – реальными. Механизмы динамического преобразования адресов обеспечивают преобразование виртуальных адресов в реальные во время выполнения процесса. Все подобные системы обладают общим свойством: смежные адреса виртуального адресного пространства процесса необязательно будут смежными в реальной памяти, это свойство называют “искусственной смежностью”.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...