En una definición informal 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.
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.
El sistema operativo como máquina virtual:
Un computador se compone de uno o más procesadores o CPUs,
memoria principal o RAM, memoria secundaria (discos), tarjetas de expansión
(tarjetas de red, modems y otros), monitor, teclado, mouse y otros
dispositivos. O sea, es un sistema complejo. Escribir programas que hagan uso
correcto de todas estas componentes no es una tarea trivial. Peor aún si
hablamos de uso óptimo. Si cada programador tuviera que preocuparse de, por
ejemplo, como funciona el disco duro del computador, teniendo además siempre
presentes todas las posibles cosas que podrían fallar, entonces a la fecha se
habría escrito una cantidad bastante reducida de programas.
El sistema operativo como administrador de recursos:
La otra tarea de un sistema operativo consiste en administrar
los recursos de un computador cuando hay dos o más programas que ejecutan
simultáneamente y requieren usar el mismo recurso (como tiempo de CPU, memoria o
impresora).
En resumen, el sistema operativo debe llevar la cuenta acerca
de quién está usando qué recursos; otorgar recursos a quienes los solicitan
(siempre que el solicitante tenga derechos adecuados sobre el recurso); y
arbitrar en caso de solicitudes conflictivas.
Las tareas que generalmente realiza un Sistema Operativo son
las siguientes:
-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.
No hay comentarios:
Publicar un comentario