Читайте также:
|
|
Мьютексы. Обычно используются для управления доступом к данным.
Мьютекс – синхронизирующий объект как для процессов, так и для потоков. В каждый момент времени только один процесс (поток) имеет право обладания этим объектом.
События. Обычно используются для оповещения процессов о завершении некоторых действий. В каждой ОС реализованы свои механизмы передачи сообщений и обработки событий.
Функции ОС по управлению памятью.
Являются:
- отслеживание свободной и занятой памяти,
- выделение памяти процессам и освобождение памяти при завершении процессов,
- вытеснение процессов из оперативной памяти на диск, когда размеры основной памяти не достаточны для размещения в ней всех процессов, и возвращение их в оперативную память, когда в ней освобождается место,
- настройка адресов программы на конкретную область физической памяти,
- динамическое выделение памяти процессам;
- дефрагментация освобожденной динамической памяти;
- выделение памяти для создания служебных структур ОС (дескрипторы процессов и потоков, таблицы распределения ресурсов, буферы, синхронизирующие объекты и т.д.);
- защита памяти – выполняемый процесс не должен записывать или читать данные из памяти, назначенной другому процессу.
Типы адресов. Виртуальное адресное пространство
Для идентификации переменных и команд на разных этапах обработки программы операционной системой используются символьные имена, преобразуемые в виртуальные адреса и в итоге – в физические адреса
Виртуальное адресное пространство
Виртуальные адреса для различных программ назначаются транслятором независимо. Диапазон виртуальных адресов определяется программно-аппаратным обеспечением компьютера, в частности, разрядностью его схем адресации. Виртуальное адресное пространство – это совокупность всех возможных адресов из этого диапазона.
Подходы к преобразованию виртуальных адресов в физические
- Загрузка совместно с заменой виртуальных адресов физическими. Замена адресов выполняется один раз.
- Динамическое преобразование виртуальных адресов. Программа загружается в память в виртуальных адресах. Начальный адрес загрузки ОС фиксирует в специальном регистре. Преобразование виртуальных адресов в физические (также путем прибавления начального адреса загрузки) производится во время выполнения программы при обращении к памяти. Таким образом, некоторый виртуальный адрес пересчитывается в физический столько раз, сколько обращений по нему производится.
Дата добавления: 2014-12-19; просмотров: 78 | Поможем написать вашу работу | Нарушение авторских прав |