Что такое виртуальная машина - типы и преимущества

Попробуйте наш инструмент устранения неполадок





Концепция виртуальной машины появилась примерно в 1960 году. Это эволюция техники разделения времени. В методе разделения времени каждая программа имеет полный доступ ко всем ресурсам компьютера, но одновременно будет выполняться только одна программа. Система переключается между программами во временных срезах, каждый раз сохраняя и восстанавливая состояния программы. С использованием метода разделения времени несколько пользователей могут использовать компьютерную систему одновременно. Исследовательские центры IBM развили метод разделения времени как виртуальные машины. СР-67 был первым доступным архитектура виртуальной машины . Были разработаны системы с несколькими виртуальными машинами на одном хосте и одной виртуальной машиной на нескольких хостах.

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




Что такое виртуальная машина?

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

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



Типы виртуальных машин

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

1). Системные виртуальные машины


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

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

2). Виртуальные машины процессов (ВМ)

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

Виртуальная машина процесса

Виртуальная машина процесса

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

Архитектура

Программное обеспечение среды выполнения - это программное обеспечение виртуализации, реализующее виртуальную машину процесса. Он реализован на уровне API компьютерной архитектуры над комбинированным уровнем ОС и оборудования. Это имитирует инструкции на уровне пользователя, а также вызовы ОС или библиотеки. Для системной виртуальной машины программное обеспечение виртуализации называется Virtual Machine Monitor (VMM). Это программное обеспечение присутствует между главным аппаратным компьютером и гостевым программным обеспечением. VMM эмулирует аппаратный ISA, позволяя гостевому программному обеспечению выполнять другой ISA.

Преимущества

Некоторые из преимуществ виртуальных машин следующие:

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

Таким образом, современные вычислительные системы становятся более сложными и содержат различные тесно взаимодействующие программные и аппаратные компоненты. Здесь виртуализация выступает в качестве технологии межсетевого взаимодействия. Виртуальные машины объединяют несовместимые подсистемы для совместной работы. Он также обеспечивает более гибкое и эффективное использование аппаратных ресурсов в нескольких операционных системах. Они обеспечивают взаимодействие между оборудованием, системным программным обеспечением и приложениями. В чем разница между процессом Виртуальная машина а системная виртуальная машина?