Un sistema operativo (SO) es un programa que gestiona los recursos del hardware y provee servicios a los programas de aplicación. Un SO administra la memoria, gestiona el uso de la CPU y los dispositivos de entrada/salida. A lo largo de la historia, los avances en hardware han permitido nuevas funcionalidades en los SO como la multiprogramación y el tratamiento de interrupciones y excepciones para mejorar el rendimiento.