Every single personal computer or server is run by an Operating System - the low-level software that communicates with the hardware, including peripherals such as a mouse or a printer, as well as any applications that are currently installed on the system. Any program input through a command line or a Graphical User Interface (GUI) is processed by sending an Application Program Interface (API) request to the OS. On a server, each application runs within the parameters set by the OS as well - priority, physical memory, processing time, etcetera. This goes for both standard website scripts and server-side software such as a media server. When a virtual server is set up on a physical one, there can be two different Operating Systems, referred to as guest OS and host OS, which means that you will be able to set up a different software environment on the same machine.