- •1) Что понимают под архитектурой, структурой и составом ос?
- •2) Каков типовой состав ос?
- •3) Представьте классическую архитектуру ос (на основе ядра), поясните состав и функции ядра и вспомогательных модулей ос.
- •4) Какие режимы, обеспечивающие привилегии ос, должна поддерживать аппаратура компьютера?
- •5) Какая задержка переключений процессора характерна для классической архитектуры ос?
- •6) Изобразите многослойную структуру ос и поясните ее основные особенности.
- •7) Какие действия выполняет ос при порождении процесса?
- •8) Что такое «описатель (дескриптор) процесса»?
- •9) Что такое «описатель (дескриптор) потока»?
- •10) Поясните суть и основные типы планирования потоков.
- •11) Чем динамическое планирование потоков отличается от статического?
- •12) Поясните суть и порядок диспетчеризации потоков.
- •13) Как организуются и переупорядочиваются очереди потоков?
- •14) Чем различаются вытесняющие и невытесняющие алгоритмы планирования?
- •15) Поясните особенности алгоритмов планирования, основанных на квантовании.
- •16) Что такое «приоритет потока» и каким он бывает?
- •17) Чем динамические приоритеты потоков отличаются от статических?
- •18) Опишите схему назначения приоритетов в ос Windows nt.
- •19) Опишите смешанный алгоритм планирования в ос Windows nt.
- •20)Перечислите события, требующие перераспределения процессорного времени и поясните действия планировщика ос в каждом случае.
- •21) Опишите моменты перепланировки в среде ос рв.
- •22)Как осуществляются диспетчеризация и учёт приоритетов прерываний в ос?
- •23) Как работает диспетчер прерываний?
- •24)Как согласуется диспетчеризация прерываний с диспетчеризацией потоков?
- •25)Как организован диспетчер системных вызовов?
- •26) Опишите схему организации системных вызовов с диспетчером системных вызовов.
- •27)Опишите особенности и различия организации синхронных и асинхронных системных вызовов.
- •31)Что такое «критическая секция», «критические данные», «взаимное исключение» потоков.
- •32)Поясните суть использования блокирующих переменных.
- •33)Поясните суть использования семафоров.
- •34)Опишите пример использования семафоров при работе с буферным пулом записи/чтения.
- •36)Чем тупики отличаются от очередей?
- •37)Опишите идеи и средства выявления и устранения тупиков.
- •38)Поясните сложность синхронизации потоков разных процессов.
- •39)Какие методы используются в ос для разделения синхронизирующих объектов?
- •40)Какие обычные объекты ос могут использоваться как синхронизирующие и какие события переводят их в сигнальное состояние?
1) Что понимают под архитектурой, структурой и составом ос?
ОС как и любая другая сложная система должна иметь рациональную и понятную структуру, т.е. иметь модули с четко оговоренными правилами взаимодействия. Функциональная сложность ОС приводит к сложности ее архитектуры, под которой обычно понимается:
Структурная организация ОС на основе различных программных модулей
Логическая организация системы с точки зрения пользователя
В состав ОС обычно входят исполняемые и объектные модули стандартных форматов данной ОС, модули исходного текста программ, библиотеки разных типов, программные модули специального формата (загрузчик ОС, драйверы ввода-вывода), конфигурационные файлы, модули справочной системы и др.
2) Каков типовой состав ос?
Единой для всех ОС архитектуры не существует, но разработчики часто используют некоторые общие подходы к структурированию ОС.
Наиболее общие подходы делят ОС на 2 основные группы:
Ядро ОС(модули, выполняющие основные функции ОС)
Модули, решающие внутрисистемные задачи
Модули, обеспечивающие поддержку приложений
Вспомогательные модули
Утилиты
Системные обрабатывающие программы
Сервисные программы
Библиотеки процедур различного назначения
3) Представьте классическую архитектуру ос (на основе ядра), поясните состав и функции ядра и вспомогательных модулей ос.
Модуль ядра выполняет такие базовые функции ОС как управление процессами, памятью и др. и составляют сердцевину ОС, без которой она становится полностью неработоспособной. Такое ядро ОС называют монолитным.
В состав ядра входит:
Модуль, решающие внутрисистемные задачи
Например, переключение контекстов процессов, загрузка и выгрузка страниц, обработка прерываний. Все эти функции не доступны для приложений.
Модуль, обеспечивающий поддержку приложений
Создание прикладной программной среды. Приложения могут обращаться к ядру с запросами для выполнения тех или иных действий. Например, открытие или чтение файла, вывод графической информации и т.д.
Функции, выполняемые модулями ядра, являются наиболее часто используемыми функциями ОС, поэтому скорость их выполнения определяет производительность всей системы в целом.
Остальные модули ОС выполняют хотя и весьма полезные, но менее обязательные функции ОС. Выполняются в виде приложений или библиотек. Например, архивация дисков, работа с графикой.
4) Какие режимы, обеспечивающие привилегии ос, должна поддерживать аппаратура компьютера?
Обеспечить привилегии нельзя без специальных средств аппаратной поддержки, поэтому аппаратура ЭВМ должна поддерживать как минимум 2 режима работы:
1. UserMode(Пользовательский режим)
2. Kernel mode(Supervisormode) привилегированный режим
Тогда ОС и ее части работают в привилегированном режиме, а все приложения – в пользовательском режиме. Приложения подчинены ОС за счет запрета выполнения в пользовательском режиме некоторых критичных команд, связанных с переключением процессора с задачи на задачу, управлением УВВ, доступом к механизмам распределения и зашиты памяти.