En este punto se realizará una mención por los distintos tipos de Sistemas Operativos, dependiendo del número de aplicaciones que ejecutan, del número de usuarios que interactúan, del número de procesadores que manejan o dependiendo de la estructura. A continuación se enumeran los sistemas mencionados:
* Según la utilización de los recursos. Si un sistema operativo se ejecuta en una computadora con un solo procesador se clasifican en sistemas monoprogramados y multiprogramados. Sin embargo si tiene varios procesadores se habla de sistemas multiprocesamiento.
- Sistema monoprogramado. Sólo se permite la ejecución de un programa en el sistema, por lo que el programa se carga en memoria y permanece en ella hasta su finalización.
- Sistema multiprogramado o multitarea. Estos sistemas pueden ejecutar simultánea varias tareas y de varios usuario. El sistema operativo mantiene varios trabajos en la memoria, y mientras uno está a la espera de realizar alguna tarea, por ejemplo la terminación de una operación de entrada/salida (E/S), ya sea el presionar una tecla u otra tarea, el sistema operativo selecciona otro trabajo para que la CPU lo ejecute y esta última no quede vacía de trabajo mientras estos esperan su ejecución. Hoy en día todos los sistemas operativos son multitarea.
- Sistema multiprocesador. Estos sistemas son aquellos que pueden manejar varios procesadores, con lo que se alcanza un mayor rendimiento ya que al tener más procesadores podemos realizar más tareas al mismo tiempo, aunque hay que decir que este aumento no es proporcional al aumento del número de procesadores. A este tipo de sistema también se le llama computadoras paralelas o multicomputadoras, ya que cada procesador tiene una copia del sistema operativo, y éstas se comunican entre sí para el manejo de las tareas, repartiéndose las mismas entre los procesadores, es decir, una tarea es ejecutada en proporción por todos los procesadores.
* Según la interactividad. En este caso se habla de los sistemas dependiendo del tipo de trabajo y los servicios que se presta a los usuarios se habla de sistemas de procesos por lotes, sistemas de tiempo compartido y sistemas de tiempo real.
- Sistemas de procesamiento por lotes (Batch). En este tipo de sistemas no existe intervención del usuario durante la ejecución de los trabajos. Cada trabajo consiste en una relación de pasos secuenciales, que al juntarse forman un lote. Estos procesamientos son largos y no tienen límite de tiempo en su ejecución. - Sistemas de tiempo compartido. En este tipo de sistemas los procesos se ejecutan de manera simultánea mientras la CPU conmuta entre ellos, de manera que el usuario es ajeno a la misma. En estos sistemas los usuarios sí pueden interactuar con los programas durante su ejecución. - Sistemas de tiempo real. Se caracterizan porque maximizan el tiempo en el que se manda la información, por ello se utilizan para procesos delicados, como por ejemplo la ejecución por parte del brazo de un robot en una planta de ensamblaje de vehículos. Dicho robot debe obtener la información de ejecución dentro de unos márgenes estrictos de tiempo, ni antes ni después.
* Según el número de usuarios. En este caso se habla de los sistemas dependiendo del tipo de trabajo y los servicios que se presta a los usuarios se habla de sistemas de procesos por lotes, sistemas de tiempo compartido y sistemas de tiempo real.
- Sistema operativo de computadora personal. Se puede también denominar sistema monousuario. Atiende al número de usuarios que utilizan dicho sistema al mismo tiempo. En el caso de los monousuario hasta que la persona que está utilizando el equipo no termina, éste no puede ser utilizado por otra. El sistema operativo de computadora personal tiende a ser monousuario, ya que es un sistema enfocado a maximizar la comodidad del usuario y a responder con rapidez a las necesidades de éste. Como ejemplo actual de este sistema podemos mencionar a Windows 7, que excepto en algunas versiones mediante la herramienta de terminal server se puede convertir en multiusuario, la mayoría es monousuario.
- Sistema operativo servidor o multiusuario. Al contrario que el anterior, en este sistema concurren más de un usuario de forma simultánea desde diferentes ubicaciones. Por ejemplo el caso de los servidores web, los cuales sirven las páginas alojadas en los mismos a través de internet a todo aquel que las visite. Entre los sistemas operativos de servidor encontramos a UNIX, Windows Server y Linux.
*Según el número de computadoras. Dependiendo del número de computadoras que formen parte del sistema, se puede hablar de sistemas centralizados o sistemas distribuidos.
- Sistemas centralizados. Este tipo de sistemas es aquel que utiliza los recursos de una sola computadora, como es la memoria, CPU, discos, periféricos. Este tipo de sistema planteaba un problema, y es que cuando se interconectaban ordenadores a uno principal, cuando este último requería un cambio de hardware para aumentar su capacidad, ello era más costoso que añadir nuevos computadores.
- Sistemas distribuidos. Como lo define Tanenbaum, “Un sistema distribuido es una colección de computadoras independientes que aparecen ante los usuarios del sistema como una única computadora”. En este tipo de sistemas se utiliza al mismo tiempo los recursos de los distintos equipos, ya bien sea el hardware o el software de los mismos, por lo que las computadoras se comunican entre sí a través de distintos medios de comunicación, como pueden ser líneas de alta velocidad o líneas telefónicas. Este tipo de sistemas puede abarcar desde unas pocas computadoras hasta miles o millones de ellas, enlazadas a través de internet. Estos recursos que son compartidos son manejados por un gestor de recursos, que es un software que se encarga de controlar dichos recursos.
* Según la estructura del sistema operativo. En este caso se encuentra los distintos sistemas dependiendo del diseño interno de los mismos. Entre ellos encontramos los sistemas monolíticos, los sistemas en capas, las máquinas virtuales y el sistema cliente-servidor.
- Sistemas monolíticos. Son sistemas pequeños, sencillos y limitados. No tienen una estructura definida, sino que todos sus componentes se encuentran agrupados en un único programa. Cada conjunto de procedimientos puede invocar a cualquiera de los otros procedimientos. Un ejemplo de este tipo de sistemas es el sistema MS-Dos.
- Sistema por capas. El sistema se organiza como una jerarquía de capas, donde cada capa ofrece una interfaz a la capa superior, y sólo utiliza los servicios que ofrece la capa inferior. Cada capa tiene funciones específicas, así cada capa se encarga de una parte del sistema operativo.
- Sistema de máquina virtual. Este sistema será tratado de una manera más amplia en el siguiente punto 2.3.
- Sistema cliente-servidor. El sistema consiste en un conjunto de módulos autónomos, los cuales ponen a disposición de los demás una serie de servicios o competencias. Es decir, cada uno de los módulos actúan como servidores que atienden las peticiones de otros módulos que actuarían como clientes. Este tipo de sistema es muy apropiado para los sistemas distribuidos.
No hay comentarios:
Publicar un comentario