logo
Методичка

11.5 Технология виртуализации

Вопросами поддержки виртуализации ведущие разработчики процессоров озаботились сравнительно недавно, в 2005 году. До этого развитие виртуальных машин проходило преимущественно в программном русле. Первой в этом деле была замечена компания VMware. В 1998 году она запатентовала свои наработки в области создания виртуальных машин и выпустила одноименный программный продукт.

Особой популярностью виртуальные машины пользовались у сторонников UNIX-платформ, так как позволяли запускать параллельно несколько операционных систем, включая Windows. Фактически эмулировалась работа нескольких компьютеров с собственными ОС.

Подобные возможности стали привлекательными для бизнес-сектора, когда стала очевидной экономия на оборудовании, инфраструктуре и обслуживании. Поэтому в скором времени появился ряд аналогичных продуктов и от других разработчиков. Даже софтверный гигант Microsoft успел обозначить свое присутствие в этом секторе, что являлось на тот момент дополнительным подтверждением перспективности данной задумки.

Поддержка виртуалицизации на аппаратном уровне является знаковым событием. В будущем это позволит решить проблему кроссплатформенности приложений и стереть границы между «родным» (для данной ОС) программным кодом и позаимствованным с другой платформы.

Примечание: операционная система или отдельные программы, выполняемые виртуальной машиной, называются гостевыми.

Гостевая операционная система (или приложение) может даже не догадываться, что работает не на отдельном физическом хосте, а всего лишь в режиме эмуляции.

Запуск программного обеспечения на виртуальных машинах имеет определенные преимущества с точки зрения безопасности, так как каждая задача работает в своем адресном пространстве и не имеет прямого доступа к данным других приложений.

В дополнение к обозначенным выше возможностям появляется еще и такое преимущество, как простота экспорта настроенных ОС или отдельных приложений с одного компьютера на другой. Это, в свою очередь, сокращает издержки обслуживания и настройки ПО.

Для небольших компаний использование технологий виртуализации станет существенным подспорьем в сокращении издержек при переходе с программно-аппаратной платформы на другую. Отпадает необходимость переписывать ПО заново. Оно сможет прекрасно работать в своей виртуальной среде, в то время как сидящий за компьютером человек для других нужд сможет использовать более современные программные средства.

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

Разработчики программ также оценят возможности запуска на одном хосте нескольких ОС. Это облегчит процедуры тестирования и отладки.

В то время как рынок средств виртуализации стал демонстрировать в последние годы тенденцию устойчивого роста, разработчики «железа» просто не могли оставаться в стороне. Именно поэтому как Intel, так и AMD разработали и внедрили две, по сути одинаковые, технологии – Intel Virtualization Technology (Intel VT) и AMD Virtualization (AMD-V).

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

Обе технологии сейчас уже используются в процессорах среднего и более высоких уровней. Изделия бюджетного сегмента данной возможности лишены.

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

В аппаратной реализации гостевые ОС контролируются специальной программой-менеджером «гипервизором». Отпадает необходимость запуска основной операционной системы, что экономит вычислительные ресурсы компьютера.

Режим виртуализации должен поддерживаться не только процессором, но и BIOS материнской платы. Это означает, что в случае ненадобности его можно отключить.