1.1.2 Estructura General Del Sistema Operativo

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 2

1.1.

2 Estructura General del Sistema Operativo


Estructura modular.
También llamados sistemas monolíticos. Este tipo de organización es con mucho la más común; bien podría
recibir el subtítulo de "el gran embrollo". La estructura consiste en que no existe estructura alguna. El sistema
operativo se escribe como una colección de procedimientos, cada uno de los cuales puede llamar a los demás
cada vez que así lo requiera. Cuando se usa esta técnica, cada procedimiento del sistema tiene una interfaz bien
definida en términos de parámetros y resultados y cada uno de ellos es libre de llamar a cualquier otro, si este
último proporciona cierto cálculo útil para el primero. Sin embargo incluso en este tipo de sistemas es posible
tener al menos algo de estructura. Los servicios (llamadas al sistema) que proporciona el sistema operativo se
solicitan colocando los parámetros en lugares bien definidos, como en los registros o en la pila, para después
ejecutar una instrucción especial de trampa de nombre "llamada al núcleo" o "llamada al supervisor".

Esta instrucción cambia la máquina del modo usuario al modo núcleo y transfiere el control al sistema operativo.
El sistema operativo examina entonces los parámetros de la llamada, para determinar cuál de ellas se desea
realizar. A continuación, el sistema operativo analiza una tabla que contiene en la entrada k un apuntador al
procedimiento que realiza la k-esima llamada al sistema. Por último, la llamada al sistema termina y el control
regresa al programa del usuario.

Esta organización sugiere una organización básica del sistema operativo:

·Un programa principal que llama al procedimiento del servicio solicitado.


·Un conjunto de procedimientos de servicio que llevan a cabo las llamadas al sistema.
·Un conjunto de procedimientos utilitarios que ayudan al procedimiento del servicio.

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.

Se dividió el sistema operativo en pequeñas partes, de tal forma que cada una de ellas estuviera perfectamente
definida y con un claro interface con el resto de elementos.

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. [Feld93].

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”.

En 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.

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.

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.

También podría gustarte