- •Вопросы для подготовки к экзамену по дисциплине «Операционные системы»
- •Тематический план
- •Лекция 1 (2/2) введение
- •В будущем:
- •Раздел 1. Основы теории операционных систем
- •Тема 1.1 Общие сведения об операционных системах
- •1. Системы пакетной обработки,
- •2.Системы разделения времени
- •3. Системы реального времени.
- •2. Мультипрограммирование в системах разделения времени
- •3. Мультипрограммирование в системах реального времени
- •Требования к ос
- •Тема 1.1 Общие сведения об операционных системах (продолжение)
- •Тема 1.2 Интерфейс пользователя
- •Тема 1.3 Операционное окружение
- •1. Основная ф-ция ос: ос как виртуальная машина
- •Раздел 2. Машинно-зависимые свойства
- •Тема 2.1 Архитектурные особенности модели микропроцессорной системы семейства Pentium.
- •С истемная магистраль данных (шина)
- •Оперативная память
- •5.1.1.2. Контроллеры.
- •5.1.1.3. Жесткий диск.
- •Центральный процессор
- •Характеристики процессора.
- •Тема 2.2 Обработка прерываний
- •Тема 2.3 Планирование процессов
- •Планировщик!!!!!!! Понятие вычислительного процесса и ресурса.
- •2. Основная ф-ция ос: Повышение эффективности использования компьютера за счет рационального управления его ресурсами.
- •Дисциплины диспетчеризации и алгоритмы планирования процессов
- •Алгоритмы планирования процессов
- •Тема 2.4 Обслуживание ввода-вывода
- •Основные понятия и концепции организации ввода/вывода в ос
- •Основные системные таблицы ввода/вывода
- •2. Таблица описания виртуальных логических устройств.
- •3. Таблица прерываний.
- •Очередь запросов ввода-вывода. Алгоритм обработки прерываний по вводу-выводу.
- •Тема 2.5 Управление памятью
- •Функции ос по управлению памятью.
- •Типы адресов.
- •Алгоритмы распределения реальной памяти.
- •Свопинг и виртуальная память. Методы распределения памяти с использованием дискового пространства
- •Свопинг
- •Страничное распределение
- •Сегментное распределение
- •Сегментно-страничное распределение
- •Раздел 3. Машинно-независимые свойства операционных систем
- •Тема 3.1 Работа с файлами
- •Тема 3.2 Планирование заданий
- •Тема 3.3 Распределение ресурсов
- •Средства синхронизации и взаимодействия процессов
- •Синхронизация процессов на основе семафорных операций
- •1. Двоичный семафор
- •2. Универсальный семафор (считающий семафор)
- •Тупики и методы борьбы с ними
- •1. Граф распределения ресурсов
- •3. Вычислительные схемы
- •Тема 3.4 Защищенность и отказоустойчивость операционных систем
- •Раздел 4. Работа в операционных системах dos и windows 2000
- •Тема 4.1 Структура операционной системы
- •Практическая работа №1 Изучение структуры операционной системы Windows 2000.
- •Тема 4.2 Интерфейс пользователя
- •Тема 4.3 Организация хранения данных
- •Тема 4.4 Средства управления и обслуживания
- •Тема 4.5 Утилиты операционной системы
- •Тема 4.6 Поддержка приложений других операционных систем
- •Раздел 5. Инсталляция и конфигурирование ос. Восстановление
- •Тема 5.1. Инсталляция и настройка ос.
- •Практическая работа №19 «Конфигурирование системы. Подключение новых устройств.»
- •Тема 5.2. Восстановление системы.
- •Практическая работа №20 «Работа с программами резервного копирования»
Основные системные таблицы ввода/вывода
Каждая ОС имеет свои таблицы ввода/вывода, их состав (количество и назначение каждой таблицы) может сильно отличаться. В некоторых ОС вместо таблиц создаются списки, хотя использование статических структур данных для организации ввода/вывода, как правило, приводит к большему быстродействию.
Исходя из принципа управления вводом/выводом через супервизор ОС и учитывая, что драйверы устройств ввода/вывода используют механизм прерываний для установления обратной связи центральной части с внешними устройствами, можно сделать вывод о необходимости создания по крайней мере трех системных таблиц:
1. Таблица оборудования (или список) (equipment table),
Содержит информацию обо всех устройствах ввода/вывода, подключенных к ВС.
Каждый элемент этой таблицы называется UCB (unit control block, блок управления устройством ввода/вывода). Каждый элемент UCB таблицы оборудования, содержит следующую информацию об устройстве:
тип устройства, его конкретная модель, символическое имя и характеристики устройства;
как это устройство подключено (через какой интерфейс, к какому разъему, какие порты и линия запроса прерывания используются и т. д.);
номер и адрес канала (и подканала), если такие используются для управления устройством;
указание на драйвер, который должен управлять этим устройством, адрес секции запуска и секции продолжения драйвера;
информация о том, используется или нет буферирование при обмене данными с этим устройством, «имя» (или просто адрес) буфера, если такой выделяется из системной области памяти;
установка тайм-аута и ячейки для счетчика тайм-аута; а состояние устройства;
поле указателя для связи задач, ожидающих устройство, и, возможно, много еще каких сведений.
2. Таблица описания виртуальных логических устройств.
Предназначена для реализации еще одного принципа виртуализации устройств ввода/вывода — независимости от устройства. Желательно, чтобы программист не был озабочен учетом конкретных параметров (и/или возможностей) того или иного устройства ввода/вывода, которое установлено (или не установлено) в компьютер. Для него должны быть важны только самые общие возможности, характерные для данного класса устройств ввода/вывода, которыми он желает воспользоваться. Например, принтер должен уметь выводить (печатать) символы или графическое изображение. А накопитель на магнитных дисках — считывать или записывать по указанному адресу порцию данных. Хотя чаще всего программист и не использует прямую адресацию при работе с магнитными дисками, а работает на уровне файловой системы. Однако в таком случае уже разработчики файловой системы не должны зависеть от того, накопитель какого конкретного типа и модели, а также какого производителя используется в данном конкретном компьютере. Важным должен быть только сам факт существования накопителя, имеющего некоторое количество цилиндров, головок чтения/записи и секторов на дорожке магнитного дискa. Упомянутые значения количества цилиндров, головок и секторов должны быть взяты из элемента таблицы оборудования. При этом для программиста также не должно иметь значения, каким образом то или иное устройство подключено к вычислительной системе, а не только какая конкретная модель устройства используется. Поэтому в запросе на ввод/вывод программист указывает именно логическое имя устройства. Действительное устройство, которое сопоставляется виртуальному (логическому), выбирается супервизором с помощью таблицы, о которой мы сейчас говорим. Итак, способ подключения устройства, его конкретная модель и соответствующий ей драйвер содержатся в уже рассмотренной таблице оборудования. Но для того, чтобы связать некоторое виртуальное устройство, использованное программистом при создании приложения с системной таблицей, отображающей информацию о том, какое конкретно устройство и каким образом подключено к компьютеру, используется таблица описания виртуальных логических устройств.