Recuperacion de Guias de Laboratorio

RECUPERACION DE GUIAS DE LABORATORIO SISTEMAS OPERATIVOS ALUMNA: JESSICA MARISA QUISPE CHINO GUIA 4: GESTION DE HILOS 

Views 311 Downloads 3 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

RECUPERACION DE GUIAS DE LABORATORIO SISTEMAS OPERATIVOS

ALUMNA: JESSICA MARISA QUISPE CHINO GUIA 4: GESTION DE HILOS  EJERCICIOS RESUELTOS 1. Escriba una aplicación que cree un hilo que imprima un carácter por consola.

2. Escriba un programa que cree dos hilos no independientes.

3. Escriba un programa que cree dos hilos, a los cuales les debe pasar como parámetros el carácter que cada uno debe imprimir, así como el número de veces que imprimirán el mismo.

4. Escriba un programa que cree un hilo. El hilo debe devolver el N – ésimo número primo. Este valor será, mostrado por el proceso principal.



EJERCICIOS PROPUESTOS

1. Escriba una aplicación que cree un hilo para hallar el enésimo número perfecto, otro para calcular el iésimo término de la serie de Fibonacci, otro para hallar la suma de los resultados devueltos por los primeros hilos. El programa principal debe mostrar la salida de cada hilo.

2. Escriba un programa que ordene un arreglo de caracteres utilizando el algoritmo Merge utilizando hilos para cada partición del arreglo. El algoritmo se ilustra en el siguiente gráfico tomado de www.wikipedia.org.

GUIA 5: CONCURRENCIA 

EJERCICIOS RESUELTOS 1. Escribir una aplicación que resuelva el problema del Productor/Consumidor utilizando semáforos.



EJERCICIOS PROPUESTOS 1. Escriba una aplicación que resuelva el problema de los lectores/escritores utilizando semáforos. El enunciado del problema es: existe un objeto compartido, por una serie de procesos concurrentes. Algunos procesos desean escribir (escritores) y otros leer (lectores). Es aceptable tener múltiples procesos leyendo al mismo tiempo, pero si un proceso está actualizando, ninguno otro podrá acceder a ella, ni siquiera los lectores.

2. Escriba una aplicación que resuelva el problema de la barbería, cuyo enunciado es: Una barbería tiene 3 sillas, tres barberos, una zona de espera en la que se pueden acomodar cuatro clientes en un sofá y una sala de espera de pie para el resto de los clientes. Las medidas contra incendios limitan el número total de clientes en la tienda a 20. Un cliente no entra en la tienda si su capacidad está al completo con otros clientes. Una vez dentro, el cliente toma asiento en el sofá o permanece de pie si el sofá está lleno. Cuando un barbero esta libre, se atiende al cliente que ha estado más tiempo en el sofá y, si hay clientes de pie, el que ha entrado en la tienda hace más tiempo toma asiento. Cuando finaliza el corte de pelo de un cliente, cualquier barbero puede aceptar el pago, pero, debido a que solo hay una caja registradora, solo se acepta el pago de un cliente a la vez. Los barberos dividen su tiempo entre cortar el pelo, aceptar pagos y dormir en su silla esperando clientes.

3. Escriba una aplicación que resuelva el problema de la cena de los filósofos, utilizando semáforos. El enunciado del problema es el siguiente: Sobre una mesa se encuentran 5 platos de comida y 5 tenedores dispuestos uno entre cada plato. A la mesa están sentados 5 filósofos que pasan su tiempo pensando. Cuando un filósofo tiene hambre, debe tomar dos tenedores para poder comer: un tenedor de su derecha y otro de su izquierda. Si solo toma un tenedor; este debe esperar hasta que un filósofo de su lado deje de comer (ponga los tenedores sobre la mesa) y se ponga a pensar.