Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
На Pentium в режиме виртуальной машины 8086, каждый пользователь получает точную копию другой машины. Вследствие развития этой идеи была изобретена система, которая обеспечивает каждого пользователя абсолютной копией реального компьютера, но с подмножеством ресурсов. Например, одна виртуальная машина может получить блоки на диске с номерами от 0 до 1023, следующая – от 1024 до 2047 и т. д.
На нижнем уровне в режиме ядра работает программа, которая называется экзоядро. В ее задачу входит распределение ресурсов для виртуальных машин, а после этого проверка их использования (отслеживание попыток машин использовать чужой ресурс). Каждая виртуальная машина на уровне пользователя может работать с собственной операционной системой с той лишь разницей, что каждая машина ограничена набором ресурсов, которые она запросила, и которые ей были предоставлены.
В традиционных операционных системах ядро предоставляет не только минимальный набор сервисов, обеспечивающих выполнение программ, но и большое количество высокоуровневых абстракций для использования разнородных ресурсов компьютера. В отличие от них, ОС на основе экзоядра предоставляет лишь набор сервисов для взаимодействия между приложениями, а также необходимый минимум функций, связанных с защитой: выделение и высвобождение ресурсов, контроль прав доступа, и т. д. Экзоядро не занимается предоставлением абстракций для физических ресурсов — эти функции выносятся в библиотеку пользовательского уровня (так называемую libOS).
Основная идея операционной системы на основе экзоядра состоит в том, что ядро должно выполнять лишь функции координатора для небольших процессов, связанных только одним ограничением — экзоядро должно иметь возможность гарантировать безопасное выделение и освобождение ресурсов оборудования. ОС, базирующиеся на экзоядре, обеспечивают большую эффективность за счет отсутствия необходимости в переключении между процессами при каждом обращении к оборудованию.
Достоинства экзоядра:
- позволяет обойтись без уровня отображения;
При других методах работы каждая виртуальная машина считает, что она использует свой собственный диск с нумерацией блоков от 0 до некоторого максимума. Поэтому монитор виртуальной машины должен поддерживать таблицы преобразования адресов на диске и всех других ресурсов. Необходимость преобразования отпадает при наличии экзоядра, которому нужно только хранить запись о том, какой виртуальной машине выделен данный ресурс.
- отделяется многозадачность (в экзоядре) от операционной системы пользователя (в пространстве пользователя) с меньшими затратами, т.к. для этого ему необходимо всего лишь не допускать вмешательства одной виртуальной машины в работу другой.
Дата публикования: 2015-01-26; Прочитано: 712 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!