A Virtual Machine (VM), is an instance of the operating system running on a software layer (the hypervisor). This is as opposed to the operating system running directly on the underlying hardware (physical machine). Generally the VM (referred to as the guest) has no recognition that it is running on a virtualized hardware layer. Exception to this is in the case of paravirtualization. The software that enables an operating system to run as a VM is called the hypervisor. VirtualBox is one such hypervisor.
Some of the virtualization features blur the definition of virtualization. The IOMMU feature for example, allows the VMs to interact directly with the underlying hardware. The “Guest additions” option allow the VMs to interface with the host operating system. These features makes a virtual machine less virtual as it interacts directly with the hardware and host operating system.