
- •Список вопросов к гос. Экзамену по курсу «Операционные системы»
- •Обзор развития ос.
- •Назначение и функции ос.
- •Классификация процессов.
- •Ресурсы вычислительной системы. Классификация ресурсов.
- •Прерывания. Порядок их обработки.
- •Архитектура ос. Привилегированный режим. Архитектура ос.
- •Привилегированный режим.
- •Структура ядра ос. Микроядерная архитектура ядра ос. Структура ядра ос
- •Микроядерная архитектура ос.
- •Планирование и диспетчеризация процессов. Дескрипторы задач.
- •Дисциплины диспетчеризации.
- •Память и отображения. Виртуальное адресное пространство. Управление оперативной памятью.
- •Пространства и отображения, виртуальное адресное пространство.
- •Логические имена
- •Распределение оп разделами. Распределение разделами.
- •Распределение фиксированными разделами
- •Распределение разделами с подвижными границами
- •Распределение подвижными разделами
- •Сегментная организация памяти. Сегментная организация памяти.
- •Страничная организация памяти.
- •Свопинг. Его стратегии.
- •Сегментно-страничная организация памяти.
- •Проблемы синхронизации параллельных процессов.
- •Семафорные примитивы Дейкстры. Задача взаимного исключения.
- •Почтовые ящики.
- •Мониторы Хоара.
- •Методы борьбы с тупиками.
- •Тупики. Примеры тупиков. Условия существования тупиков. Понятие тупика, примеры тупиков, условия существования тупиков.
- •Задачи ос по управлению файлами и устройствами. Задачи ос по управлению файлами и устройствами
- •Файловые системы.
- •Процессор i86, режимы, регистры.
- •Процессор i86, дескрипторы сегментов, виртуальное адресное пространство.
- •Процессор i86, организация памяти.
- •Процессор i86, кэширование.
- •Процессор i86, защита памяти, правила доступа к сегментам.
- •Процессор 80x86, система прерываний.
Привилегированный режим.
Ни одно приложение , при своём функционировании, не должно иметь возможности без ведома ОС получать ресурсы вычислительной системы. Поэтому, ОС должна иметь полномочия (привилегии) по распределению ресурсов. Обеспечение таких привилегий для ОС осуществляется за счёт средств аппаратной поддержки, которые поддерживают два режима работы вычислительной системы – пользовательскийипривилегированный (режим ядра). Так как ядро ОС выполняет основные её функции, именно оно должно работать в привилегированном режиме. В пользовательском режиме работают пользовательские программы и некоторые дискрезидентные утилиты из состава ОС. В пользовательском режиме запрещается выполнение некоторых инструкций (команд), связанных с распределением ресурсов вычислительной системы (переключение процессора, управление вводом/выводом, механизмы распределения и защиты памяти и т. д.). Переход из пользовательского режима в привилегированный инициируется соответствующим системным вызовом из составаAPI, а осуществляется аппаратными средствами. Наличие привилегированного режима функционирования вычислительной системы повышает её устойчивость и надёжность, так как распределение ресурсов происходит под жёстким контролем ОС. С другой стороны, наличие привилегированного режима несколько снижает производительность системы, что видно из рис.
Польз. Режим Польз. режим
Режим ядра
t1t2
Потеря производительности связана с тем, что на переход из пользовательского режима в привилегированный и обратно тратится определённое время ( интервалы t1 иt2). Чем больше в пользовательской программе системных вызовов, тем больше таких переходов.
Структура ядра ос. Микроядерная архитектура ядра ос. Структура ядра ос
Ядро ОС имеет многослойный характер. Каждый слой содержит определённое число модулей, которые выполняют однотипные, в некотором смысле, функции. С определённой долей условности, можно выделить пять таких слоёв. Модули более высокого уровня, при своём выполнении, обращаются к модулям, находящимся в слое с более низким уровнем. Рассмотрим эти слои, начиная с самого внутреннего из них.
Средства аппаратной поддержки ОС.
В данный слой входят аппаратные средства вычислительной системы, которые согласованно с программными средствами ОС выполняют ряд операций, связанных с распределением ресурсов ( переключение в привилегированный режим, переключение и сохранение контекста процессов, средства защиты памяти и т. п.).
2. Машиннозависимые компоненты ОС.
В данный слой, входят модули, отражающие специфику аппаратной платформы, её архитектуру. Как правило, код таких модулей, полностью или частично, содержит инструкции (команды), характерные для конкретной архитектуры платформы. Наличие такого слоя позволяет проектировать остальные модули ядра ОС как машиннонезависимые, что повышает расширяемость ОС.
3. Базовые механизмы ядра.
Модули этого слоя выполняют простые (примитивные) операции ( переключение процессов, перемещение станиц в оперативной памяти, диспетчеризация прерываний).
4. Менеджеры ресурсов.
Это сложные, имеющие большой объём кода, модули, решающие задачи управления основными ресурсами ОС. К таким задачам, прежде всего, относятся задачи учёта и планирования различных видов ресурсов вычислительной системы. При своём выполнении, такие модули взаимодействуют друг с другом, передавая в нужный момент управление.
5. Интерфейс системных вызовов.
Это модули из состава API, они непосредственно взаимодействуют с пользовательскими программами и приложениями. Если приложение хочет обратиться к ОС, с целью получить в своё распоряжение некоторый ресурс вычислительной системы, оно выдаёт соответствующий системный вызов.