El sistema operativo (a veces también citado mediante su forma abreviada OS
en inglés) se encarga de crear el vínculo entre los recursos
materiales, el usuario y las aplicaciones (procesador de texto,
videojuegos, etcétera). Cuando un programa desea acceder a un recurso
material, no necesita enviar información específica a los dispositivos
periféricos; simplemente envía la información al sistema operativo, el
cual la transmite a los periféricos correspondientes a través de su
driver (controlador). Si no existe ningún driver, cada programa debe
reconocer y tener presente la comunicación con cada tipo de periférico.
Marejo de dispositovos de entada y salida
El código destinado a manejar la entrada y salida de los diferentes periféricos en un sistema operativo es de una extensión considerable y sumamente complejo. Resuelve las necesidades de sincronizar, atrapar interrupciones y ofrecer llamadas al sistema para los programadores.
Los dispositivos de entrada salida se dividen, en general, en dos tipos: dispositivos orientados a bloques y dispositivos orientados a caracteres.