SISTEMA OPERATIVO.
Es un software que actúa de interfaz entre los dispositivos de hardware y los programas usados por el usuario para manejar un computador.1 Es responsable de gestionar, coordinar las actividades y llevar a cabo el intercambio de los recursos y actúa como estación para las aplicaciones que se ejecutan en la máquina.
Un Sistema Operativo es el software encargado de ejercer el control y coordinar el uso del hardware entre diferentes programas de aplicación y los diferentes usuarios. Es un administrador de los recursos de hardware del sistema.
Es un sistema que consiste en ofrecer una distribución ordenada y controlada de los procesadores, memorias y dispositivos de E/S entre los diversos programas que compiten por ellos.
A pesar de que todos nosotros usamos sistemas operativos casi a diario, es difícil definir qué es un sistema operativo. En parte, esto se debe a que los sistemas operativos realizan dos funciones diferentes.
Uno de los propósitos de un sistema operativo como programa estación principal, consiste en gestionar los recursos de localización y protección de acceso del hardware
Proveer una máquina virtual, es decir, un ambiente en el cual el usuario pueda ejecutar programas de manera conveniente, protegiéndolo de los detalles y complejidades del hardware.
Administrar eficientemente los recursos del computador.
Las tareas que generalmente realiza un S.O.
• -Realizar el interfaz sistema-usuario.
• -Compartir los recursos de Hardware entre los usuarios.
• -Permitir a los usuarios compartir sus datos entre ellos.
• -Prevenir que las actividades de un usuario no interfieran en las de los demás usuarios.
• -Calendarizar los recursos de los usuarios.
• -Facilitar el acceso a los dispositivos de E/S.
• -Recuperarse de fallas o errores.
• Llevar el control sobre el uso de los recursos.
Las características más importantes de un S.O. son:
Permitir la concurrencia de procesos, traslapándose el tiempo de entrada/salida (E/S) con el de cálculo y ocupando la memoria con varios programas.
Posibilitar la ejecución de cualquier proceso en el momento que se solicite siempre y cuando haya suficientes recursos libres para él.
Ser eficiente en cuanto a reducir: el tiempo medio que ocupa cada trabajo, el tiempo que no se usa la CPU, el tiempo de respuesta en sistemas multiacceso y el plazo entre dos asignaciones de CPU a un mismo programa.
Ser eficiente en cuanto a aumentar la utilización de recursos en general, tales como memoria, procesadores, dispositivos de E/S, discos magnéticos, datos, etc.
Ser fiable, es decir, un sistema operativo no debe tener errores y debe prever todas las posibles situaciones.
Ser de tamaño pequeño.
Posibilitar y facilitar en lo posible el "diálogo" entre computadora y usuario de la misma.
Permitir compartir entre varios usuarios los recursos de hardware con que cuenta una computadora.
Permitir a los usuarios compartir datos entre ellos, en caso necesario.
Facilitar la E/S de los diferentes dispositivos conectados a una computadora.