Manejo
de sistemas operativos
Docente: Reina Carlota Tunales Del Rivero Fecha: 29-Agosto-2011
Alumna: Alejandra Miss Ceballos Grupo: B
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:
- 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.
Estructura
Jerárquica
A medida que fueron creciendo las necesidades de
los usuarios y se perfeccionaron los sistemas. Se hizo necesaria una mayor
organización del software, del sistema operativo, donde una parte del sistema
contenía subpartes y esto organizado en forma de niveles. Ejemplos: Multics
y Unix.
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.
Cliente-servidor
(Microkernel)
El tipo más reciente de sistemas operativos es el
denominado Cliente-servidor, que puede ser ejecutado en la mayoría de las
computadoras, ya sean grandes o pequeñas.
Este sistema sirve para toda clase de aplicaciones
por tanto, es de propósito general y cumple con las mismas actividades que los
sistemas operativos convencionales.
El núcleo tiene como misión establecer la
comunicación entre los clientes y los servidores. Los procesos pueden ser tanto
servidores como clientes. Por ejemplo, un programa de aplicación normal es un
cliente que llama al servidor correspondiente para acceder a un archivo o
realizar una operación de entrada/salida sobre un dispositivo concreto. A su
vez, un proceso cliente puede actuar como servidor para otro.” [Alcal92]. Este
paradigma ofrece gran flexibilidad en cuanto a los servicios posibles en el
sistema final, ya que el núcleo provee solamente funciones muy básicas de
memoria, entrada/salida, archivos y procesos, dejando a los servidores proveer
la mayoría que el usuario final o programador puede usar. Estos servidores
deben tener mecanismos de seguridad y protección que, a su vez, serán filtrados
por el núcleo que controla el hardware. Actualmente se está trabajando en una
versión de UNIX que contempla en su diseño este paradigma.
Sistemas
Operativos por la Forma de Ofrecer sus Servicios
Esta clasificación también se refiere a una visión
externa, que en este caso se refiere a la del usuario, el cómo acceso los
servicios. Bajo esta clasificación se pueden detectar dos tipos principales:
sistemas operativos de red y sistemas operativos distribuidos.
Sistemas
Operativos de Red
Los sistemas operativos de red se definen como
aquellos que tiene la capacidad de interactuar con sistemas operativos en otras
computadoras por medio de un medio de transmisión con el objeto de intercambiar
información, transferir archivos, ejecutar comandos remotos y un sin fin de
otras actividades. El punto crucial de estos sistemas es que el usuario debe
saber la sintaxis de un conjunto de comandos o llamadas al sistema para
ejecutar estas operaciones, además de la ubicación de los recursos que desee acceder.
Por ejemplo, si un usuario en la computadora hidalgo necesita el archivo
matriz.pas que se localiza en el directorio /software/código en la computadora
Morelos bajo el sistema operativo UNIX, dicho usuario podría copiarlo a través
de la red con los comandos siguientes: hidalgo% hidalgo% rcp
morelos:/software/codigo/matriz.pas . hidalgo% En este caso, el comando rcp que
significa “remote copy” trae el archivo indicado de la computadora morelos y lo
coloca en el directorio donde se ejecutó el mencionado comando. Lo importante
es hacer ver que el usuario puede accesar y compartir muchos recursos.
Sistemas
Operativos Distribuidos
Los sistemas operativos distribuidos abarcan los
servicios de los de red, logrando integrar recursos (impresoras, unidades de respaldo,
memoria, procesos, unidades centrales de proceso) en una sola máquina virtual
que el usuario acceso en forma transparente. Es decir, ahora el usuario ya no
necesita saber la ubicación de los recursos, sino que los conoce por nombre y
simplemente los usa como si todos ellos fuesen locales a su lugar de trabajo
habitual. Todo lo anterior es el marco teórico de lo que se desearía tener como
sistema operativo distribuido, pero en la realidad no se ha conseguido crear
uno del todo, por la complejidad que suponen: distribuir los procesos en las
varias unidades de procesamiento, reintegrar sub.-resultados, resolver
problemas de concurrencia y paralelismo, recuperarse de fallas de algunos
recursos distribuidos y consolidar la protección y seguridad entre los
diferentes componentes del sistema y los usuarios. [Tan92]. Los avances
tecnológicos en las redes de área local y la creación de microprocesadores de
32 y 64 bits lograron que computadoras mas o menos baratas tuvieran el
suficiente poder en forma autónoma para desafiar en cierto grado a los
mainframes, y a la vez se dio la posibilidad de intercomunicarlas, sugiriendo
la oportunidad de partir procesos muy pesados en cálculo en unidades más
pequeñas y distribuirlas en los varios microprocesadores para luego reunir los
sub-resultados, creando así una máquina virtual en la red que exceda en poder a
un mainframe. El sistema integrador de los microprocesadores que hacer ver a
las varias memorias, procesadores, y todos los demás recursos como una sola
entidad en forma transparente se le llama sistema operativo distribuido. Las
razones para crear o adoptar sistemas distribuidos se dan por dos razones
principales: por necesidad (debido a que los problemas a resolver son
inherentemente distribuidos) o porque se desea tener más confiabilidad y
disponibilidad de recursos. En el primer caso tenemos, por ejemplo, el control
de los cajeros automáticos en diferentes estados de la república. Ahí no es
posible ni eficiente mantener un control centralizado, es más, no existe capacidad
de cómputo y de entrada/salida para dar servicio a los millones de operaciones
por minuto. En el segundo caso, supóngase que se tienen en una gran empresa
varios grupos de trabajo, cada uno necesita almacenar grandes cantidades de
información en disco duro con una alta confiabilidad y disponibilidad. La
solución puede ser que para cada grupo de trabajo se asigne una partición de
disco duro en servidores diferentes, de manera que si uno de los servidores
falla, no se deje dar el servicio a todos, sino sólo a unos cuantos y, más aún,
se podría tener un sistema con discos en espejo ( mirror ) a través de la red,
de manera que si un servidor se cae, el servidor en espejo continúa trabajando
y el usuario ni cuenta se da de estas fallas, es decir, obtiene acceso a
recursos en forma transparente.
No hay comentarios:
Publicar un comentario