Что происходит внутри окна виртуальной машины

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

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

Откуда берётся изоляция

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

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

За удобство приходится платить ресурсами

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