Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Correcciones.
Proceso en serie
El programador interactuaba directamente con el hardware. Adems, reservaba un tiempo en la computadora para compilar, cargar y ejecutar el programa. Despus cede el turno a otro usuario segn una planificacin en papel. No haba SO. Existe interactividad. Problemas:
1. Uso ineficiente de recursos (mquina permanece ociosa mucho tiempo). 2. Monousuario. 3. Alto tiempo de preparacin de tarea (setup time).
1. No interactivo Hardware ms complejo 2. Interrupciones + DMA (Direct Memory Access) Sistema Operativo ms complejo 3. Proteccin de memoria + Planificacin de procesos.
1. Hardware ms complejo
(Interrupciones de tiempo) 2. Sistema operativo ms complejo
(Almacenar el estado de ejecucin de un proceso cuando se saca del procesador + Proteccin de memoria + Seguridad de archivos)
Los procedimientos de utilera hacen cosas que varios procedimientos de servicio necesitan, como obtener datos de los programas de usuario.
Procedimientos de servicio
Procedimientos de utilera
Resulta complicado modificar el sistema operativo para aadir nuevas funcionalidades y servicios.
En este tipo de sistemas no se sigue el principio de ocultacin de la informacin. Para solucionar este problema es necesario dotar de cierta estructura al sistema operativo.
El SO se organiza como una jerarqua de capas donde cada capa ofrece una interfaz clara y bien definida a la capa superior y solamente utiliza los servicios que le ofrece la capa inferior. La principal ventaja que ofrece este tipo de estructuras es la modularidad y la ocultacin de la informacin. Una capa no necesita conocer cmo se ha implementado la capa sobre la que se construye, nicamente necesita conocer la interfaz que ofrece. Esto facilita enormemente la depuracin y verificacin del sistema, puesto que las capas se pueden ir construyendo y depurando por separado.
THE
Construido en la Technische Hogeschool Eindhoven de los Pases Bajos por E.W. Dijkstra (1968) y sus estudiantes.
El sistema THE era un sencillo sistema por lotes para una computadora holandesa, la Electrologica X8, que tena 32K de palabras de 27 bits. El sistema tena seis capas:
Capa
5 4 3 2 1 0
Funcin
El operador Programas de usuario Administracin de E/S Comunicacin operador-proceso Administracin de memoria Planificacin de la CPU y multiprogramacin
Multics
En lugar de estar organizado por capas, estaba organizado como una serie de anillos concntricos, siendo los interiores ms privilegiados que los exteriores. Cuando un procedimiento del anillo exterior quera invocar a uno de un anillo interior, tena que emitir un equivalente de una llamada al sistema, es decir, una instruccin TRAP cuyos parmetros se examinaban cuidadosamente para comprobar su validez antes de permitir que la llamada procediera.
Multics
Intrprete de comandos
Aplicacin de Usuario
Modelo cliente-servidor
El enfoque consiste en implementar la mayor parte de los servicios y funciones del sistema operativo en procesos de usuario, dejando slo una pequea parte del sistema operativo ejecutando en modo ncleo. A esta parte se le denomina microncleo y a los procesos que ejecutan el resto de funciones se les denomina servidores. La estructura de este sistema operativo se muestra en la siguiente figura:
Procesos Cliente
Programa de usuario
API Programa de usuario API
Procesos Servidores
Servidor de Proceso Servidor de memoria Servidor de la e/s
Servidor de archivos y directorios
Servidor de seguridad
Servidor de comunicaciones
Modo Usuario
Modo ncleo
Microncleo Hardware
Modelo cliente-servidor
Presentan una gran flexibilidad. Cada proceso servidor slo se ocupa de una funcionalidad concreta, lo que hace que cada parte pueda ser sencilla y manejable. Facilita el desarrollo y depuracin de cada uno de los procesos servidores. Desventajas: Presentan una mayor sobrecarga en el tratamiento de los servicios que los sistemas monolticos. Debido a que los distintos componentes de este tipo de SO ejecutan en espacios de direcciones distintos, lo que hace que su activacin requiera ms tiempo. Ejemplos: Minix, Mach, Amoeba, Windows NT (aunque muchos de los servidores se ejecutan en modo de ncleo por eficiencia.)
Mquinas Virtuales
Existe un elemento central llamado monitor de la mquina virtual que:
o o o
Se ejecuta en el hardware. Realiza la multiprogramacin. Proporciona varias mquinas virtuales a la capa superior.
Las mquinas virtuales instrumentan copias exactas del hardware simple, con su modo ncleo/usuario, e/s, interrupciones y todo lo dems que posee una mquina real. Pueden ejecutar cualquier SO que se ejecute en forma directa sobre el hardware. Las distintas mquinas virtuales pueden ejecutar distintos sistemas operativos y en general as lo hacen. Soportan perifricos virtuales. Ejemplos: VM/370 de IBM, VirtualBox, Virtual PC, VmWare, Xen.
Mquinas Virtuales
370 virtuales
CMS
CMS
CMS
VM/370
370 hardware simple
Mquinas Virtuales
procesos
procesos
procesos
Interfaz de Programacin kernel VM kernel VM
procesos kernel VM
kernel hardware
hardware
Mquina no virtual
Mquina no virtual
Semestre 2013-II