3

Я не был уверен, стоит ли публиковать это здесь или о переполнении стека, но, поскольку мой вопрос больше касается аппаратного обеспечения, чем программного обеспечения, я думаю, что это лучшее место.

У меня есть вопрос, касающийся эмуляции операционных систем (такая программа, как VMware). Я понимаю, что модули этого программного обеспечения работают в приоритете ring0 вместе с модулями вашей основной операционной системы.

Как это возможно, что программное обеспечение виртуальной машины может заставить модули ядра эмулируемой операционной системы работать в кольце с более низким приоритетом, чем кольцо 0? Я имею в виду, что эмулированное программное обеспечение по-прежнему работает отлично, так как я могу делать все то же, что и обычная машина. Но я не верю, что эмулируемое ядро контролирует системные ресурсы вне эмулятора, или это так ???

2 ответа2

4

Но я не верю, что эмулируемое ядро контролирует системные ресурсы вне эмулятора, или это так ???

На самом деле это не так. Ядро работает на новом специализированном «Кольце-1». Над ядром находится гипервизор (программа, фактически отвечающая за поддержку среды виртуализации, которая живет в хост-системе). Это тот, который работает в кольце 0 на хост-машине. Любая гостевая ОС работает в новом изолированном Ring-1, созданном гипервизором.

См .: Звонок, Компьютерная безопасность (режим гипервизора)

0

Как это возможно, что программное обеспечение виртуальной машины может заставить модули ядра эмулируемой операционной системы работать в кольце с более низким приоритетом, чем кольцо 0?

Архитектура современных процессоров позволяет процессору "эмулировать себя". Насколько известно гостевой ОС, она фактически контролирует оборудование, но в действительности гипервизор перехватывает все прерывания и т.д. И эмулирует ответы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .