Un sistema operativo administra los recursos de hardware y software de una computadora, y permite la comunicación entre el usuario y la máquina. Se compone de módulos para administrar la memoria, los archivos, los dispositivos de entrada/salida, y asignar el tiempo de procesamiento. Puede ser monousuario, multiusuario, monotarea o multitarea, y uniproceso o multiproceso.