- •1. Понятие и структура ос. Эволюция вычислительных и ос. Основные функции ос
- •Первый период (1945–1955 гг.)
- •Второй период (1955 г.– нач. 60-х)
- •Третий период (нач. 60-х – 1970 г.)
- •Четвертый период (с 1970 – 80 гг.) Персональные компьютеры.
- •Пятый период (с 1980 г. По н.В.)
- •3. Мультипрограммирование. Особенности реализации мультипрограммирования в системах пакетной обработки, разделения времени, реального времени, с мультипроцессорной обработкой
- •В системах пакетной обработки
- •В системах разделения времени
- •В системах реального времени
- •4.1. Различают симметричную и ассиметричную архитектуру таких систем
- •4.2. По способу организации процесса:
- •4. Роль прерываний при мультипрограммировании.
- •5. Понятие процесса и потока. Создание процессов и потоков. Управляющие структуры процессов и потоков
- •6. Контекст процесса и его состояния
- •7. Планирование процессов и потоков: критерии, виды, алгоритмы планирования
- •8. Параллельные процессы, синхронизация процессов, пример необходимости синхронизации, критическая секция.
- •9. Механизмы синхронизации: блокирующие переменные, семафоры, мониторы.
- •1) Блокирующие переменные
- •2) Семафоры
- •10. Проблемы синхронизации(тупики) и способы их разрешения.
- •11. Механизмы межпроцессного взаимодействия (каналы, очереди сообщений, разделяемая память)
- •12. Управление памятью: задачи управления, типы адресации
- •13. Распределение памяти: общие принципы управления памятью в однопрограммных ос, распределение памяти фиксированными, динамическими, перемещаемыми разделами
- •14. Сегментное распределение памяти
- •15. Страничное распределение памяти
- •16. Особенности эффективного использования таблицы страниц: многоуровневые таблицы страниц, ассоциативная память, инвертированная таблица страниц, хеширование
- •17. Сегментно - страничное распределение памяти
- •18. Физическая организация жёсткого диска
- •19. Принципы построения файловой системы: интерфейс, функциональная схема, типовая структура файловой системы
- •20. Способы выделения дискового пространства. Управление дисковым пространством. Размер логического блока
- •21. Особенности организации некоторых файловых систем
- •Vfat (Virtual fat)
14. Сегментное распределение памяти
Суть: Программа разбивается на логические части – сегменты, каждому из которых выделяется память, что позволяет настроить права доступа к каждому сегменту и использовать «общие» сегменты. Снижается фрагментация.
Обращение к элементам программы происходит по имени сегмента (порядковый номер), которому соответствует некоторый адрес, с которого данный сегмент начинается, и смещения относительно начала этого сегмента (прибавляется к адресу начала сегмента).
Таким образом виртуальный адрес будет состоять из двух частей – номера сегмента и смещения
Вся информация о текущем размещении сегментов в памяти сводится в таблицу сегментов (таблица дескрипторов сегментов задачи), формируемую для каждого исполняющегося процесса. Если сегмент находится в ОП, то для него, бит присутствия P выставляется в 1.
Хранение длины сегмента, позволяет избежать наложения сегментов и попытки адресации за пределы сегмента.
При передаче управления следующей задаче ОС должна занести в соответствующий регистр адрес таблицы дескрипторов сегментов этой задачи. Сама таблица дескрипторов сегментов, в свою очередь, также представляет собой сегмент данных, который обрабатывается диспетчером памяти ОС. При таком подходе появляется возможность размещать в ОП не все сегменты задачи, а только задействованные на данный момент.
Благодаря этому, с одной стороны, общий объем виртуального адресного пространства задачи может превосходить объем физической памяти компьютера, на котором эта задача будет выполняться, с другой стороны, даже если потребности в памяти не превосходят имеющуюся физическую память, можно размещать в памяти больше задач, поскольку любой задаче, как правило, все ее сегменты единовременно не нужны.
Решение проблемы замещения (определения того сегмента, который должен быть либо перемещён во внешнюю память, либо просто замещён новым) используются следующие дисциплины:
-
FIFO (First In First Out) первый пришёл – первый ушёл
-
LRU (Least Recently Used ) не используемый дольше других
-
LFU (Least Frequently Used) используемый реже других
-
Random-случайный выбор сегмента
15. Страничное распределение памяти
Метод обладает значительно меньшей фрагментацией памяти.
Суть: Программа разбивается на фрагменты – страницы равной величины, причем кратных степени двойки, что позволяет говорить о двухмерном адресном пространстве, в котором первая координата – номер страницы, вторая – номер ячейки внутри страницы (индекс). Количество битов, выделяемых под индекс, определяет размер страницы, а число битов выделяемых под номер страницы – потенциально доступный для программы объем виртуальной памяти. Отображение, осуществляемое во время исполнения сводится к отображению Pв в Pф и приписыванию к полученному значению битов адреса, задаваемых величиной i. При это, число виртуальных страниц не надо ограничивать числом физических, так как непоместившиеся страницы можно разместить во внешней памяти.
Говорят, что ОП разбивается на физические страницы, а программа на виртуальные.
Где Nвс – номер виртуальной страницы ; Nфс – номер физической страницы
При обращении к виртуальной странице, не оказавшейся в данный момент в ОП, возникает прерывание, и управление передается диспетчеру памяти, который должен найти свободное место. Обычно предоставляется первая же свободная страница. Если свободной физической страницы нет, то диспетчер памяти по одной из вышеупомянутых дисциплин замещения (LRU, LFU, FIFO, случайный доступ) определит страницу, подлежащую расформированию или сохранению во внешней памяти. На ее месте он разместит новую виртуальную страницу, к которой было обращение из задачи, но которой не оказалось в ОП.
В Windows NT, для того, что бы избавиться от аппаратной зависимости, используется принцип FIFO.
“+” – Минимальная фрагментация.
“-” :
-
существенные накладные расходы по трансляции виртуальной памяти.
-
Разбитие программы происходит без учета логических взаимосвязей, поэтому межстраничные переходы осуществляются чаще, чем межсегментные.