Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС / Оригинальные презентации / МУ и задания на КР по ОС заочники .doc
Скачиваний:
147
Добавлен:
24.05.2017
Размер:
971.26 Кб
Скачать

Вопросы, подлежащие изучению:

  1. Классическая архитектура ОС ([1], с. 70-77).

  2. Микроядерная архитектура ОС ([1], с. 87-92).

  3. Многослойная модель ядра ОС([1], с. 77-81) .

  4. ОС пакетной обработки информации ([1], с. 103-106).

  5. ОС разделения времени([1], с. 106-107) .

  6. ОС реального времени ([1], с. 107-109).

Вопросы для самоконтроля

  1. В чем состоят отличия в работе процессора в привилегированном и пользовательском режиме?

  2. Можно ли, анализируя двоичный код программы, сделать вывод о невозможности ее выполнения в пользовательском режиме?

  3. Опишите порядок взаимодействия приложений с ОС, имеющей микроядерную архитектуру.

  4. Может ли программа, эмулируемая на «чужом» процессоре, выполняться быстрее, чем на «своем»?

1.3 Управление процессами

Подсистема управления процессами и потоками занимается их созданием и удалением, поддерживает взаимодействие между ними, а также распределяет процессорное время между несколькими одновременно существующими в системе процессами и потоками. Основной задачей мультипрограммной ОС является распределение ресурсов между процессами и потоками – двумя базовыми единицами работы ОС. В ОС в которых существуют как процессы, так и потоки, процесс рассматривается ОС как заявка на потребление всех видов ресурсов, кроме одного – процессорного времени. Процессорное время распределяется между другими единицами работы – потоками, представляющими собой последовательности команд.

Для синхронизации процессов и потоков, решающих общие задачи и совместно использующих ресурсы, в ОС имеются специальные средства: критические секции, семафоры, мьютексы, события, таймеры. Отсутствие синхронизации может приводить к таким нежелательным последствиям, как тупики и гонки.

Вопросы, подлежащие изучению:

  1. Процессы и потоки, планирование и диспетчеризация, состояния потока([1], с. 112-122) .

  2. Алгоритм планирования, основанный на квантовании ([1], с. 127-130).

  3. Приоритетное планирование([1], с. 130-133) .

  4. Алгоритмы планирования ОС пакетной обработки: «первым пришел –

первым обслужен», «кратчайшая задача – первая», «наименьшее оставшееся время выполнения».

  1. Алгоритмы планирования в интерактивных ОС: циклическое, приоритетное, гарантированное, лотерейное, справедливое планирование.

  2. Планирование в ОС реального времени ([1], с. 135-138).

  3. Синхронизация процессов и потоков: цели и средства синхронизации ([1], с.158-160) .

  4. Ситуация состязаний (гонки). Способы предотвращения([1], с. 160-166) .

  5. Семафоры Дийкстры ([1], с. 166-16847).

  6. Взаимные блокировки. Условия, необходимые для возникновения тупика([1], с. 168-171, ([], с. 43-47)) .

  7. Обнаружение взаимоблокировки при наличии одного ресурса каждого типа.

  8. Обнаружение взаимоблокировок при наличии нескольких ресурсов каждого типа.

  9. Предотвращение взаимоблокировок. Алгоритм банкира для одного вида ресурсов.

  10. Предотвращение взаимоблокировок. Алгоритм банкира для нескольких видов ресурсов.

  11. Синхронизирующие объекты ОС: системные семафоры, мьютексы, события, сигналы ([1], с. 171-175).

Вопросы для самоконтроля

  1. Поясните употребление терминов «нить», «программа», «процесс», «задача», «поток».

  2. Мультипрограммные ОС принято разделять на системы реального времени, системы разделения времени, системы пакетной обработки. С другой стороны, алгоритмы планирования могут быть основаны на квантовании, абсолютных и относительных приоритетах. Предложите для каждого из перечисленных типов ОС, наиболее подходящий алгоритм планирования.

  3. Являются ли синонимами термины «планирование» процессов и «диспетчеризация» процессов?