Con el paso del tiempo, los Sistemas Operativos fueron
clasificándose de diferentes maneras, dependiendo del uso o de la aplicación
que se les daba. A continuación se mostrarán diversos tipos de Sistemas
Operativos que existen en la actualidad, con algunas de sus características:
Sistemas Operativos de multiprogramación
Es el modo de funcionamiento disponible en algunos sistemas
operativos, mediante el cual una computadora procesa varias tareas al mismo
tiempo. Existen varios tipos de multitareas. La conmutación de contextos
(context Switching) es un tipo muy simple de multitarea en el que dos o más
aplicaciones se cargan al mismo tiempo, pero en el que solo se esta procesando
la aplicación que se encuentra en primer plano (la que ve el usuario). Para
activar otra tarea que se encuentre en segundo plano, el usuario debe traer al
primer plano la ventana o pantalla que contenga esa aplicación. En la
multitarea cooperativa, la que se utiliza en el sistema operativo Macintosh,
las tareas en segundo plano reciben tiempo de procesado durante los tiempos
muertos de la tarea que se encuentra en primer plano (por ejemplo, cuando esta
aplicación esta esperando información del usuario), y siempre que esta
aplicación lo permita. En los sistemas multitarea de tiempo compartido, como
OS/2, cada tarea recibe la atención del microprocesador durante una fracción de
segundo. Para mantener el sistema en orden, cada tarea recibe un nivel de
prioridad o se procesa en orden secuencial. Dado que el sentido temporal del
usuario es mucho más lento que la velocidad de procesamiento del ordenador, las
operaciones de multitarea en tiempo compartido parecen ser simultáneas.
Se distinguen por sus habilidades para poder soportar la
ejecución de dos o más trabajos activos (que se están ejecutado) al mismo
tiempo. Esto trae como resultado que la Unidad Central de Procesamiento (UCP)
siempre tenga alguna tarea que ejecutar, aprovechando al máximo su utilización.
Su objetivo es tener a varias tareas en la memoria principal, de
manera que cada uno está usando el procesador, o un procesador distinto, es
decir, involucra máquinas con más de una UCP.
Sistemas Operativos como UNIX, Windows 95, Windows 98, Windows
NT, MAC-OS, OS/2, soportan la multitarea.
Las características de un Sistema Operativo de multiprogramación
o multitarea son las siguientes:
·
Mejora productividad del sistema y utilización de recursos.
·
Multiplexa recursos entre varios programas.
·
Generalmente soportan múltiples usuarios (multiusuarios).
·
Proporcionan facilidades para mantener el entorno de usuarios
individuales.
·
Requieren validación de usuario para seguridad y protección.
·
Proporcionan contabilidad del uso de los recursos por parte de
los usuarios.
·
Multitarea sin soporte multiusuario se encuentra en algunos
computadores personales o en sistemas de tiempo real.
·
Sistemas multiprocesadores son sistemas multitareas por
definición ya que soportan la ejecución simultánea de múltiples tareas sobre
diferentes procesadores.
·
En general, los sistemas de multiprogramación se caracterizan
por tener múltiples programas activos compitiendo por los recursos del sistema:
procesador, memoria, dispositivos periféricos.
Sistema Operativo Monotareas.
Los sistemas operativos monotareas son más primitivos y es todo
lo contrario al visto anteriormente, es decir, solo pueden manejar un proceso
en cada momento o que solo puede ejecutar las tareas de una en una. Por ejemplo
cuando la computadora esta imprimiendo un documento, no puede iniciar otro
proceso ni responder a nuevas instrucciones hasta que se termine la impresión
Sistema Operativo Monousuario.
Los sistemas monousuarios son aquellos que nada más puede
atender a un solo usuario, gracias a las limitaciones creadas por el hardware,
los programas o el tipo de aplicación que se este ejecutando.
Estos tipos de sistemas son muy simples, porque todos los
dispositivos de entrada, salida y control dependen de la tarea que se esta
utilizando, esto quiere decir, que las instrucciones que se dan, son procesadas
de inmediato; ya que existe un solo usuario. Y están orientados principalmente
por los microcomputadores.
Sistema Operativo Multiusuario.
Es todo lo contrario a monousuario; y en esta categoría se
encuentran todos los sistemas que cumplen simultáneamente las necesidades de
dos o más usuarios, que comparten mismos recursos. Este tipo de sistemas se
emplean especialmente en redes.
En otras palabras consiste en el fraccionamiento del tiempo
(timesharing).
Sistemas Operativos por lotes.
Los Sistemas Operativos por lotes, procesan una gran cantidad de
trabajos con poca o ninguna interacción entre los usuarios y los programas en
ejecución. Se reúnen todos los trabajos comunes para realizarlos al mismo
tiempo, evitando la espera de dos o más trabajos como sucede en el
procesamiento en serie. Estos sistemas son de los más tradicionales y antiguos,
y fueron introducidos alrededor de 1956 para aumentar la capacidad de
procesamiento de los programas.
Cuando estos sistemas son bien planeados, pueden tener un tiempo
de ejecución muy alto, porque el procesador es mejor utilizado y los Sistemas
Operativos pueden ser simples, debido a la secuenciabilidad de la ejecución de
los trabajos.
Algunos ejemplos de Sistemas Operativos por lotes exitosos son
el SCOPE, del DC6600, el cual está orientado a procesamiento científico pesado,
y el EXEC II para el UNIVAC 1107, orientado a procesamiento académico.
Algunas otras características con que cuentan los Sistemas
Operativos por lotes son:
·
Requiere que el programa, datos y órdenes al sistema sean
remitidos todos juntos en forma de lote.
·
Permiten poca o ninguna interacción usuario/programa en
ejecución.
·
Mayor potencial de utilización de recursos que procesamiento
serial simple en sistemas multiusuarios.
·
No conveniente para desarrollo de programas por bajo tiempo de
retorno y depuración fuera de línea.
·
Conveniente para programas de largos tiempos de ejecución (ej,
análisis estadísticos, nóminas de personal, etc.).
·
Se encuentra en muchos computadores personales combinados con
procesamiento serial.
·
Planificación del procesador sencilla, típicamente procesados en
orden de llegada.
·
Planificación de memoria sencilla, generalmente se divide en
dos: parte residente del S.O. y programas transitorios.
·
No requieren gestión crítica de dispositivos en el tiempo.
·
Suelen proporcionar gestión sencilla de manejo de archivos: se
requiere poca protección y ningún control de concurrencia para el acceso.
Sistemas Operativos de tiempo real.
Los Sistemas Operativos de tiempo real son aquellos en los
cuales no tiene importancia el usuario, sino los procesos. Por lo general,
están subutilizados sus recursos con la finalidad de prestar atención a los
procesos en el momento que lo requieran. se utilizan en entornos donde son
procesados un gran número de sucesos o eventos.
Muchos Sistemas Operativos de tiempo real son construidos para
aplicaciones muy específicas como control de tráfico aéreo, bolsas de valores,
control de refinerías, control de laminadores. También en el ramo
automovilístico y de la electrónica de consumo, las aplicaciones de tiempo real
están creciendo muy rápidamente. Otros campos de aplicación de los Sistemas
Operativos de tiempo real son los siguientes:
·
Control de trenes.
·
Telecomunicaciones.
·
Sistemas de fabricación integrada.
·
Producción y distribución de energía eléctrica.
·
Control de edificios.
·
Sistemas multimedia.
Algunos ejemplos de Sistemas Operativos de tiempo real son:
VxWorks, Solaris, Lyns OS y Spectra. Los Sistemas Operativos de tiempo real,
cuentan con las siguientes características:
·
Se dan en entornos en donde deben ser aceptados y procesados
gran cantidad de sucesos, la mayoría externos al sistema computacional, en
breve tiempo o dentro de ciertos plazos.
·
Se utilizan en control industrial, conmutación telefónica,
control de vuelo, simulaciones en tiempo real., aplicaciones militares, etc.
·
Objetivo es proporcionar rápidos tiempos de respuesta.
·
Procesa ráfagas de miles de interrupciones por segundo sin
perder un solo suceso.
·
Proceso se activa tras ocurrencia de suceso, mediante interrupción.
·
Proceso de mayor prioridad expropia recursos.
·
Por tanto generalmente se utiliza planificación expropiativa
basada en prioridades.
·
Gestión de memoria menos exigente que tiempo compartido,
usualmente procesos son residentes permanentes en memoria.
·
Población de procesos estática en gran medida.
·
Poco movimiento de programas entre almacenamiento secundario y
memoria.
·
Gestión de archivos se orienta más a velocidad de acceso que a
utilización eficiente del recurso.
Sistemas Operativos de tiempo compartido.
Permiten la simulación de que el sistema y sus recursos son
todos para cada usuario. El usuario hace una petición a la computadora, esta la
procesa tan pronto como le es posible, y la respuesta aparecerá en la terminal
del usuario.
Los principales recursos del sistema, el procesador, la memoria,
dispositivos de E/S, son continuamente utilizados entre los diversos usuarios,
dando a cada usuario la ilusión de que tiene el sistema dedicado para sí mismo.
Esto trae como consecuencia una gran carga de trabajo al Sistema Operativo,
principalmente en la administración de memoria principal y secundaria.
Ejemplos de Sistemas Operativos de tiempo compartido son
Multics, OS/360 y DEC-10.
Características de los Sistemas Operativos de tiempo compartido:
·
Populares representantes de sistemas multiprogramados
multiusuario, ej: sistemas de diseño asistido por computador, procesamiento de
texto, etc.
·
Dan la ilusión de que cada usuario tiene una máquina para sí.
·
Mayoría utilizan algoritmo de reparto circular.
·
Programas se ejecutan con prioridad rotatoria que se incrementa
con la espera y disminuye después de concedido el servicio.
·
Evitan monopolización del sistema asignando tiempos de
procesador (time slot).
·
Gestión de memoria proporciona protección a programas
residentes.
·
Gestión de archivo debe proporcionar protección y control de
acceso debido a que pueden existir múltiples usuarios accesando un mismo
archivos.
Sistemas Operativos distribuidos.
Permiten distribuir trabajos, tareas o procesos, entre un
conjunto de procesadores. Puede ser que este conjunto de procesadores esté en
un equipo o en diferentes, en este caso es trasparente para el usuario. Existen
dos esquemas básicos de éstos. Un sistema fuertemente acoplado es a es aquel
que comparte la memoria y un reloj global, cuyos tiempos de acceso son
similares para todos los procesadores. En un sistema débilmente acoplado los
procesadores no comparten ni memoria ni reloj, ya que cada uno cuenta con su
memoria local.
Los sistemas distribuidos deben de ser muy confiables, ya que si
un componente del sistema se compone otro componente debe de ser capaz de
reemplazarlo.
Entre los diferentes Sistemas Operativos distribuidos que
existen tenemos los siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring,
Amoeba, Taos, etc.
Características de los Sistemas Operativos distribuidos:
·
Colección de sistemas autónomos capaces de comunicación y
cooperación mediante interconexiones hardware y software .
·
Gobierna operación de un S.C. y proporciona abstracción de
máquina virtual a los usuarios.
·
Objetivo clave es la transparencia.
·
Generalmente proporcionan medios para la compartición global de
recursos.
·
Servicios añadidos: denominación global, sistemas de archivos
distribuidos, facilidades para distribución de cálculos (a través de
comunicación de procesos internodos, llamadas a procedimientos remotos, etc.).
Sistemas Operativos de red.
Son aquellos sistemas que mantienen a dos o más computadoras
unidas através de algún medio de comunicación (físico o no), con el objetivo
primordial de poder compartir los diferentes recursos y la información del
sistema.
El primer Sistema Operativo de red estaba enfocado a equipos con
un procesador Motorola 68000, pasando posteriormente a procesadores Intel como
Novell Netware.
Los Sistemas Operativos de red mas ampliamente usados son:
Novell Netware, Personal Netware, LAN Manager, Windows NT Server, UNIX,
LANtastic.
Sistemas Operativos paralelos.
En estos tipos de Sistemas Operativos se pretende que cuando
existan dos o más procesos que compitan por algún recurso se puedan realizar o
ejecutar al mismo tiempo.
En UNIX existe también la posibilidad de ejecutar programas sin
tener que atenderlos en forma interactiva, simulando paralelismo (es decir,
atender de manera concurrente varios procesos de un mismo usuario). Así, en
lugar de esperar a que el proceso termine de ejecutarse (como lo haría
normalmente), regresa a atender al usuario inmediatamente después de haber
creado el proceso.
Ejemplos de estos tipos de Sistemas Operativos están: Alpha,
PVM, la serie AIX, que es utilizado en los sistemas RS/6000 de IBM.
No hay comentarios:
Publicar un comentario