Главная Обратная связь

Дисциплины:






II. Подсистема управления памятью



Типы адресов:

- Символьные имена (имена переменных)

- Виртуальные адреса (логические)

- Физические адреса

Вся память, выделенная в программе, называется виртуальным адресным пространством.

Адресное пространство мб организованно по-разному:

- Плоская модель (flat) – адрес задается одним числом

- Модель «сегмент - смещение» (segment - offset) – смещение это адрес относительно начала сегмента, под сегментом понимается базовый адрес.

Номер сегмента хранится в спец.внутренних ячейках процессора (в сегментных регистрах) записывается туда программно.

- Многокомпонентные модели

Существует 2 подхода к преобразованию виртуальных адресов в физические:

1. В момент загрузки проги в память все адреса, упоминаемые в командах, заменяются на физические

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

Вся память выделенная процессору, называется образом процесса.

 

 

Алгоритмы распределения памяти.

Алгоритмы делятся на 2 класса:

- С использованием внешней памяти

- Без использования внешней памяти

Алгоритмы без использования внешней памяти:

1. Распределение динамическими разделами

2. Распределение перемещаемыми разделами

При загрузке нового процесса фрагменты памяти могут перемещаться с изменением содержащихся в них адресов.

Алгоритмы с использованием внешней памяти делятся на три группы:

1. Страничное распределение

Страница – фрагмент памяти, фиксированного размера, сравнительно небольшой.

По номеру страницы легко найти адрес

2. Сегментное распределение

Сегмент – фрагмент памяти произвольного размера, для которого учитывается смысловое значение данных.

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

Вся память делится на сегменты, а сегменты – на страницы. Сегмент мб размера, кратного странице.

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

Главная таблица размещения GDT и ее адрес находится в регистре процессора GDTR (регистр глобал. таблицы дескрипт). Таблица, принадлежащая процессору называется LDT, ее адрес загружается в регистр LDTR, когда процесс активен.

Виртуализация памяти может подходить на основе одного из двух подходов:

1. Подход – свопинг

Образы процессов выгружаются на диск и обратно целиком.

2. Подход – виртуальная память

Между памятью и диском перемещаются фрагменты образов.

 

III. Подсистема ввода/вывода



Основные компоненты это драйверы и файловая система.

Задачи по управлению файлами и устройствами:

1. Организация параллельной работы, устройств ввода/вывода и процессора.

DMA – прямой доступ к памяти.

2. Согласование скоростей обмена и кэширование данных.

Широко используется буферизация в оперативной памяти.

3. Разделение устройств и данных между процессами

Решается с помощью очередей и таблиц, которые поддерживает ос.

4. Обеспечение удобного логического интерфейса между устройствами и остальной частью системы.

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

6. Динамическая загрузка и выгрузка драйверов.

7. Поддержка нескольких файловый систем.

8. Поддержка синхронных и асинхронных операций ввода/вывода.

Специальные файлы

Все устройства делятся на два класса: блочные и символьные. Символьные устройства работают по принципу потоков данных. У блочных устройств есть адресуемость.

Спец файл – это виртуальный объект, связанный с некоторым устройством ввода/вывода.

Интерфейс взаимодействия со спец.файлом такой же как и с обычным, т.е. чтение – запись.

Логическая организация файловой системы

Файл – это именованная область внешней памяти, в которую можно записывать и из которой можно считывать данные.

Файловая система – часть ос включающая: 1) совокупность всех файлов на диске; 2) наборы структур данных, используемые для управления файлами; 3) комплекс системного по, реализующего различные операции над файлами.

Основные функции ФС:

· Именование файлов (привязка имени к файлу)

· Предоставление программного интерфейса для приложений (набор функций)

· Отображение логической модели ФС на физическую организацию хранилища данных

· Устойчивость к сбоям питания, ошибкам аппаратных и программных средств

Средства блокировки файла и его частей, согласование копий.

· Защита файлов одного пользователя от несанкционированного доступа другого.

 

Типы файлов:

1. Обычные файлы (сборища инфо, зависят от проги, создающая этот файл)

2. Каталоги (инфо о др файлах в каталогах)

3. Специальные (фиктивные)

Имена файлов:

Ø Простое символьное имя (само имя файла без указателя пути, идентифицирует файл в пределах каталога)

Ø Полное имя (полный путь к файлу, цепочка простых символьных имен всех каталогов, в которых лежит этот файл)

Ø Относительное имя (определяется через понятие «текущий каталог»)

В некоторых системах существуют псевдофайлы (псевдонимы), у которых короче путь.

Объединение файловых систем, находящихся на разных устройствах называется монтированием.

Атрибуты файлов:

Понятие файл вкл помимо данных и имени еще и атрибуты, это инфо о свойствах файлов.

1. Тип файла

2. Владелец файла (номер, идентификатор пользователя, создавшего файл)

3. Создатель файла

4. Инфо о разрешенных операциях

5. Времена создания, доступа, изменения

6. Текущий размер файла (храниться отдельно от содержимого)

7. Признак:

- «R» - только для чтения,

- «» - скрытый файл,

- «» - архивный файл,

- «» - системный файл,

- Двоичный/символьный файл,

- Временный файл

 

Атрибуты хранятся либо в каталогах либо в спец файлах.

 





sdamzavas.net - 2019 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...