Clasificacion de los
sistemas operativos
Para hacer una clasificación de sistemas operativos para redes,
primero debemos definir los conceptos. Un sistema operativo (SO) es
una suma de programas informáticos que establecen de manera parecida al
lenguaje humano la comunicación entre el usuario y la computadora
controlando todos los recursos de manera eficiente.
Una red de computadoras, de ordenadores, red informática o red a secas es un conjunto de computadoras conectadas entre sí que comparten información, recursos como impresoras, grabadores de dvd, etc. y servicios como correo electrónico, Chat, juegos, etc.
Una red de computadoras, de ordenadores, red informática o red a secas es un conjunto de computadoras conectadas entre sí que comparten información, recursos como impresoras, grabadores de dvd, etc. y servicios como correo electrónico, Chat, juegos, etc.
Clasificación de
sistemas operativos de redes por su estructura:
Sistemas operativos de estructura monolítica ,
Sistemas operativos de estructura monolítica ,
Es la estructura de los primeros sistemas operativos constituidos
fundamentalmente por un solo programa compuesto de un conjunto de
rutinas entrelazadas de tal forma que cada una puede llamar a
cualquier otra. Las características fundamentales de este
tipo de estructura son:
- Construcción del programa final a base de módulos compilados separadamente que se unen a través del ligador.
- Buena definición de parámetros de enlace entre las distintas rutinas existentes, que puede provocar mucho acoplamiento.
- Carecen de protecciones y privilegios al entrar a rutinas que manejan diferentes aspectos de los recursos de la computadora, como memoria, disco, etc.
Generalmente están hechos a medida, por lo que
son eficientes y rápidos en su ejecución y gestión, pero por lo mismo carecen
de
flexibilidad para soportar diferentes ambientes de trabajo o
tipos de aplicaciones.
Sistemas operativos de estructura jerárquica. Con el tiempo los sistemas operativos se van mejorando y se hizo necesario que el sistema operativo tuviese varias partes bien definidas del resto y con una interfase propia. Con estas partes, capas o niveles se pretendía entre otras que cosas que la partes mas importantes del sistema operativo estuviesen a salvo de intrusos.
Sistemas operativos de estructura jerárquica. Con el tiempo los sistemas operativos se van mejorando y se hizo necesario que el sistema operativo tuviese varias partes bien definidas del resto y con una interfase propia. Con estas partes, capas o niveles se pretendía entre otras que cosas que la partes mas importantes del sistema operativo estuviesen a salvo de intrusos.
Se constituyó una estructura jerárquica o de
niveles en los sistemas operativos, el primero de los cuales fue
denominado THE (Technische Hogeschool, Eindhoven), de Dijkstra,
que se utilizó con fines didácticos. Se puede
pensar también en estos sistemas como si fueran
`multicapa'. Multics y Unix caen en esa
categoría.
En la estructura anterior se basan prácticamente
la mayoría de los sistemas operativos actuales. Otra forma
de ver este tipo de sistema es la denominada de anillos
concéntricos o "rings".
n el sistema de anillos, cada uno tiene una apertura,
conocida como puerta o trampa (trap), por donde pueden entrar las
llamadas de las capas inferiores. De esta forma, las zonas
más internas del sistema operativo o núcleo del
sistema estarán más protegidas de accesos
indeseados desde las capas más externas. Las capas
más internas serán, por tanto, más
privilegiadas que las externas.
Máquina Virtual.
Se trata de un tipo de sistemas operativos que presentan una interface a cada proceso, mostrando una máquina que parece idéntica a la máquina real subyacente. Estos sistemas operativos separan dos conceptos que suelen estar unidos en el resto de sistemas: la multiprogramación y la máquina extendida. El objetivo de los sistemas operativos de máquina virtual es el de integrar distintos sistemas operativos dando la sensación de ser varias máquinas diferentes.
El núcleo de estos sistemas operativos se denomina monitor virtual y tiene como misión llevar a cabo la multiprogramación, presentando a los niveles superiores tantas máquinas virtuales como se soliciten. Estas máquinas virtuales no son máquinas extendidas, sino una réplica de la máquina real, de manera que en cada una de ellas se pueda ejecutar un sistema operativo diferente, que será el que ofrezca la máquina extendida al usuario.
Se trata de un tipo de sistemas operativos que presentan una interface a cada proceso, mostrando una máquina que parece idéntica a la máquina real subyacente. Estos sistemas operativos separan dos conceptos que suelen estar unidos en el resto de sistemas: la multiprogramación y la máquina extendida. El objetivo de los sistemas operativos de máquina virtual es el de integrar distintos sistemas operativos dando la sensación de ser varias máquinas diferentes.
El núcleo de estos sistemas operativos se denomina monitor virtual y tiene como misión llevar a cabo la multiprogramación, presentando a los niveles superiores tantas máquinas virtuales como se soliciten. Estas máquinas virtuales no son máquinas extendidas, sino una réplica de la máquina real, de manera que en cada una de ellas se pueda ejecutar un sistema operativo diferente, que será el que ofrezca la máquina extendida al usuario.
Sistemas operativos cliente-servidor. Este tipo de sistemas operativos para redes es el que actualmente esta en uso en la mayoría de las computadoras. Es un sistema operativo muy compatible, porque sirven para cualquier computadora y prácticamente para todos los programas. El sistema operativo cliente-servidor el usuario o cliente hace una petición al servidor correspondiente para tener acceso a un archivo o efectuar una actuación de entrada o salida sobre un dispositivo concreto.
Clasificación de
sistemas operativos para redes por la forma de ofrecer sus servicios:
- Sistemas operativos de red. Son aquellos sistemas operativos capaces de relacionarse eficientemente con sistemas operativos instalados en otras computadoras transmitiendo o intercambiando información, archivos, ejecutando comandos remotos, etc.
- Sistemas operativos distribuidos. Este tipo de sistema operativo de red lleva a cabo todos los servicios que realizaba el sistema operativo de red, pero además consigue compartir más recursos como impresoras, memorias, unidades centrales de proceso (CPU), discos duros, etc. Y el usuario no necesita saber la ubicación del recurso, ni ejecutar comandos, sino que los conoce por nombres y los usa como si fuesen locales o propios de su computadora.
Sistemas Operativos por
Servicios(Visión Externa).
Esta clasificación es la más
comúnmente usada y conocida desde el punto de vista del
usuario final. Esta clasificación se comprende
fácilmente con el cuadro sinóptico que a
continuación se muestra:
Por Número de Usuarios:
- Sistema Operativo Monousuario.
Los sistemas operativos monousuarios son aquéllos que
soportan a un usuario a la vez, sin importar el número de
procesadores que
tenga la computadora o el número de procesos o
tareas que el usuario pueda ejecutar en un mismo instante de
tiempo. Las computadoras personales típicamente se han
clasificado en este renglón.
En otras palabras 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.
En otras palabras 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.
- Sistema Operativo Multiusuario.
Los sistemas operativos multiusuarios son capaces de dar servicio
a más de un usuario a la vez, ya sea por medio de varias
terminales conectadas a la computadora o por medio de sesiones
remotas en una red de comunicaciones.
No importa el número de procesadores en la máquina
ni el número de procesos que cada usuario puede ejecutar
simultáneamente.
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).
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).
Por el Número de Tareas:
- Sistema Operativo Monotarea.
Los sistemas monotarea son aquellos que sólo permiten una
tarea a la vez por usuario. Puede darse el caso de un sistema
multiusuario y monotarea, en el cual se admiten varios usuarios
al mismo tiempo pero cada uno de ellos puede estar haciendo solo
una tarea a la vez.
Los sistemas operativos monotareas son más primitivos y, solo pueden manejar un proceso en cada momento o que solo puede ejecutar las tareas de una en una.
Los sistemas operativos monotareas son más primitivos y, solo pueden manejar un proceso en cada momento o que solo puede ejecutar las tareas de una en una.
- Sistema Operativo Multitarea.
Un sistema operativo multitarea es aquél que le permite al
usuario estar realizando varias labores al mismo tiempo.
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. 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.
Un sistema operativo multitarea puede estar editando el código fuente de un programa durante su depuración mientras compila otro programa, a la vez que está recibiendo correo electrónico en un proceso en background. Es común encontrar en ellos interfaces gráficas orientadas al uso de menús y el ratón, lo cual permite un rápido intercambio entre las tareas para el usuario, mejorando su productividad.
Un sistema operativo multitarea se distingue por su capacidad para soportar la ejecución concurrente de dos o más procesos
activos. La multitarea se implementa generalmente manteniendo el código y los datos de varios procesos simultáneamente en memoria y multiplexando el procesador y los dispositivos de E/S entre ellos.
La multitarea suele asociarse con soporte hardware y software para protección de memoria con el fin de evitar que procesos corrompan el espacio de direcciones y el comportamiento de otros procesos residentes.
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. 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.
Un sistema operativo multitarea puede estar editando el código fuente de un programa durante su depuración mientras compila otro programa, a la vez que está recibiendo correo electrónico en un proceso en background. Es común encontrar en ellos interfaces gráficas orientadas al uso de menús y el ratón, lo cual permite un rápido intercambio entre las tareas para el usuario, mejorando su productividad.
Un sistema operativo multitarea se distingue por su capacidad para soportar la ejecución concurrente de dos o más procesos
activos. La multitarea se implementa generalmente manteniendo el código y los datos de varios procesos simultáneamente en memoria y multiplexando el procesador y los dispositivos de E/S entre ellos.
La multitarea suele asociarse con soporte hardware y software para protección de memoria con el fin de evitar que procesos corrompan el espacio de direcciones y el comportamiento de otros procesos residentes.
Por el Número de Procesadores:
- Sistema Operativo de Uniproceso.
Un sistema operativo uniproceso es aquél que es capaz de
manejar solamente un procesador de la computadora, de manera que
si la computadora tuviese más de uno le sería
inútil. El ejemplo más típico de este tipo
de sistemas es el DOS y MacOS.
- Sistema Operativo de Multiproceso.
Un sistema operativo multiproceso se refiere al número de
procesadores del sistema, que es más de uno y éste
es capaz de usarlos todos para distribuir su carga de trabajo.
Generalmente estos sistemas trabajan de dos formas:
simétrica o asimétricamente.
Asimétrica.
Cuando se trabaja de manera asimétrica, el sistema operativo selecciona a uno de los procesadores el cual jugará el papel de procesador maestro y servirá como pivote para distribuir la carga a los demás procesadores, que reciben el nombre de esclavos.
Simétrica.Cuando se trabaja de manera asimétrica, el sistema operativo selecciona a uno de los procesadores el cual jugará el papel de procesador maestro y servirá como pivote para distribuir la carga a los demás procesadores, que reciben el nombre de esclavos.
y Cuando se trabaja de manera simétrica, los procesos o partes de ellos (threads) son enviados indistintamente a cual quiera de los procesadores disponibles, teniendo, teóricamente, una mejor distribuciónequilibrio en la carga de trabajo bajo este esquema.
Se dice que un thread es la parte activa en memoria y corriendo de un proceso, lo cual puede consistir de un área de memoria, un conjunto de registros con valores específicos, la pila y otros valores de contexto.
No hay comentarios:
Publicar un comentario