Virtualization

From PCGamingWiki, the wiki about fixing PC games
This page is a stub: it lacks content and/or basic article components. You can help to expand this page by adding an image or additional information.

Key points

Allows the use of older software which which may have problems running natively on newer OSes.
Ability to use 16-bit software even if the host machine is 64-bit without native support for 16-bit software.
Removes the need to install another OS to the host system and having to separately boot into it.
Running a virtualization of another OS inside an existing OS is more taxing to your system than running the OS natively.
3D acceleration has plenty of problems currently, so it's usefulness in gaming varies.

General information

Virtual machine at Wikipedia

Virtualization is a means of running a guest operating system in host OS. Virtual Machines (VM) can be created in a virtualization program, almost any OS can be installed in a VM. A system running the VM is usually called the host and the OS running the virtual machine is called the guest.

Virtualization and emulation should not be confused with each other as they are both very different things. Emulation is the replication of how hardware operates either on a low level or a high level. Whereas virtualization is running an OS on existing hardware that can already run the operating system.

Usage of a VM can be used to combat compatibility issues with newer operating systems, such as when the program might require some certain functionality that has been removed. One of the best examples of this is with 16-bit backwards-compatibility software support in Windows, which is not supported in the 64-bit variants of Windows. However, 32-bit variants of Windows still support 16-bit applications natively. virtualization also has plenty of other usage cases such as: running an isolated environment (sandbox), running older software or a different OS without dual-booting the host machine.

A lesser-known form of software distribution is called application virtualization. Programs like Cameyo client, Turbo Studio, and VMware ThinApp can be used to isolate applications files and/or registry keys from the host machine including the ability to make programs completely portable between different computers or system configurations. Instead of the entire operating system being virtualized as with a typical VM, only the application's files and/or registry keys are virtualized and bundled together. This method typically follows a container approach to isolation. For example; An application that requires the Microsoft .NET, Visual Studio C++ runtime or other middleware components can have the runtime either bundled within the application itself or added as an SVM (in the case of Turbo Studio) instead of having to be natively installed on the host machine. Isolation options include being able to merge with the entire existing system,select parts of it, or to be completely isolated and much more depending on your knowledge of the software. The software required to make virtualized applications can be expensive though due to the obscurity and specialty of the technology. Most components of virtualization will require an advanced-level of knowledge of the Windows operating system to use and operate successfully.

Another type of virtualization is called a compatibility layer, running a Windows application on Linux through Wine can offer better compatibility for older programs than newer versions of Windows itself. However, Wine Is Not an Emulator (W.I.N.E) and is classified as a compatibility layer (a.k.a translation layer).

With gaming, some problems may arise. When running a VM, or when using a hyper-visor, it will take more resources to run than when the OS is running natively. Emulating an entire machine including its hardware can be near impossible due to how costly it is compared to virtualization (for example; QEMU). 3D accelerated games may also have problems in VM’s as they aren't designed for gaming, so 3D acceleration support is generally poor.

When running an older version of an OS in a VM, the same security risks apply when installing & running that OS natively, so there will always be a possibility of viruses and malware that can take advantage of the guest OSes vulnerabilities; even of the VM software itself. If the software in question does not need access to internet, it's usually safer to disable all connections from the VM to the host computer. When using shared folders, it's safer to marked the folder as read-only if you don't need to move files to the host. Taking all of these security measures into consideration can make running a guest OS a lot more secure.


Virtualization software[edit]

VBox vs Others - Oracle VM VirtualBox - Page comparing VirtualBox, Parallels and VMware features.
Software Platforms Wikipedia Homepage Cost
DOSBox
Windows
macOS (OS X)
Linux
Link Free
VirtualBox
Windows
macOS (OS X)
Linux
Link Free
VMware
Windows
macOS (OS X)
Linux
Link Basic free
Premium costs
QEMU
Windows
macOS (OS X)
Linux
Link Free
Windows Virtual PC
Windows
Link Free
Microsoft Virtual PC 2007
Windows
Link Free
Parallels
macOS (OS X)
Link Costs

DOSBox[edit]

For more information see DOSBox.
It's possible to install early Windows versions with DOSBox (3.1, 95), however it's much more suitable for DOS gaming thus it's recommended to use other applications unless you have good reason to use DOSBox instead.

VirtualBox[edit]

Mostly open source and non-open source material is free for personal use.
Can be installed almost for every OS and can run a wide variety of different operating systems. However it does have problems with Windows ME and earlier which require some fiddling to work.
Guest Additions have to be installed to make the guest operating system work optimally, Direct3D support is experimental and installation requires additions to be installed in safe mode.

Installing media from physical or virtual devices in the guest OS[edit]

Install from a physical disc or disc image
  1. Start the Virtual Machine.
  2. Once the OS has fully loaded, select Devices, CD/DVD Devices and either:
    • Host drive 'X:' from a physical disc drive and replace the X with the actual drive letter.
    • Choose a virtual CD/DVD disc file... for a disc image, choose DMG, ISO or CDR.
  3. When loaded, the disc can be accessed from the guest OS normally.
Use a shared folder to move install file to guest
  1. Open VMs Settings and open Shared folders
  2. Click on the icon with the blue folder and the green plus sign to add a new folder.
  3. Search for the folder you want to use within guest, name it, tick auto-mount and click OK.
    • If you are only using a shared folder to install your media, tick read only.
  4. Click OK to save changes and start up VM.

Notes

Guest additions should be installed prior doing this.
If you add a shared folder while the VM is open, you may need to restart the guest operating system.

VMware[edit]

Superior 3D acceleration support in Windows XP and later OSes.
Closed-source, the free version is very basic.

QEMU[edit]

Greater compatibility with programs due to emulation.
High performance penalties when emulating.

Microsoft Virtual PC 2007[edit]

Installing on Windows 8 and later requires some tweaking (see Windows 8 compatibility issues).

Windows 8 compatibility issues[edit]

Virtual PC 2007 causes a BSOD on Windows 8 and later because it uses an outdated version of vmm.sys.
Install Virtual PC[citation needed]
  1. Install Microsoft Virtual PC 2007 SP1 if you haven't already.
  2. Install the Windows Phone SDK 7.1.
  3. Install the Windows Phone SDK 7.1.1 Update.
  4. Rename Virtual PC.exe to VirtualPC.exe to bypass the compatibility warning.
  5. Microsoft Virtual PC 2007 SP1 will now run correctly on Windows 8.
The updated vmm.sys can be backed up for future use to avoid having to install the Windows Phone SDK in the future.

Windows Virtual PC[edit]

Only available on certain editions of Windows 7.
Official guest support for operating systems earlier than Windows XP was removed.
Lots of features were removed, making this version of Virtual PC inferior.
Install Windows Virtual PC[citation needed]
  1. Download the Windows Virtual PC installer.
  2. Run the .msu package.
  3. Create a new virtual machine and install your OS.

Notes

Make sure to select the right version (32-bit or 64-bit) appropriate for your operating system.

Application virtualization software[edit]

In-depth technical knowledge is required for proper use and configuration.
Public help topics, knowledge, and information are sparse in many cases.
Applications can be sandboxed and isolated completely from the host operating system.
Virtual child processes can be configured to run normally, but may require additional configuration.
Software Platforms Wikipedia Homepage Cost
Cameyo Client
Windows
Link Free & Premium licenses available
Turbo Studio
Windows
Link Subscription-based, account required
VMware ThinApp
Windows
Link Premium license, account required

External links[edit]

quickhakker - Program Tutorial: Running 16 bit programs on 64 bit operating systems - YouTube