How Oracle VirtualBox works?
Oracle VirtualBox is scalable and flexible by design. In theory, software virtualization is not overly complex. You can run multiple OSs on top of VirtualBox. Each guest OS can be independently started, stopped, and paused.
The hypervisor is implemented as a Ring 0 kernel service. The kernel contains a device driver called vboxsrv. This device driver takes care of activities or tasks such as allocating physical memory for the guest virtual machine, loading hypervisor modules for functions such as saving and restoring the guest process context when a host interruption occurs, turning control over to the guest OS to begin execution, and deciding when the VT-x or AMD-V events need to be handled.
The guest itself manages its OS scheduling during its execution. The guest runs as a single process and only when scheduled by a host on the host system. Apart from this, there are additional device drivers present when the guest allows the OS to access resources such as disks, network controllers, and other devices.
Apart from the kernel modules, there are other processes running on the host that support the running guest. When a guest VM is started from the VirtualBox GUI, the VBoxSVC process starts automatically in the background.