
- •1 Призначення та функції операційних систем.
- •2 Классификация ос:
- •3 Свойства ос:
- •4 Архитектура компьютерной системы Windows nt
- •5 Типы Windows-приложений:
- •6 Структура оконных вин приложений
- •7 Механизм сообщений Windows
- •9 Реєстрація класів вікон користувача та створення вікон у Windows.
- •10 Создание дочерних окон.
- •12 Сегментный способ адресации в Windows
- •13 Страничная организация памяти в Windows
- •14.Алгоритм управления страницами
- •15. При выделении памяти необходимо учитывать следующие ограничения:
- •18. Механизмы работы с памятью. Использование виртуальной памяти.
- •19. Механизмы работы с памятью. Отображение файлов на память.
- •20. Механизмы работы с памятью. Использование «кучи».
- •21. Исследование виртуальной памяти. Системная информация.
- •22. Исследование виртуальной памяти. Статус виртуальной памяти.
- •23. Исследование виртуальной памяти. Определение состояния адресного пространства.
- •25 Компоненты файловой системы
- •26 Монтирование и демонтирование файловой системы
- •Функциональные свойства fat
- •28 Ntfs
- •29 Поняття планування та диспетчеризації.
- •30 Алгоритм циклічного планування процесів.
- •31 Алгоритм пріоритетного планування процесів.
- •32 Алгоритм планування процесів з кількома чергами.
- •33 Алгоритм адаптивно-рефлекторного планування процесів.
- •34. Поняття політики планування процесів.
- •35. Класифікація процесів з погляду планування.
- •36. Поняття процесу. Пріоритети, порядок створення та завершення
- •37. Завдання. Обмеження, створення, статистична інформація.
- •38. Поняття потоку. Створення, призупинення, поновлення та завершення потоків.
- •39. Життєвий цикл процесу. Стан процесу. Переключення станів.
- •40. Абстрактне визначення та контекст процесу. Відносини між процесами.
- •41) Критичний ресурс. Критична секція. Використання спільної змінної.
- •42) Критичний ресурс. Критична секція. Почергове виконання критичної секції.
- •43) Критичний ресурс. Критична секція. Алгоритм Деккера.
- •44) Поняття синхронізації. Виявлення та запобігання тупиків (блокувань).
- •45) Синхронізація потоків. Функції та використання моніторів.
- •46) Синхронізація. Поняття та використання семафора для критичної секції.
- •53. Понятие параллельного исполнения.
- •57. Назовите и охарактеризуйте структуру сетевых операционных систем.
- •58. Взаимодействий компонентов ос при взаимодействии компьютеров в сети.
44) Поняття синхронізації. Виявлення та запобігання тупиків (блокувань).
Проблема синхронизации возникает для зависимых процессов, когда выполнение одних процессов зависит от выполнения других. Например, если один процесс пишет запись, а второй ее читает, то до завершения создания записи читать ее не имеет смысла.
Конкуренция из-за прав владения ресурсами может привести к состоянию взаимной блокировки (тупика), при котором каждый из процессов не может продолжить выполнение в связи с тем, что необходимый ресурс занят другим процессом. Первая схема предотвращения тупиков основывается на том, что если какой-то процесс делает запрос, который может привести к тупику, система не удовлетворяет этот запрос или отбирает этот ресурс у другого процесса, чтобы избежать тупика.
1 способ: каждый процесс вначале запрашивает все необходимые ему ресурсы. Процесс запускается только в том случае, если все необходимые ресурсы есть в наличии (в этом случае тупик никогда не возникнет). Недостатки способа – ресурсы выделяются задолго до их использования, что ограничивает использования этих ресурсов другими процессами.
2 способ: Все ресурсы делятся на классы. К классу с наибольшим номером относятся наиболее критические ресурсы, которые должны выделяться кратковременно. Процессу выделяется ресурс из заданного класса только в том случае, если этот ресурс есть в наличии и если процесс освободил все ресурсы с большими номерами.
3 способ: алгоритм аналогичен алгоритму принятия решения по выпуску займа.
Такое решение приводит к тому, что обнаружение опасных ситуаций может занимать много времени, поэтому можно использовать их автоматическое обнаружение . Если выполнение критической секции превышает заданный интервал времени, выполнение завершается, а общий ресурс восстанавливается таким, каким он был до входа в КС.
45) Синхронізація потоків. Функції та використання моніторів.
Монитор используется для предотвращения взаимного исключения ,когда один ресурс одновременно может использоваться только одним процессом. Монитор – это обьект специального типа. Установка и снятие блокировки выполняется с помощью функций монитора. Функции монитора выполняются в режиме взаимного исключения. Монитор имеет функцию инициализации (формирует начальные значения внутренних переменных), блокирования (посылает сообщение модулю ОС о необходимости блокирования процесса), исправления состояния (возвращает значение, есть ли процессы, которые ждут доступа к ресурсу) и функции. Сигнализации процесса (извещает ОС об освобождении заданного ресурса). Пример использования монитора, когда каждый процесс имеет свою критическую секцию:
CSBegin()(if(!Busy)Busy = true; else CriticalSection.Wait();)
CSEnd(|(Busy == false; Critical Section.Signed();)
Структура процессов с критическими секциями:
Процесс 1 |
Процесс 2 |
… CSBegin(); // Критическая секция процесса 1 CSEnd; |
… CSBegin(); // Критическая секция процесса 2 CSEnd; |