- •1. Что такое критическая область? Условия избегания состязания для эффективной работы процессов.
- •Строгое чередование
- •Что такое примитивы взаимодействия процессов, и для чего они применяются? в чем заключается проблема переполненного буфера?
- •Что такое семафор? Для чего применяются операции up и down?
- •8. Решение проблемы переполнения буфера с помощью семафоров (producer-consumer).
- •10. Образ процесса, регистры процесса.
- •12. Основные атрибуты процесса.
- •13. Что такое контекст и дескриптор процесса? Из каких частей состоит контекст процесса в unix-системах? Контекст и дескриптор процесса
- •14. Назвать состояния процесса в unix-системах.
- •15. Этапы жизненного цикла процесса в unix-системах.
- •16. В каких случаях происходит переключение контекста
- •17. Приоритеты процессов
- •18. Синхронизация процессов.
- •Критерии планирования и требования к алгоритмам
- •24. Методы разделения процессов на группы в интерактивных системах.
- •25. Какие существуют системы реального времени? Необходимое условие для планирования процессов в системе реального времени
- •26. Статический алгоритм планирования процессов (rms) в системах реального времени.
- •27. Динамический алгоритм планирования процессов (edf) в системах реального времени
- •28. Понятие взаимоблокировки процессов. Что такое ресурс? Типы ресурсов, последовательность событий, необходимых для использования ресурса
- •34. Способы выхода из взаимоблокировки:
24. Методы разделения процессов на группы в интерактивных системах.
Группы с разным квантом времени
Сначала процесс попадает в группу с наибольшим приоритетом и наименьшим квантом времени, если он использует весь квант, то попадает во вторую группу и т.д. Самые длинные процессы оказываются в группе наименьшего приоритета и наибольшего кванта времени.
Процесс либо заканчивает работу, либо переходит в другую группу
Этот метод напоминает алгоритм - "Кратчайшая задача - первая".
Группы с разным назначением процессов
Процесс, отвечающий на запрос, переходит в группу с наивысшим приоритетом.
Такой механизм позволяет повысить приоритет работы с клиентом.
Гарантированное планирование
В системе с n-процессами, каждому процессу будет предоставлено 1/n времени процессора.
Лотерейное планирование
Процессам раздаются "лотерейные билеты" на доступ к ресурсам. Планировщик может выбрать любой билет, случайным образом. Чем больше билетов у процесса, тем больше у него шансов захватить ресурс.
Справедливое планирование
Процессорное время распределяется среди пользователей, а не процессов. Это справедливо если у одного пользователя несколько процессов, а у другого один.
25. Какие существуют системы реального времени? Необходимое условие для планирования процессов в системе реального времени
26. Статический алгоритм планирования процессов (rms) в системах реального времени.
RMS (Rate Monotonic Scheduling — планирование с приоритетом, пропорциональным частоте запуска процесса). Он может использоваться для процессов, отвечающих
следующим условиям:
1. Каждый периодический процесс должен быть завершен в течение своего периода.
2. Ни один из процессов не зависит от других процессов.
3. Каждому процессу для каждого интервала его работы требуется одинаковое количество процессорного времени.
4. У непериодических процессов нет крайних сроков.
5. Вытеснение процесса происходит мгновенно без каких-либо издержек.
Первые четыре условия вполне резонны, а последнее, разумеется, нет, но оно значительно упрощает моделирование системы. Алгоритм RMS работает путем присваивания каждому процессу фиксированного приоритета, равного частоте возникновения инициирующего его события. Например, процесс, который должен запускаться каждые 30 мс C3 раза в секунду), получает приоритет 33, Во время работы планировщик всегда запускает готовый к работе процесс с наивысшим приоритетом, вытесняя, при необходимости, выполняемый процесс.
27. Динамический алгоритм планирования процессов (edf) в системах реального времени
алгоритм с приоритетом для процесса с ближайшим истекающим крайним сроком — EDF (Earliest Deadline First). Это динамический алгоритм, не требующий, как алгоритм RMS, чтобы процесс был периодическим. Он также не требует постоянства интервалов времени использования центрального процессора, как этого требует алгоритм RMS. Как только процесс нуждается в процессорном времени, он объявляет о своем присутствии и своем крайнем сроке. Планировщик ведет список готовых к работе процессов, отсортированный по их крайним срокам. Согласно алгоритму запускается процесс, который идет первым по списку, то есть тот процесс, у которого раньше всех наступит крайний срок. Как только будет готов новый процесс, система проверяет, не наступает ли его крайний срок раньше, чем у процесса, работающего в данный момент. При положительном ответе текущий процесс вытесняется новым процессом.
