A computer can act like a new one. 
A computer can act like a new one. 
A computer can act like a new one. This is called a virtual machine. 
There are different kinds of virtual machines. A system virtual machine acts like a whole computer. It uses a hypervisor to manage the hardware. A hypervisor is a tool that shares the host's parts. This keeps each guest isolated from the others. There are also process virtual machines. These run as a normal app inside the host. They help a program run the same way on any computer. The Java virtual machine is a famous example. This makes it easy to write code for many different machines. 
A virtual machine is a way to make a computer act like another computer system. 
There are different ways these machines work. A system virtual machine acts like a whole computer. It uses a tool called a hypervisor to manage the hardware. The hypervisor shares the host's parts so many guests can exist at once. Each guest stays isolated from the others. Modern hypervisors often use hardware-assisted virtualization to work better. This means the computer's brain, or CPU, has special features to help the hypervisor.
Process virtual machines help programs run on any computer. They hide the tricky details of the hardware from the software. This makes it easier for programmers to write code that works everywhere. The Java virtual machine is a very famous example of this. Other examples include the .NET Framework and the Parrot virtual machine. Some special versions even help large groups of computers work together as one cluster. These systems let programmers focus on their ideas instead of how machines talk to each other.
People have been working on these ideas since the 1960s. System virtual machines grew from a method called time-sharing. This let many people use one computer at the same time. IBM created important early systems like the CP-40 and the CP-67. These were some of the first to use full virtualization. Process virtual machines also started around the same time. In 1966, the O-code machine was used to help move code to new systems. Later, the Pascal-P system used something called p-code in the 1970s.
Virtual machines are part of our digital world every day. They help servers work more efficiently through server consolidation. This means many tasks can live on one strong machine. They are also great for making new software. Developers can use them to find mistakes or reboot systems very quickly. 
A virtual machine (VM) is the virtualization or emulation of a computer system. In simple terms, it is a software-based version of a physical computer. These machines are built on computer architectures to provide the same functionality as real hardware. They can be created using specialized hardware, software, or a combination of both. 
To understand how this works, we must distinguish between the "host" and the "guest." The physical, real-world hardware running the system is called the host. The virtual machine running on that hardware is called the guest.
System virtual machines, also known as full virtualization VMs, provide a complete substitute for a real machine. These machines allow an entire operating system to execute within the virtual environment. A hypervisor is the key tool used here; it manages and shares the host's hardware resources. Modern hypervisors often use hardware-assisted virtualization. This means the host's central processing unit (CPU) has specific hardware features designed to help the hypervisor run guests more efficiently.
Process virtual machines, or application virtual machines, work differently. Instead of simulating a whole computer, they run as a normal application inside a host operating system. A process VM is created when a specific program starts and is deleted when that program closes. Its main goal is to provide a platform-independent environment. This means a programmer can write code that runs the same way on any device, regardless of the underlying hardware. The Java virtual machine (JVM) is a famous example of this technology. Other examples include the .NET Framework and the Parrot virtual machine.
The history of these technologies dates back to the 1960s. System virtual machines grew out of a concept called time-sharing. This allowed multiple users to use one computer at the same time by switching between programs in small time slices. IBM was a leader in this field with research systems like the CP-40 and CP-67, which provided early examples of full virtualization. Process virtual machines also emerged around 1964. An early example was the META II compiler-writing system. Later, the Pascal-P system in the 1970s used "p-code," a method that influenced many modern interpreters like the Java virtual machine.
Virtual machines offer many practical advantages for modern computing. One major use is server consolidation, where many virtual machines run on one strong physical machine to save resources. They are also used as "sandboxes" for testing unproven or novel software. If the software fails, it only affects the guest, not the host. Developers also use them for better debugging access and faster reboots. In embedded systems, a VM might allow a real-time operating system to run alongside a complex one like Linux. 
There are even specialized process VMs designed for computer clusters. Instead of a single process, these systems use one process per physical machine in a group. They help programmers manage concurrent applications by handling the communication between machines. This allows the programmer to focus on algorithms rather than the complex details of how machines talk to each other. Examples include the Parallel Virtual Machine (PVM) and the Message Passing Interface (MPI). Whether used for massive server farms or running a single application, virtual machines remain a fundamental part of computer science.
🖼️ Images & Media (3)
More to explore
✨ What else?
Related topics you might enjoy
🪜 Step back
Simpler topics to build understanding
What is Nepedia?
A free, ad-free encyclopedia for children. Every article is written at five reading levels, so the same page works for a five-year-old and a fifteen-year-old — use the level switcher above to see this one change. No account needed to read.