Each and every desktop or notebook or server is run by an Operating System - the low-level software which interacts with the hardware, including peripherals such as a mouse or a printer, together with any apps that are currently installed on your 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 Operating System. On a server, each and every app runs within the parameters defined by the OS as well - priority, physical memory, processing time, and so on. This is valid for both standard Internet site scripts and server-side software like a media server. In case a virtual server is set up on a physical one, there can be two separate Operating Systems, named guest OS and host OS, which means that you can set up a different software environment on the very same machine.