
- •Понятия «процесс» и «поток». Создание процессов и потоков. Состояния потока
- •Вытесняющие и невытесняющие алгоритмы планирования
- •Алгоритмы планирования, основанные на квантовании
- •Алгоритмы планирования, основанные на приоритетах
- •Системные вызовы
- •Цели и средства синхронизации. Необходимость синхронизации и гонки
- •Критическая секция
- •Блокирующие переменные
- •Семафоры
- •Функции ос по управлению памятью
- •Типы адресов
- •Алгоритмы распределения памяти
- •Распределение памяти с фиксированными разделами
- •Распределение памяти с динамическими разделами
- •Свопинг и виртуальная память
- •Страничное распределение
- •Сегментное распределение
- •Сегментно-страничное распределение
- •Иерархия запоминающих устройств
- •Задачи ос по управлению файлами и устройствами
- •Многослойная модель подсистемы ввода-вывода
- •Многоуровневые драйверы
- •Цели и задачи файловой системы
- •Файловая система unix. Общая структура. Монтирование фс.
- •Имена файлов. Атрибуты файлов.
- •Структура магнитного дискового накопителя. Блоки (кластеры).
- •Безопасность ос. Основные виды угроз и аспекты безопасности ос. Принцип адекватности защиты.
- •Безопасность ос. Понятие сервисов и механизмов защиты ос. Сервисы идентификации и автентификации пользователей. Маркер доступа
- •Понятия «процесс» и «поток». Создание процессов и потоков. Состояния потока
Сегментно-страничное распределение
Виртуальное пространство процесса делится на сегменты, а каждый сегмент в свою очередь делится на виртуальные страницы, которые нумеруются в пределах сегмента. Оперативная память делится на физические страницы. Загрузка процесса выполняется операционной системой постранично, при этом часть страниц размещается в оперативной памяти, а часть на диске. Для каждого сегмента создается своя таблица страниц, структура которой полностью совпадает со структурой таблицы страниц, используемой при страничном распределении. Для каждого процесса создается таблица сегментов, в которой указываются адреса таблиц страниц для всех сегментов данного процесса. Адрес таблицы сегментов загружается в специальный регистр процессора, когда активизируется соответствующий процесс.
Иерархия запоминающих устройств
Память вычислительной машины представляет собой иерархию запоминающихся устройств, отличающихся средним временем доступа к данным, объемом и стоимостью хранения одного бита.
Уровни:
Нижний уровень представляет жесткий диск. Имеет большой объем, но скорость доступа является не высокой. Время доступа десятки мс.
Второй уровень – более быстродействующая и менее объемная оперативная память, реализуемая на относительно медленной динамической памяти 10-20нс. Объем – десятки байт.
Для хранения данных, которым необходимо обеспечить быстрый доступ, используются компактные быстродействующие ЗУ (запоминающие устройства) на основе статической памяти. Скорость 5-8 нс. Объем десятки-сотки киолбайт.
На верхнем уровне расположены внутренние регистры процессора, которые могут быть использованы для хранения данных. Их объем составляет несколько десятков байт, скорость 2-3 нс. Время доступа определяется быстродействием процессора. Объем десятки байт.
Чем больше объем устройства, тем менее быстродействующее это устройство (тем меньше скорость доступа). Более того, стоимость хранения данных в расчете на один бит, увеличивается с ростом быстродействия.
Альтернативой является кэш-память.
Кэш-память. Принцип действия кэш-памяти.
Кеш память или просто кэш – это способ совместного функционирования двух типов запоминающихся устройств, отличающихся временем доступа и стоимостью хранения данных, которые за счет копирования быстрого ЗУ, наиболее часто используемой информации из медленного ЗУ, позволяет с одной стороны уменьшить среднее время доступа к данным, а с другой стороны, экономить более дорогую быстродействующую память.
Неотъемлемым свойством кэш-памяти является свойство прозрачности для программ и пользователей.
Кэш-памятью часто называют не только способ организации двух типов запоминающих устройств, но и одно из устройств – быстро запоминающее устройство.
Кеширование – это универсальный метод, пригодный для ускорения доступа к оперативной памяти, к диску и к другим видом запоминающих устройств.
Принцип действия кэш-памяти.
Рассмотрим одну из возможных схем кэширования. Содержимое кеш-памяти представляет собой совокупность записей, обо всех выгруженных в нее элементах данных, из основной памяти.
Каждая запись об элементе включает в себя:
значение элемента данных
адрес, которые этот элементы имеет в основной памяти
дополнительную информацию, которая используется для реализации алгоритма замещения данных в кэше. Обычно включает в себя признак модификации и признак действительности данных.
В системах, оснащенных кэш памятью, каждый запрос к кэш памяти выполняется по следующему алгоритму:
Просматривается содержимое кэш памяти, с целью определения не находится ли нужные данные в кэш памяти. Кэш память не является адресуемой, поэтому поиск данных осуществляется по содержимому (значения поля адреса в оперативной памяти).
Если данные обнаруживаются в памяти, то они считываются из нее и результат передается в процессор.
Если нужных данных нет, то они вместе со своим адресом копируются из оперативной памяти в кэш и результат передается в процессор. При копировании данных может оказаться, что в кэш памяти нет свободного места, тогда убираются данные, которым последнее время было меньше всего обращений. Если вытесняемые данные были модифицированы, за время нахождения в кэш памяти, то они перезаписываются в оперативной памяти, если нет, то кэш память освобождается от них.