Un sistema operativo es un programa o conjunto de programas que en un sistema informático gestiona los recursos de hardware y provee servicios a los programas de aplicación, ejecutándose en modo privilegiado respecto de los restantes.
Sistema operativo, definicion, historia y componentes basicos
1.
2. Un sistema operativo es un programa o
conjunto de programas que en un sistema
informático gestiona los recursos de
hardware y provee servicios a los programas
de aplicación, ejecutándose en modo
privilegiado respecto de los restantes.
3. Los primeros sistemas (1945-1955) eran
grandes máquinas operadas desde la consola
maestra por los programadores. Durante la
década siguiente (1955-1965) se llevaron a
cabo avances en el hardware: lectoras de
tarjetas, impresoras, cintas magnéticas, etc.
Esto a su vez provocó un avance en el
software: compiladores, ensambladores,
cargadores, manejadores de dispositivos, etc.
4. El problema principal de los primeros
sistemas era la baja utilización de los
mismos, la primera solución fue poner un
operador profesional que lo manejase, con lo
que se eliminaron las hojas de reserva, se
ahorró tiempo y se aumentó la velocidad.
Para ello, los trabajos se agrupaban de forma
manual en lotes mediante lo que se conoce
como procesamiento por lotes (batch) sin
automatizar.
5. Monitores residentes
Según fue avanzando la complejidad de los
programas, fue necesario implementar
soluciones que automatizaran la organización
de tareas sin necesidad de un operador.
Debido a ello se crearon los monitores
residentes: programas que residían en
memoria y que gestionaban la ejecución de
una cola de trabajos. Un monitor residente
estaba compuesto por un cargador, un
Intérprete de comandos y un controlador
(drivers) para el manejo de entrada/salida.
6. Sistemas con almacenamiento temporal de
E/S
Los avances en el hardware crearon el soporte de
interrupciones y posteriormente se llevó a cabo un
intento de solución más avanzado: solapar la E/S de
un trabajo con sus propios cálculos, por lo que se
creó el sistema de búfers con el siguiente
funcionamiento:
1. Un programa escribe su salida en un área de
memoria (búfer 1).
2. El monitor residente inicia la salida desde el buffer y
el programa de aplicación calcula depositando la
salida en el buffer 2.
3. La salida desde el buffer 1 termina y el nuevo
cálculo también.
4. Se inicia la salida desde el buffer 2 y otro nuevo
cálculo dirige su salida al buffer 1.
5. El proceso se puede repetir de nuevo.
7. Hace aparición el disco magnético con lo que
surgen nuevas soluciones a los problemas de
rendimiento. Se eliminan las cintas
magnéticas para el volcado previo de los
datos de dispositivos lentos y se sustituyen
por discos (un disco puede simular varias
cintas). Debido al solapamiento del cálculo de
un trabajo con la E/S de otro trabajo se crean
tablas en el disco para diferentes tareas, lo
que se conoce como Spool (Simultaneous
Peripherial Operation On-Line).
8. Surge un nuevo avance en el hardware: el hardware con
protección de memoria. Lo que ofrece nuevas soluciones a los
problemas de rendimiento:
1. Se solapa el cálculo de unos trabajos con la entrada/salida de
otros trabajos.
2. Se pueden mantener en memoria varios programas.
3. Se asigna el uso de la CPU a los diferentes programas en
memoria.
Debido a los cambios anteriores, se producen cambios en el
monitor residente, con lo que éste debe abordar nuevas tareas,
naciendo lo que se denomina como Sistemas Operativos
multiprogramados, los cuales cumplen con las siguientes
funciones:
1. Administrar la memoria.
2. Gestionar el uso de la CPU (planificación).
3. Administrar el uso de los dispositivos de E/S.
4. Cuando desempeña esas tareas, el monitor residente se
transforma en un sistema operativo multiprogramado.
9. Los componentes básicos de un sistema
operativo son los siguientes:
1. Gestión de procesos
2. Administración de memoria principal
3. Administración de ficheros
4. Gestión de los dispositivos de entrada/salida
(driver)
10. Un procesador se dedica exclusivamente a un
proceso, con todos sus recursos, no puede
dedicar unos recursos a un proceso y el resto a
otro proceso simultáneamente. Incluye:
1. Planificación de procesos: se trata de la parte
del sistema operativo que decide qué proceso
emplea el procesador en cada instante de
tiempo.
2. Mecanismos de comunicación entre procesos:
permiten comunicar a dos procesos del sistema
operativo, tales como la mensajería.
3. Mecanismos de sincronización: permiten
coordinar a procesos que realizan accesos
concurrentes a un cierto recurso.
11. Tiene como objetivo la gestión de la memoria
principal, lo que incluye la gestión del
espacio de memoria principal libre y ocupada,
así como la asignación de memoria principal
a los procesos.
12. Gestiona la manera en que la información se
almacena en dispositivos de entrada/salida
que permiten el almacenamiento estable.
13. Parte del sistema operativo que conoce los
detalles específicos de cada dispositivo, lo
que permite poder operar con él.
Además, el sistema operativo ofrece:
1. Lanzador de aplicaciones: permite el
lanzamiento de un programa. Esto incluye
los intérpretes de órdenes textuales y los
basados en gestores de ventanas.
2. Llamadas al sistema: conjunto de servicios
que los procesos pueden solicitar al sistema
operativo.