Введение
Программное обеспечение, эмулирующее весь компьютер
В вычислительной технике виртуальная машина (ВМ) представляет собой виртуализацию или эмуляцию компьютерной системы. Виртуальные машины основаны на компьютерных архитектурах и обеспечивают функциональность физического компьютера. Их реализации могут включать специализированное оборудование, программное обеспечение или их комбинацию. Виртуальные машины различаются и организованы в зависимости от их функций, представленных ниже:
Системные виртуальные машины (также называемые виртуальными машинами с полной виртуализацией) предоставляют замену реальной машине. Они обеспечивают функциональность, необходимую для запуска целых операционных систем. Гипервизор использует прямое исполнение для совместного использования и управления аппаратным обеспечением, позволяя создавать несколько изолированных сред, работающих на одном физическом компьютере. Современные гипервизоры используют аппаратную поддержку виртуализации, при которой специализированные аппаратные функции центральных процессоров хоста оказывают помощь гипервизорам. Процессные виртуальные машины предназначены для выполнения компьютерных программ в платформенно-независимой среде. Некоторые эмуляторы виртуальных машин, такие как QEMU и эмуляторы игровых консолей, также предназначены для эмуляции (или "виртуального воспроизведения") различных системных архитектур, что позволяет запускать программные приложения и операционные системы, разработанные для другого процессора или архитектуры. Виртуализация на уровне операционной системы позволяет разделять ресурсы компьютера посредством ядра. Эти термины не всегда взаимозаменяемы.
Виртуальные машины системы
"Виртуальная машина" первоначально определялась Попеком и Голдбергом как "эффективный, изолированный дубликат реальной вычислительной машины". В 2005 и 2006 годах Intel и AMD добавили аппаратную поддержку для виртуализации. Sun Microsystems (в настоящее время Oracle Corporation) внедрила аналогичные функции в свои процессоры серии UltraSPARC T в 2005 году. Примеры платформ виртуализации, адаптированных к такому оборудованию, включают KVM, VMware Workstation, VMware Fusion, Hyper-V, Windows Virtual PC, Xen, Parallels Desktop для Mac, Oracle VM Server for SPARC, VirtualBox и Parallels Workstation. В 2006 году было установлено, что аппаратная поддержка x86 первого поколения (32- и 64-битная) редко обеспечивает преимущества в производительности по сравнению с программной виртуализацией.