Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
(Методичка) по курсовой работе.docx
Скачиваний:
5
Добавлен:
15.02.2021
Размер:
981.21 Кб
Скачать

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

  1. Архитектура ОС. Ядро и вспомогательные модули.

  2. Классическая архитектура ОС.

  3. Микроядерная архитектура ОС. Монолитные и многослойные ОС.

  4. Многослойная модель ядра ОС.

  5. ОС пакетной обработки информации.

  6. ОС разделения времени.

  7. ОС реального времени.

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

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

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

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

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

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

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

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

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

  1. Функции ОС по управлению процессами.

  2. Процессы и потоки, состояния потока.

  3. Планирование и диспетчеризация потоков, моменты перепланировки.

  4. Алгоритм планирования, основанный на квантовании.

  5. Приоритетное планирование.

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

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

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

  2. Планирование в ОС реального времени.

  3. Синхронизация процессов и потоков: цели и средства синхронизации.

  4. Ситуация состязаний (гонки). Способы предотвращения.

  5. Способы реализации взаимных исключений: блокирующие переменные, критические секции, семафоры Дейкстры.

  6. Взаимные блокировки. Условия, необходимые для возникновения тупика.

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

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

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

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

  11. Синхронизирующие объекты ОС: системные семафоры, мьютексы, события, сигналы.

  12. Организация обмена данными между процессами (каналы, разделяемая память, почтовые ящики, сокеты).