sábado, 5 de julio de 2008

Tarea # 3

1. La tabla 3.5 enumera los elementos típicos que se encuentran en un bloque de control de proceso de un sistema monohilo. De éstos, ¿cúales deben pertenecer a un bloque de control de hilo y cúales deben pertenecer a un bloque de control de proceso para un sistema multihilo?

- BLOQUE DE CONTROL DE HILO:
Categoría de información.
Registros visibles.
Registro de control.
Registro de estado.

- BLOQUE DE CONTROL DE PROCESO
Idenificacion de proceso.
Información de proceso.
Información de planificación.
Información de estado.
Estructura de datos.
Comunicación entre procesos.
Privilegios de los procesos.
Gestion de memoria.
Propiedad de los recursos y utilización.


2. Enumere las razones por las que un cambio de contexto entre hilos puede ser mas barato que un cambio de contexto entre procesos.

Razones de que un cambio de contexto entre hilos es mas barato que un cambio de contexto entre procesos:
a) Las comunicaciones entre hilos son mas rápidas y sencillas que las de procesos.
b) Los costes a largo plazo será mayores para los procesos que para un hilo, dentro de un proceso entre ellos comparición de la cache
c) Las cargas administrativas de la creación de un proceso suelen ser mayores que la creación de un hilo.


3. ¿Cuáles son las dos caracteristicas diferentes y potencialmente independiente en el concepto de procesos?

Las dos características diferentes y potencialmente independientes que expresa el concepto de proceso son:

a. Unidad de propiedad de los recursos: Un proceso incluye un espacio de direcciones virtuales para mantener la imagen del proceso y, de vez en cuando, al proceso se le puede asignar el control o la propiedad de recursos tales como la memoria principal, canales de E/S, dispositivos de E/S y archivos.
b. Unidad de expedición: La ejecución de un proceso sigue un camino de ejecución (traza) a través de uno o más programas. Esta ejecución puede ser intercalada con la de otros procesos.


4. Dé cuatro ejemplos generales del uso de hilos en un sistema multiprocesador monousuario.

Usos de los hilos en un sistema monousuario y multiproceso

a. Trabajo interactivo y en segundo plano.
b. Procesamiento asíncrono.
c. Aceleración de la ejecución.
d. Estructuración modular de los programas


5. ¿Qué recursos son compartidos normalmente por todos los hilos de un proceso?

Los distintos hilos de ejecución comparten una serie de recursos tales como el espacio de memoria, los archivos abiertos, situación de autenticación.


6. Enumere tres ventajas de los ULT sobre los KLT.

1.El intercambio de los hilos no necesita los privilegios del modo kernel, porque todas las estructuras de datos están en el espacio de direcciones de usuario de un mismo proceso. Por lo tanto, el proceso no debe cambiar a modo kernel para gestionar hilos. Se evita la sobrecarga de cambio de modo y con esto el sobrecoste.

2.Se puede realizar una planificación específica. Dependiendo de que aplicación sea, se puede decidir por una u otra planificación según sus ventajas.
Los ULT pueden ejecutar en cualquier sistema operativo. La biblioteca de hilos es un conjunto compartido.

7. Enumere dos desventajas de los ULT en comparación con los KLT.

1.En la mayoría de los sistemas operativos las llamadas al sistema son bloqueantes. Cuando un hilo realiza una llamada al sistema, se bloquea el mismo y también el resto de los hilos del proceso.

2.En una estrategia ULT pura, una aplicación multihilo no puede aprovechar las ventajas de los multiprocesadores. El núcleo asigna un solo proceso a un solo procesador, ya que como el núcleo no interviene, ve al conjunto de hilos como un solo proceso.


8. Defina jacketing (revestimiento).

Jacketing es convertir una llamada bloqueante a una no bloqueante

9. Defina brevemente las diversas arquitecturas que se nombran en la Figura 4.8.

PROCESADORES PARALELOS: Dispositivos de un ordenador los cuales ejecutan simultáneamente instrucciones o programas.
SIMD: Instrucción Única para Múltiples Datos. Los repertorios SIMD consisten en instrucciones que aplican una misma operación sobre un conjunto más o menos grande de datos. Es una organización que influye muchas unidades de procesamiento bajo la supervisión de una unidad de control común.
MIMD: Es una técnica empleada en el paralelismo de archivos.
MEMORIA COMPARTIDA: Permite crear segmentos de memoria a los que pueden acceder múltiples procesos, pudiendo definir restricciones de acceso.
MEMORIA DISTRIBUIDA: Los procesadores pueden compartir información solamente enviando mensajes, es decir, si un procesador requiere los datos contenidos en la memoria de otro procesador, deberá enviar un mensaje solicitándolos.
SMP: se trata de que varios procesadores comparten el acceso memoria.
MAESTRO/ESCLAVO: El núcleo del sistema operativo siempre ejecuta en un procesador determinado. El maestro es el responsable de la planificación de procesos e hilos. Una vez que un proceso/hilo está activo, si un esclavo necesita de un servicio del SO, debe enviar una petición al maestro esperar a que se realice dicho servicio.
CLUSTER: Grupos de computadoras completos e interconectados trabajando juntas como un sistema único y que pueden llegar a hacer una sola maquina.

10. Enumere los aspectos principales de diseño de un sistema operativo SMP.

Los aspectos principales de diseño de un sistema operativo SMP son:
a) Hilos o Procesos concurrentes.
b) Planificación.
c) Sincronización.
d) Gestión de memoria.
e) Fiabilidad y Tolerancia a los fallos.

11. Dé ejemplos de servicios y funciones que se encuentran en un sistema operativo monolítico típico que podrían ser subsistemas externos en un sistema operativo micronucleo.

Algunos ejemplos de funciones y servicios son:
a) Los sistemas de archivos.
b) Los Gestores de memoria virtual.
c) Servicios de seguridad.
d) Sistema de ventanas

12. Enumere y explique brevemente siete ventajas potenciales de un diseño micronucleo en comparación con un diseño monolitico.

a) Uniformidad de interfaces: Los procesos no necesitan diferenciar entre servicios de usuario y de núcleo, ya que todos los servicios se utilizan mediante paso de mensajes.
b) Extensibilidad: Se permiten añadir nuevos servicios al conjunto de servicios ya existentes en alguna de las áreas funcionales.
c) Flexibilidad: Se pueden reducir las características actuales del sistema operativo para dar lugar a una implementación más pequeña y más eficiente.
d) Portabilidad: En la arquitectura micronúcleo, todo o al menos la mayoría del código específico del procesador está en el micronúcleo, para que asi los cambios necesarios para portar el sistema a un nuevo procesador son menores y tienden a estar ordenados en agrupaciones lógicas.
e) Fiabilidad: Cuanto mayor es el tamaño de un producto software, más difícil es garantizar su fiabilidad. Aunque el diseño modular ayuda a aumentar la fiabilidad, se pueden obtener aún mayores ganancias con una arquitectura micronúcleo.
f) Soporte a sistemas distribuidos: Cuando un cliente envía un mensaje a un proceso servidor, el mensaje debe incluir un identificador del servicio solicitado
g) Soporte para sistemas operativos orientados a objetos (OOOS): Un enfoque orientado a objetos puede aportar una disciplina al diseño del micronúcleo y al desarrollo de las extensiones modulares del sistema


13. Explique la desventaja potencial de rendimiento de un sistema operativo micronucleo.

La desventaja potencial de un sistema operativo micronucleo es su rendimiento porque se consume mucho tiempo en construir y enviar un mensaje, aceptar o decodificar una respuesta.

14. Enumere cuatro funciones que le gustaria encontrar incluso en un sistema operativo micronucleo minimo.

Las funciones son:
Gestión de memoria a bajo nivel.
Comunicación entre procesos (ICP).
Gestión de interrupciones y E/S.


15. ¿Cuál es la forma basica de comunicación entre procesos o hilos en un sistema operativo micronucleo?

La forma basica de comunicación entre procesos o hilos es por medio de los mensajes ya como sabemos un mensaje consta de un emisor, receptor y en este caso una cabecera que es la identifica los procesos.

No hay comentarios: