ВУЗ:
Составители:
6
••••••••••
••••••••••
••
••
1. ·
2.
Рис. 3
Проблемы с задачами РВ. Основным недостатком монолитного ядра яв-
ляются проблемы, возникающие при реализации систем реального времени.
Действительно, процессы РВ должны получать управление в течение гаранти-
рованного интервала времени. И этот интервал должен быть, по возможности,
небольшим. А время работы некоторых модулей ОС может быть довольно дол-
гим, например, время поиска файла в директории. Поэтому, если мы хотим реа-
лизовать ОС реального времени с хорошим временем реакции, мы должны при-
сваивать процессам РВ более высокий приоритет, чем у ядра. Но если процесс
имеет более высокий приоритет, чем ядро, то он может получить управление во
время работы нереентерабельного модуля системы.
Микроядро. Решением данной проблемы является архитектура, в кото-
рой нереентерабельный модуль ОС рассматривается как единый (цельный)
критический ресурс. Обращения к нереентерабельным модулям, например, к
подсистеме ввода/вывода, реализуются при этом не как вызовы, а как установка
запроса в очередь, то есть обработка запроса начинается не сразу же после вы-
зова, а, возможно, через некоторое время. Поэтому мы можем поставить запрос
в очередь практически в любой момент, в том числе и во время исполнения об-
работчика запросов.
Мы не можем ставить запрос во время других операций над этой же оче-
редью, но время извлечения/вставки элемента из/в очередь равно времени ис-
полнения трех-четырех команд, и на это время можно просто запретить
прерывания.
Страницы
- « первая
- ‹ предыдущая
- …
- 4
- 5
- 6
- 7
- 8
- …
- следующая ›
- последняя »