Полная виртуализация: различия между версиями

м
Нет описания правки
(категория)
м
Аналогичная ситуация и с платформой х86: полная виртуализация была возможна не в полной мере, до добавление технологий AMD-V и Intel VT(эти технологии ниже будут рассмотрены более подробно в пункте «Аппаратная виртуализация»). Много продуктов виртуализации для платформы x86 подошли вплотную и заявляли о полной виртуализации еще до реализации AMD-V и Intel VT. Примеры включают такие решения как: ADEOS, Mac-на-Linux, Parallels Desktop для Mac, Parallels Workstation, VMware Workstation, VMware Server (бывший GSX Server), VirtualBox, Win4BSD и Win4Lin Pro.
 
VMware, например, использует технологию, называемую «бинарной трансляцией», для автоматического изменения ПО для x86 «на лету», для замены инструкций, которые угрожают виртуальной машине другими, безопасными для виртуальной машины последовательностями инструкций. Эта технология предоставляет видимость полной виртуализации.
 
Ключевой задачей полной виртуализации является перехват и симуляция привилегированных операций, таких как инструкции ввода/вывода. Эффект выполнения каждого процесса, запущенного в определенной виртуальной машине, должен быть сохранен только в пределах этой виртуальной машины — нельзя допустить, чтобы виртуальные процессы изменяли состояние других виртуальных машин, управляющей программы или оборудования. Некоторые машинные команды могут быть выполнены непосредственно на оборудовании, поскольку их результаты целиком содержаться в элементах, управляемых управляющей программой, таких как память и арифметические регистры. Но другие инструкции, которые могут угрожать виртуальной машине, нельзя разрешать выполнять напрямую, — они должны быть перехвачены и симулированы. Это инструкции к доступу или изменению статической информации, которая находится за пределами виртуальной машины.
 
Полная виртуализация была успешно опробована для:
3

правки