b733e4
Научим создавать свои игры, сайты и приложения
Начать учиться

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

Что такое виртуальная машина и зачем она нужна?
2.3K

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

Когда вы запускаете компьютер, первым делом запускается ОС — операционная система. Операционная система — это интерфейс, связывающий пользователя и машину.

Виртуальная машина (сокращённо ВМ или VM) — это как волшебный ящик, который вы создаёте на своём компьютере. Внутри него можно запустить другой компьютер с любой другой операционной системой: Linux, MacOS или Windows. Такие виртуальные операционные системы можно использовать почти так же, как и настоящие, лишь с некоторыми ограничениями.

Назначение виртуальных машин

Для чего используются виртуальные машины?

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

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

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

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

Кроме того, если у вас MacOS или Linux, вы можете запустить виртуальную машину, чтобы поиграть в игры под Windows или поработать в программе для инженерного 3D-моделирования, вроде Autodesk Inventor, которая была разработана только под Windows.

Как работает виртуальная машина

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

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

Программисты разрабатывают приложения на определённом языке программирования, например, на Java, С++ или C#. Затем они компилируют (переводят) исходный код этого приложения в байт-код, который может быть выполнен виртуальной машиной (тот самый файл-приложение, в простонародье «икзешник» — по названию расширения такого файла .exe). Этот байт-код можно передавать и устанавливать на любой компьютер.

Когда виртуальная машина получает исполняемый байт-код, она начинает эмулировать (дублировать) работу реального компьютера. Байт-код исполняется виртуальной машиной в соответствии со спецификацией языка программирования. В процессе работы виртуальная машина переводит этот байт-код в машинный код (он же бинарный код — то есть состоящий только из 0 и 1), который может быть выполнен процессором компьютера, на котором работает виртуальная машина. Всё это происходит автоматически, без вмешательства программиста.

Каждая виртуальная машина имеет свои собственные характеристики. Например, Java Virtual Machine (JVM) часто используется для запуска приложений, написанных на языке Java. Она имеет свою собственную спецификацию языка, а также набор инструкций, которые позволяют выполнять байт-код. Приложения, написанные на языке Java и запущенные на JVM, работают на любой платформе, где установлена виртуальная машина.

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

Короче говоря, гипервизор запускает виртуальные машины. Но не всегда. Есть типы виртуальных машин, которые запускаются без него. Подробнее об этом чуть позже.

Теперь поговорим о том, в чём преимущества и недостатки виртуальных машин.

Получи больше пользы от Skysmart:

Преимущества виртуальных машин

Преимущества ВМ заключаются в их возможности эмулировать работу реальных компьютерных систем и обеспечивать безопасность работы ПО.

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

Кроме того, они могут управлять ресурсами компьютера и устанавливать ограничения на доступ программы к ресурсам.

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

Недостатки виртуальных машин

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

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

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

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

Лучшие виртуальные машины

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

  1. Oracle VM VirtualBox — это бесплатная виртуальная машина от компании Oracle, которая поддерживает большое количество операционных систем, таких как Windows, Mac OS X, Linux и Solaris. Она имеет широкие возможности конфигурации, включая опцию совместного использования ресурсов хост-компьютера, и может быть настроена, чтобы использоваться с любым графическим интерфейсом пользователя. Виртуальная машина VirtualBox также поддерживает большое количество гостевых ОС, включая сами виртуальные машины VMware и Microsoft.

  2. VMware Workstation — это одна из лучших и наиболее популярных виртуальных машин, предназначенная для использования в рабочей среде. VMware Workstation поддерживает большое количество операционных систем и обеспечивает довольно высокую скорость работы. Её уникальное преимущество заключается в том, что она может запускать виртуальные машины в режиме «снапшота», что позволяет сохранять контрольную точку для быстрого восстановления, если что-то пойдёт не так.

  3. Microsoft Hyper-V — это встроенная в ОС Windows виртуальная машина, которая разработана специально для работы с ОС Windows Server. Она поддерживает гостевые ОС, включая Linux, и имеет множество опций настройки, чтобы обеспечить надёжность и безопасность. Будучи встроенной в ОС Windows, Hyper-V предоставляет также простую интеграцию с другими приложениями и возможность управления виртуальными машинами через консоль Windows. Но есть нюанс: Hyper-V — это ещё и процессорная технология. Если у вашего процессора её нет, значит, и ВМ Hyper-V не заработает.

  4. Parallels Desktop — это мощная виртуальная машина, разработанная для использования на Mac OS X. Она обеспечивает быстрый и надёжный запуск Windows и других операционных систем на компьютере Mac. Parallels Desktop имеет широкие возможности настройки и позволяет эффективно использовать ресурсы хост-компьютера для работы в виртуальной среде.

  5. QEMU — это бесплатная виртуальная машина с открытым исходным кодом, которая поддерживает множество КПК (карманных персональных компьютеров) и ОС. QEMU имеет очень маленький размер и высокую скорость работы, что делает её отличным выбором для разработчиков веб-приложений.

  6. KVM — это виртуализация ОС от Linux, которая является бесплатной и поддерживает большое количество гостевых ОС, включая Windows. KVM использует ядро Linux в качестве гипервизора, что обеспечивает высокую производительность и низкий уровень задержки.

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

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

Как запустить виртуальную машину у себя на компьютере?

Процесс запуска сильно зависит от выбранной ВМ. У каждой свои особенности. Но в этой статье мы покажем, как запустить ВМ с помощью гипервизора Oracle VirtualBox — это самый простой способ.

  1. Найдите и скачайте ISO-образ операционной системы, которую вы хотите установить в свою виртуальную машину. Автор статьи будет показывать процесс на примере дистрибутива Linux Mint. Это довольно популярный альтернативный Ubuntu дистрибутив Linux с красивым и понятным графическим интерфейсом.

  2. Заходим на сайт Oracle, скачиваем и устанавливаем VirtualBox. Выбирайте установщик программы для вашей ОС.

    установщик

  3. Открываем VirtualBox и нажимаем кнопку «Создать».

    Стартовое окно программы VirtualBox

    Стартовое окно программы VirtualBox

  4. Вводим имя нашей ОС и выбираем заранее скачанный ISO-образ системы.

    ISO-образ

    После нажимаем «Далее» и следуем инструкциям на экране.

  5. Выбирайте объём оперативной памяти больше 2 Гб, а объём занимаемой долговременной памяти (жёсткий диск) — не меньше 25 Гб, иначе система может просто не запуститься.

    3 Гб ОЗУ, 2 ядра процессора

    Мы выбрали 3 Гб ОЗУ, 2 ядра процессора.

    25 Гб пространства

    И 25 Гб пространства на жёстком диске.

  6. После выполнения всех инструкций и нажатия на кнопку «Готово» запустится виртуальная машина.

    запуск системы

    Это окно вы увидите при запуске системы, мы выбрали первый вариант и нажали на клавишу Enter.

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

    Рабочий стол Linux Mint

    Рабочий стол Linux Mint

  8. По умолчанию стоит разрешение экрана 1024×768 пикселей. Щёлкаем правой кнопкой мыши, чтобы вызвать контекстное меню, и выбираем Display Settings (настройки экрана).

    Выбираем настройки экрана

    Выбираем настройки экрана

  9. В окне выбираем комфортное разрешение.

    1920×1080 пикселей

    У нас это 1920×1080 пикселей.

  10. Готово! Дальше пользуйтесь новой системой как хотите.

    Linux-терминал работает

    Браузер и интернет — есть, Linux-терминал работает. Красота!

Часто задаваемые вопросы (FAQ)

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

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

Как установить виртуальную машину?

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

Как пользоваться виртуальной машиной?

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

В этой статье мы рассказали, что такое виртуальные машины, для чего они используются и как их запускать. А если хотите узнать ещё больше о мире IT, приходите сами или приводите своих детей на курсы программирования в онлайн-школу Skysmart Pro.

Открыть диалоговое окно с формой по клику
Бесплатный вебинар
Бесплатный вебинар
Бесплатный вебинар
Научиться разработке
Подготовиться к ОГЭ/ЕГЭ
Получите план развития в программировании
  • Поможем с выбором IT-профессии
  • Вместе сделаем первый проект
  • Расскажем, как проходят занятия
Шаг 1 из 2
Шаг 1 из 2
Шаг 2 из 2