Tipos de sistemas operativos, ¿Cómo se diferencian?
En esta entrada de hoy ,explicaremos los distintos tipos de sistemas operativos.
Sistemas operativos monoprogramables
Sólo hay un programa en ejecución cada vez, al cual se le asigna toda la memoria disponible (impidiéndole acceder a la reservada por el s.o.). Además no se gestiona concurrencia de L/E, ni se asignan ni liberan periféricos.
Se podría distinguir entre los sistemas operativos en tandas (o por lotes) y los interactivos, pero para el núcleo del s.o. no hay diferencia entre ambos.
En los sistemas por tandas el monitor de encadenamiento recoge las órdenes una a una y gestiona que se ejecuten, imprimiendo el registro histórico del trabajo.
En los sistemas interactivos, el intérprete de órdenes asume el trabajo del monitor de encadenamiento, lee del teclado y presenta por pantalla los posibles errores o resultados del trabajo. La diferencia principal es que el monitor de encadenamiento debe recordar los errores detectados, ya que condicionan la ejecución de los pasos siguientes del trabajo.
Sistemas operativos multiprogramables
Sistemas con utilización compartida de la máquina. Maneras de funcionar:
- MULTIPROGRAMACIÓN: Se ejecutan varios programas con un único procesador, suele haber varios programas en memoria a la vez, pero estos programas son independientes y el s.o. debe garantizar que un programa no pueda accede a la zona de otro.
- TAREA MULTIPROGRAMADA: varios programas funcionan en cooperación compartiendo zonas de memoria, dispositivos L/E …, el s.o. debe permitirlo y facilitarlo. Se usan términos como multitarea y programación concurrente.
- MULTIUSUARIO: varios usuarios trabajando simultáneamente, por tanto hay multiprogramación. El s.o. debe garantizarlo dándole entornos personales a cada uno, comprobando su identidad, llevando contabilidad de los recursos,…
- MULTIACCESO: se accede desde varios terminales al mismo tiempo. No implica multiprogramación.
- MULTIPROCESAMIENTO o siatemas multiprocesadores: la máquina tiene varios procesadores y cada uno puede funcionar independientemente de los demás. La memoria puede ser compartida o separada. Cada microprocesador puede funcionar como monoprogramado o multiprogramado. Si los procesos componen una actividad común se designa como “programación paralela”.
Atendiendo a la manera de prestar el servicio se clasifican en:
- SISTEMAS EN TANDA: ejecutan varios trabajos por lotes sin ninguna relación entre ellos.
Planificación: se pueden establecer varios procedimientos para planificar procesos, pero es más importante la planificación de trabajos (la secuencia en que se van a procesar los pendientes).
Gestión de Memoria: Aislamiento total entre trabajos, no hay comunicación entre ello.
L/E: es importante asignar y liberar los periféricos dedicados para evitar interbloqueos (se puede hacer antes o durante la ejecución).
Archivos: Se gestiona el espacio ocupado para buscar el mayor aprovechamiento de las unidades de disco. El acceso a un archivo por parte de varios programas lo gestiona la planificación.
- SISTEMAS INTERACTIVOS DE TIEMPO COMPARTIDO: distintos usuarios utilizan en sistema (cada uno desde un termina).
Planificación: lo importante es tener un buen algoritmo que reparta el tiempo de procesador entre los distintos usuarios.
Gestión de Memoria: aislamiento entre programas de distintos usuarios y poca comunicación entre los de un mismo usuario.
L/E: Tratar a múltiples usuarios y dispositivos, pero como la L/E es lenta por terminal, no resulta crítica. El s.o. debe permitir la asignación y desasignación de periféricos dedicados.
Archivos: gestionar bien el acceso protegiendo los archivos y aceptando que puede haber archivos compartidos por usuarios. Se debe equilibrar el buen aprovechamiento con la rapidez de acceso.
- SISTEMAS DE TIEMPO REAL: hay gran nº de sucesos externos al sistema que se atienden por interrupción y que se deben procesar en un tiempo breve y limitado.
Planificación: rápidos tiempos de respuesta con procesos asociados a sucesos; régimen de prioridades (planificación apropiativa por prioridad). Estos procesos deben ocupar poco tiempo de procesador por si saltan muchos sucesos a la vez.
Memoria: debe permitir áreas de datos compartidas entre procesos y los procesos deben permanecer residentes en ella para que el tiempo de respuesta sea el mínimo.
L/E: complicada, pues hay que gestionar múltiples interrupciones y almacenar datos mientras se atienden interrupciones.
Archivos: suelen ser archivos pequeños, pero si los sistemas son mayores suele haber también archivos históricos. Lo importante es la velocidad de acceso, siendo secundario el buen aprovechamiento.
- SISTEMAS COMBINADOS: combinan características de todos, principalmente de “en ….tanda” y de “interactivos”.
Sistemas distribuidos.
Son sistemas informáticos autónomos capaces de comunicarse y cooperar mediante las conexiones entre ellos. Es una evolución de las redes.
El sistema distribuido gobierna todos los equipos informáticos, ofreciendo al usuario la apariencia de una máquina abstracta. El aspecto fundamental es la «transparencia».
Se deben permitir comunicaciones entre procesos remotos, llamadas a procesos remotos, distribución de cálculos entre diferentes máquinas, un sistema de archivos distribuido, directorios compartidos, etc..
Deja una respuesta