Привет, на связи Алексей! Слово «виртуальный» сегодня у всех на слуху. У меня до сих пор «виртуальность» ассоциациируется с фильмом «Косильщик лужаек», который вышел в девяностые годы. С тех пор прошло много времени. У нас еще не в ходу виртуальная реальность, слава Богу. Мы пока живем и мыслим в реальном мире. А вот виртуальные компьютеры уже легко может создать любой человек у себя дома. Сделать это позволяет технология виртуализации на процессоре вашего компьютера (или ноутбука).
В сегодняшнем материале сделаю краткий обзор как это работает, и расскажу для чего бывает нужен виртуальный компьютер. Самый простой пример — у вас дома в наличии есть обычный современный настольный ПК. На нем установлена операционная система Windows 7.
Вы решили осваивать Windows 10 или другую операционной систему, например Linux Mint. Раньше было доступно только два варианта. Или поставить новую вместо старой и потом переносить туда данные. Можно установить обе системы на один компьютер и запускать их поочередно. Но это не удобно.
Для того, чтобы на одном компьютере можно было запускать сразу несколько операционных систем одновременно и была реализована технология виртуализации. Проблема эта оказывается не нова, еще в 80 г двадцатого века ее пытались решить на Западе. В домашних условиях Вы, например, можете легко научиться самостоятельно устанавливать и осваивать такие операционные системы, с какими раньше не были знакомы. А потом и научиться использовать их.
Можно тестировать работу программ в разных операционных системах. Можно играть в любимые старые игры, которые не запускаются на новых операционных системах. Что еще дает запуск нескольких операционных систем? Виртуализация была придумана для того, чтобы экономить денежные средства. В крупных организациях стоят дорогие сервера, и вместо того чтобы тратить деньги на на покупку нового «железа» можно на ОДНОМ физическом системном блоке установить к примеру два виртуальных сервера.
Один почтовый, другой DNS. Мы получаем ДВА отдельных сервера. Каждый из этих виртуальных серверов работает изолированно от друг от друга как отдельный компьютер. При этом ресурсы физического компьютера используются на полную мощность (при правильном расчете). Никакого простоя. А если мы под эти задачи купили бы два раздельных сервера, то их ресурсы использовались бы процентов на сорок или даже меньше. А это невыгодно, даже с точки зрения потребления электричества.
Для того, чтобы технология заработала на вашем ПК, нужно чтобы его процессор поддерживал ее. В чем ее суть простыми словами? Обычный процессор работает примерно так. Есть операционная система (любая) и процессор. Часть данных операционной системы обрабатывается процессором на уровне «1«. Другая важная часть команд от операционной системы работает с процессором, например только на уровне «0» и занимает эту область. Вы пытаетесь запустить виртуальную машину, а эта «нулевая» область уже занята реальной операционной системой.
Ничего не получится. Поэтому в процессоре должна быть область «-1«, которая одновременно принимала бы команды от «новой» операционной системы, и не затрагивала бы работу «старой». Нужен процессор, который умеет управлять работой двух операционных систем одновременно.
Что такое аппаратная виртуализация?
Есть большая вероятность, что вы знаете, что вам нужна виртуализация, но не знаете, что это такое. Как вы можете догадаться, это связано с виртуальными машинами. Фактически, виртуализация оборудования позволяет вашему физическому процессору представлять себя как несколько виртуальных процессоров.
Это важно для обеспечения полной совместимости виртуальных машин с гостевой операционной системой при совместном использовании ресурсов с основной операционной системой. Есть много технических причин, по которым вы захотите иметь эти изолированные виртуальные процессоры. Тем не менее, для этой статьи все, что вам нужно знать, — это то, что виртуализация обеспечивает хорошую работу виртуальных машин и некоторых других типов приложений.
Зачем нужна виртуализация на домашнем компьютере
Вот простой пример: вы используете для работы и игр Windows, но при этом хотите изучить, например, Linux. Значит, нужно, чтобы эта операционная система находилась под рукой. Или занимаетесь программированием под Android или iOS. В этом случае постоянно требуется проверка разработанного приложения в родной среде.
Без виртуализации пришлось бы устанавливать на один компьютер две операционные системы, делать загрузчик и запускать каждую операционную систему поочередно. Или еще хуже — стирать одну ОС, устанавливать другую с переносом данных, переустановкой нужных приложений и так далее.
Так вот виртуализация позволяет обойтись без всех этих сложных процедур. Используя ее,можно запускать несколько операционных систем одновременно (одну внутри другой или две параллельно) и работать в той среде, которая нужна под конкретную задачу.
Каковы торговые марки Intel и AMD в области виртуализации?
Двумя основными брендами процессоров для ПК являются Intel и AMD. В вашем компьютере почти наверняка есть процессор одной из этих двух марок. Обе компании строят свои процессоры на основе так называемого набора инструкций x86. Другими словами, они могут выполнять и понимать один и тот же код.
Однако Intel и AMD также имеют свои собственные функции ЦП, которые должны явно поддерживаться программным обеспечением. В случае аппаратной виртуализации технология Intel известна как Intel VT или VT-x. AMD же просто называет свою версию AMD-V. Итак, это те термины, которые вам следует искать, когда вы хотите включить виртуализацию на своем компьютере.
Программа Setup BIOS фирмы AWARD Software International Inc на системных платах GIGABYTE TECHNOLOGY
Название данной опции у данного производителя в данной версии BIOS:
Virtualization значение по умолчанию [Disabled]
Hardware assisted VirtuaIization Technology which help improve performance of system running VirtuaI Machine Softwares.
Virtual Machine allows multiple OS on one conputer simultaneously.
Виртуальная машина позволяет запускать более производительно несколько ОС на одном компьютерные одновременно.
Не включать технологию аппаратной виртуализации, основанной на специальной процессорной архитектуре.
Включает технологию аппаратной виртуализации, основанной на специальной процессорной архитектуре.
Название данной опции у данного производителя в данной версии BIOS (ноутбук):
Virtualization значение по умолчанию [Enabled]
Эта опция определяет, будет ли монитор виртуальных машин (VMM) использовать дополнительные аппаратные возможности, обеспечиваемые Intel (R) Virtualization Technology.
Введено = Включить Virtualization Technology.
Как проверить, включена ли виртуализация
Прежде чем мы перейдем к тому, как включить или выключить виртуализацию, стоит узнать, как проверить, активна ли эта функция в данный момент или поддерживает ли ее ваш ЦП.
В Windows выполните следующие действия, чтобы проверить, включена ли виртуализация:
- Нажмите Ctrl + Shift + Esc, чтобы открыть диспетчер задач.
- Перейдите на вкладку «Производительность», если она еще не была выбрана.
- Выберите CPU на левой панели.
- Найдите запись «Виртуализация» на правой панели под графиком производительности ЦП.
Если в записи написано «Включено», вам больше ничего делать не нужно. Ваш компьютер поддерживает виртуализацию, и она уже включена. Однако, если это не означает, что он включен, нам нужно проверить, действительно ли ваш процессор оснащен аппаратной виртуализацией.
Самый простой способ сделать это — использовать приложение CPU-Z. Это приложение, которое компьютерные фанаты использовали в течение многих лет для быстрого и точного получения информации о процессоре компьютера.
- Загрузить и установить CPU-Z.
- Запустите CPU-Z
- На вкладке ЦП проверьте раздел Инструкции для VT-X или AMD-V.
Если инструкции виртуализации перечислены в CPU-Z, значит, у вашего процессора есть такая функция. Это означает, что вам необходимо активировать его в меню BIOS или UEFI.
Virtualization Technology
Другие идентичные названия опции: Vanderpool Technology, VT Technology.
Опция Virtualization Technology (технология виртуализации) предназначена для включения режима поддержки процессором технологии аппаратной виртуализации. Данная опция может принимать всего два значения – Enabled (Включено) и Disabled (Выключено).
Как включить виртуализацию в BIOS или UEFI
После определения того, что виртуализация не включена на вашем компьютере, но ваш ЦП поддерживает ее, следующим шагом будет щелкнуть переключатель и включить ее.
Здесь все становится немного сложнее, потому что переключатель виртуализации находится в вашем BIOS или UEFI меню. Это два типа микропрограмм, которые может использовать ваш компьютер, при этом UEFI является более современным стандартом.
В любом случае вам нужно войти в свою прошивку, перезагрузив компьютер и активировав меню BIOS или UEFI. У разных поставщиков материнских плат есть разные способы сделать это, но если вам нужна помощь, перейдите к разделу Как войти в BIOS в Windows 10 и более ранних версиях.
Как только вам удастся войти в свой BIOS, вам нужно будет найти правильную настройку для вашей системы, чтобы включить виртуализацию в BIOS. Среди разработчиков BIOS / UEFI нет стандартной терминологии для такой настройки. Поэтому вам, возможно, придется проявить свое воображение, если выбранная ими формулировка немного неясна. Приведенный выше снимок экрана был в разделе Advanced и CPU Configuration, а настройка называлась Intel Virtualization Technology.
На приведенном ниже снимке экрана изображен ноутбук Gigabyte Aorus на базе Intel, но общая идея одинакова, независимо от марки материнской платы или процессора.
Мы нашли настройки виртуализации в разделе Advanced Chipset Features. Хотя в случае с этим конкретным компьютером у VT-x не было тумблера. Вместо этого мы нашли переключатель только для VT-d. VT-d — это подтехнология виртуализации, которая занимается виртуализацией устройств ввода-вывода (ввода-вывода), а не процессоров. Тем не менее, вы должны включить все функции виртуализации, которые поддерживает ваша система.
Принцип работы
Что же вообще означает термин «виртуализация»? Технология виртуализации позволяет пользователю иметь множество виртуальных компьютеров на одном-единственном физическом компьютере. Естественно, что такой подход зачастую имеет немало преимуществ по сравнению с наличием нескольких физических компьютеров, прежде всего в плане сокращения расходов на оборудование и уменьшения энергопотребления.
Для создания виртуальных компьютеров требуется специальное программное обеспечение. Наиболее известно такое ПО для виртуализации, как VMWare и Microsoft Virtual PC.
Сердцем любой системы виртуализации является технология, носящая название диспетчера виртуальных машин (Virtual Machine Monitor, VMM). Эта технология создает прочную основу для управления виртуализацией. В функции диспетчера виртуальных машин (который также иногда называют гипервизором) входит управление в реальном времени ресурсами компьютера и распределение их между виртуальными системами. Гипервизор может осуществлять перенос данных между системами и создавать виртуальные диски.
Диспетчер виртуальных машин позволяет запускать на одном компьютере либо несколько операционных систем (такие виртуальные операционные системы обычно называются гостевыми), либо несколько копий одной операционной системы. Также в его задачи входит управление ресурсами памяти, процессора и устройств ввода-вывода в целях распределения их между различными виртуальными компьютерами. Таким образом, гипервизор может позволить нескольким операционным системам использовать один и тот же процессор, что повысит эффективность его работы.
Однако долгое время технология виртуализации была основана лишь на программных методах, а на аппаратном уровне ее поддержка почти отсутствовала, в частности, из-за отсутствия четких стандартов. Хотя одной из первых реализаций аппаратной виртуализации стала поддержка виртуального режима работы процессора Intel 8086, встроенная еще в процессор 80386 и в последующие процессоры фирмы Intel(подробнее с процессорами можно познакомиться тут ), тем не менее, возможности данной технологии были ограничены. Сегодня ведущие производители процессоров, Intel и AMD предлагают собственные технологии виртуализации, рассчитанные уже на защищенный режим работы процессора.
Вариант технологии виртуализации от Intel носит название VT-x. Он появился в 2005 г. Эта технология внедрила в серверные и клиентские платформы ряд улучшений, обеспечивающих поддержку программных средств виртуализации. Технология VT-x позволяет различным операционным системам и приложениям работать в независимых разделах и способна превратить компьютер в набор виртуальных операционных систем.
Технология виртуализации AMD носит название AMD-V. Впервые она появилась в процессорах Athlon 64 в 2006 г. Эта технология позволяет взять на себя некоторые задачи, выполняемые гипервизором программным способом и упростить их благодаря встроенному в процессоры AMD улучшенному набору инструкций.
По сравнению с программным методом виртуализации аппаратная виртуализация имеет ряд преимуществ. Дело в том, что операционные системы, предназначенные для платформы Intel, разрабатывались таким образом, что операционная система должна была иметь прямой доступ к аппаратным ресурсам компьютера. Программная виртуализация эмулировала необходимое оборудование, а технологии аппаратной виртуализации позволили операционной системе осуществлять прямой доступ к аппаратным ресурсам, избегая какой-либо эмуляции.
Процессорные расширения виртуализации предлагают новые подходы к управлению виртуализацией. Кратко суть улучшений можно описать следующим образом. Операционные системы обеспечивают различные уровни доступа к ресурсам, которые носят название колец защиты. Эти кольца представляет собой иерархию привилегий внутри архитектуры компьютерной системы. Наиболее привилегированным уровнем обычно является нулевой. Этот уровень также может осуществлять доступ к ресурсам напрямую.
В традиционной архитектуре Intel x86 ядро операционной системы может осуществлять прямой доступ к процессору на уровне 0. Однако в среде программной виртуализации гостевая операционная система не может осуществлять работу на нулевом уровне, поскольку он занят гипервизором. Таким образом, гостевая операционная система может выполняться лишь на уровне 1.
Но тут есть одна загвоздка – некоторые инструкции процессора могут выполняться лишь на уровне 0. Эту проблему можно решить несколькими способами, но ни один из них не является удовлетворительным. Например, операционная система может быть перекомпилирована, чтобы избежать подобных ситуаций, но это можно осуществить лишь в том случае, если доступны исходные коды данной операционной системы. Такой подход иногда применяется и носит название паравиртуализации.
Но в тех случаях, когда паравиртуализация невозможна, обычно используется другое решение. Диспетчер виртуальных машин просто перехватывает нужные инструкции гостевой операционной системы и заменяет их на безопасные. Само собой, что такой подход приводит к значительному падению производительности. Соответственно, программные виртуальные машины часто получаются намного медленнее их реальных аналогов.
Поэтому технологии аппаратной виртуализации от Intel и AMD содержат не только новые процессорные инструкции, но и, что имеет решающее значение, позволяют использовать новый уровень привилегий. Теперь гипервизор может работать на уровне более низком, чем нулевой (его можно обозначить, как –1), в то время, как гостевой операционной системе предоставляется в полное распоряжение нулевой уровень. Таким образом, гипервизор был избавлен от ненужной кропотливой работы, а производительность виртуальных машин значительно увеличилась.
Технологии Intel и AMD не во всем идентичны, однако они предлагают схожие преимущества и функциональность. Помимо увеличения производительности виртуальных машин, они позволяют увеличить количество виртуальных машин на одной физической системе, а также увеличить количество пользователей виртуальных машин.
Есть ли обратная сторона у включения виртуализации?
Вам может быть интересно, так ли полезна виртуализация, почему она отключена по умолчанию? Ответ несколько сложен, но есть некоторые обстоятельства, при которых эта функция может снизить производительность. Это похоже на то, как выключить Hyper Threading может улучшить работу компьютера с некоторыми программами.
На практике вы вряд ли заметите какое-либо изменение производительности в современной системе. Если, конечно, вы не запускаете тест процессора один за другим и не видите каждый раз разные результаты. В любом случае, если вам нужно запустить программное обеспечение, которое плохо работает с аппаратной виртуализацией, просто отмените описанные выше шаги и просто выключите его снова.
Virtualization Technology
Термин звучит, как название какой-нибудь секретной лаборатории, изобретающей адские машины для порабощения человечества, для дальнейшей интеграции его в Матрицу. В случае с процессором, это гораздо скучнее – всего лишь предоставление части вычислительной мощности, под конкретную задачу или несколько сразу.
Особенность в том, что под них создается специальная среда – своего рода «песочница», процессы в которой никак не могут повлиять на систему в целом, но могут обращаться к процессору напрямую, минуя посредников в виде основной ОС и все сопутствующие службы.
Сегодня, область практического применения, это технологии, развиваются по трем направлениям:
Виртуализация представлений
Терминальный сервер предоставляет свои мощности пользователю, и он же выполняет клиентское приложение, а на устройстве юзера отображаются только результаты расчетов. Это удобно тем, что существенно снижаются требования к программно-аппаратному обеспечению клиента и повышается безопасность.
В качестве терминального оборудования, можно использовать даже бюджетный смартфон. Недостаток в том, что существенно возрастают аппаратные требования к серверам, так как им приходится вести больше вычислений. Самый известный пример такого способа использования этой технологии – браузерные многопользовательские игры.
Виртуализация устройств
Так называется имитация аппаратной части компьютера, со строго заданными параметрами. На такой виртуальный компьютер можно установить собственную ОС и запускать с ее помощью приложения.
Технология широко используется для тестовых целей: перед релизом, программу всегда проверяют на разных устройствах, при необходимости оптимизируя и фикся баги.
Пример использования – эмулятор Андроида: создается отдельное виртуальное устройство с собственной ОС, которое может быть использовано как для развлечений, так и проверки работоспособности приложений.
Виртуализация приложений
Программа запускается в изолированной среде и никак не контактирует с «внешним миром», поэтому не конфликтует и не наносит вреда другим приложениям. Таким же способом можно запустить разные версии одной и той же программы.
Пример использования технологии – безопасные браузеры, которые часто идут в программном пакете как дополнения к многим антивирусам. Даже при посещении вредоносных сайтов, расплодившаяся там зараза не может попасть в операционную систему.
Чем отличаются VT-d и VT-x?
VT-x — эта стандартная технология виртуализации, которая позволяет виртуальной машине получить прямой доступ к процессору для повышения совместимости и скорости работы.
VT-d расширяет ее возможности и позволяет задействовать другие компоненты. Например, полностью брать под контроль видеокарту и использовать ее в виртуальной системе, как в настоящей (с поддержкой драйверов).
Получается, что виртуальная машина превращается чуть ли не в настоящую, а псевдо-система работает почти наравне с базовой.
VT-d доступна только на продвинутых и дорогих моделях процессоров Intel.
Поддержка технологии
Так как аппаратная виртуализация интегрирована в центральный процессор, то для того, чтобы пользователю можно было максимально использовать ее преимущества, необходимо, чтобы и его компьютер поддерживал данную технологию на процессорном уровне. Помимо этого, также необходимо, чтобы технология была реализуема со стороны операционной системы и БИОСа. Если последняя поддерживает аппаратную виртуализацию, пользователь получает возможность задействовать или же отключить ее в настройках. Необходимо учесть, что бывают чипсеты для материнских плат, которые базируются на процессорах AMD, и в которых нет возможности выключить поддержку этой технологии.
Стоит ли включать?
Опция Virtualization Technology (иногда называемая просто Virtualization) позволяет пользователю компьютера включить поддержку аппаратной виртуализации на уровне центрального процессора. Выбор значения Enabled включает эту поддержку, а значения Disabled – выключает.
Опцию Virtualization Technology следует включать лишь в том случае, если вы используете свой компьютер для запуска виртуальных машин. Включение аппаратной поддержки виртуальных машин способно значительно повысить производительность их работы. Однако в том случае, если виртуальные машины не используются, включение опции никак не повлияет на производительность компьютера.
Источник
Какие виртуальные машины предпочитают использовать сегодня?
Их достаточно большое количество. Но наиболее популярными вариантами считаются следующие:
VirtualBox
Этот продукт легко интегрируется с практически со всеми современными операционными системами. То есть, его можно запускать, если изначально на компе стоит Виндовс, Линукс, ОС Мак и так далее.
Поддерживает как 32-разрядную, так и 64-рязряднуцю систему.
VMware
Нужна ли VT-x обычному пользователю ПК?
Суть Intel Virtualization Technology заключается в том, что технология позволяет создавать на обычном персональном компьютере так называемые виртуальные машины. И все. То есть, ни о каком ускорении, повышении производительности речи совершенно не идет.
Естественно, сразу же возникает вопрос – а пользуется ли обычный пользователь ПК этими самыми виртуальными машинами. Да, чаще всего их используют различные узкопрофильные специалисты, которые занимаются программированием, наладкой и другими процессами. Но и обычному обывателю такая ВМ может пригодиться. Для чего? Вот только несколько, самых популярных примеров:
- Установка и полноценное использование на одном персональном компьютере сразу несколько различных операционных систем. Например, ОС Виндовс и Линукс. Удобно, когда требуется запустить какую-то специфическую программу, ради которой нет необходимости полностью менять операционку;
- Использование программного обеспечения, благонадежность которого, по каким-либо причинам вызывает подозрения. Возможно, в них сидят вирусы, различные программы-шпионы или взлома. И запускать такое ПО на обычном компе очень нежелательно. А использование виртуальной машины позволит гарантировать, что основная система не пострадает. И одновременно получить желаемый результат;
- Тестирование ПО. Иногда для этого необходимо создавать специальные условия. Например, иметь на ПК определенное количество ядер в процессоре, конкретную частоту ЦП, объем памяти и так далее. Использование ВМ позволяет легко выставить нужную конфигурацию и проверить результат. И не надо для этого физически что-то менять в оборудовании. Например, человек хочет запустить и часто использовать какую-то программку. Но характеристик его ПК недостаточно. Требуется апгрейд оборудования. Изначально можно подобрать оптимальную конфигурацию системы таким образом, а только затем – отправиться в магазин и приобрести все необходимое.
Есть множество программ, которым требуется определенная версия операционной системы. Особенно это касается достаточно старых продуктов. Например, у вас стоит Десятка или Семерка Виндовс, а очень хочется запустить какое-то ПО (например, игру), которое нормально функционирует только в XP или в более ранних версиях. Установите ВМ и проблема будет быстро решена.
Еще один интересный вариант – работа с сайтами. Да, ВМ позволяет создавать эмуляцию сети. Представьте ситуацию:
- Вы – неопытный пользователь, который очень хочет иметь собственный сайт. Но не имеет опыта в их создании;
- Денег на это особо нет, чтобы привлекать сторонних специалистов. Плюс очень хочется научиться всему самому.
Можно пойти классическим путем:
- Обратиться к хостинг-компании;
- Заплатить за домен и оплату услуг удаленного сервера;
- А затем – приняться за создание личного интернет-ресурса.
А если не получится? Или в процессе создания перехочется? Получается, что деньги были потрачены зря?
Установив виртуальную машину, можно спокойно создать эмуляцию сети и в полностью идентичном реальному режиму приступить к созданию прототипа своего сайта. И, если все получится и устроит человека – повторить все уже классическим способом.
При включении компьютера два коротких сигнала
Все про BIOS
Что означают 4 длинных сигнала BIOS?
Все про BIOS