UTNianos

Versión completa: [PEDIDO] Final sistemas operativos 14/07/2014
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2 3
Buenas,
A los/las que dieron el final el este martes que pasó, podrían contar como fue? Que ejercicios y v/f tomaron? Si tienen una imagen del mismo se los agradecería!!

Muchas gracias!!
Me sumo al pedido!
up!
Acá está! éxitos!
Hola, resolví el ejercicio 3, a alguien le dio algo parecido?

Saludos!
Yo no lo resolví pero detecté los siguientes errores:
t=8: Debe ejecutar B porque le quedaron 2 quantum anteriores a hacer I/O y va a la cola FIFO que tiene mayor prioridad. Igual que lo hiciste vos.
t=14: Debe seguir ejecutando D porque le quedan 2 quantum, por más que haya vuelto A de hacer I/O y vaya a la cola FIFO, D tiene que terminar sus 3 quantums.
t= 21: Debe ejecutar C (idem motivo t=8)

Viendo tu resolución me parece que está bien planificado.

Pudiste hacer la teoría? tengo varías dudas:
1) Ni idea..
2) Creo que F, no tiene que ver con el reemplazo de las páginas si no con optimizar la transferencia de I/O
3) V, ya que es el encagardo de definir el grado de multiprogramación (causa de sobrepaginación)
4) Creo que F, si 1 proceso tiene KLT1 con ULT1 y KLT2 con ULT2, si ULT1 ejecuta el wait y se bloquea, no bloquearía a KLT2.
5) Ni idea..

Saludos.
1) Creo que es verdadera, genera stackoverflow la recursividad si no termina nunca.
4) Esta me parece que es verdadera, porque habla de que se bloquea todo el proceso cuando lo ejecuta un ULT al semáforo, osea que se bloquea todo el KLT, no dice que hay mas de un KLT
5) Me suena verdadera pero no sabría explicarla


En cuanto al práctico tenia duda en caso de que haya varios procesos disponibles pero a partir de diferentes eventos, e hice esta priorización porque vi que en un final indicada usarla, pero en este final no dice nada:
1) salida de I/O
2) cola de corto plazo
3) expulsión por quantum

Lo que decís vos tiene coherencia, de que siga ejecutando un proceso si se le corto el quantum, pero al mismo tiempo si se le corto es porque entro a I/O, y justamente es mi primer prioridad, la salida de I/O.


El de filesystem lo sabes hacer?

Saludos!
Mis respuestas a la parte teórica serían:

1) VERDADERO, en el caso de una función recursiva podría generar un desbordamiento de pila (stack overflow)
2) Depende de la justificación. Falso, si la justifico por el lado de que el algoritmo de reemplazo sólo se encarga de elegir la página a reemplazar, entonces el buffering de E/S no va a agilizar esa decisión. Por otro lado, si consideramos que el algoritmo también involucra la escritura en disco de la página modificada y la carga de una nueva entonces sí podría agilizar la ejecución del algoritmo. La verdad que no estoy seguro.
3) VERDADERO, si el PLP permite el ingreso de demasiados programas al sistema.
4) FALSO, el proceso puede tener uno o más hilos KLT que no se bloquearán si se bloquea el ULT que llamó a wait() (¿Tiene doble sentido? ¿El valor del semáforo puede ser menor a 1?) (flashé, perdón y gracias a FMB89 por la correción)
5) No sé confused
Tenes razón, la 4 es falsa puede lo que se bloquearía es todo el hilo KLT con todos sus ULT, pero no todo el proceso porque puede tener mas de un KLT.

Lo del valor del semáforo menor a 1 te da a entender que al llamarse al wait() se va a bloquear, porque si es mayor que 1 el wait() solo decrementaría el valor pero no bloquearía, bloquea cuando queda en 0 o negativo.
Nadie hizo el ejercicio 1 y 2 de la práctica? Me gustaría comparar resultados con alguien.
Hola el ejercicio 2 a alguien le dio:

Proceso 1, pagina 2 --> Frame 1
Proceso 1, pagina 3 --> Frame 7
Proceso 3, pagina 2 --> Frame 2
Proceso 1, pagina 1 --> Frame 8

Total:4 fallos de pagina (solo para las referencias pedidas)

??
Yo todavía estoy con FS.
La parte de FAT no la se todavía

EJERCICIO 1
Pero en cuanto inodos: El tamaño del archivo de 2 MB => 2097152 bytes
Bloques por puntero= 2*1024/8 = 256 bloques
Cantidad de bloques = 2097152/(1024*2)=1024 bloques

Cae en la indireccion doble: 1024 - 10 (de los directos) - 512 (2*256 de los simples) = 502 restantes
Estos se solucionan con 502/256=1.96.. 2 bloques.

Para la respuesta: 4 accesos a bloque de punteros y 1024 a bloque de datos.
(06-02-2015 19:45)CarooLina escribió: [ -> ]Yo todavía estoy con FS.
La parte de FAT no la se todavía

EJERCICIO 1
Pero en cuanto inodos: El tamaño del archivo de 2 MB => 2097152 bytes
Bloques por puntero= 2*1024/8 = 256 bloques
Cantidad de bloques = 2097152/(1024*2)=1024 bloques

Cae en la indireccion doble: 1024 - 10 (de los directos) - 512 (2*256 de los simples) = 502 restantes
Estos se solucionan con 502/256=1.96.. 2 bloques.

Para la respuesta: 4 accesos a bloque de punteros y 1024 a bloque de datos.

CarooLina a mi me dió un acceso más:
Accesos:
Ptr Directo = 10
Ptr Ind. Simple = 2 + 256*2 (Es 1 acceso a cada tabla (2) y cada tabla 256)
Ptr Ind. Doble = 1 + 1 + 256 + 1 + 246
(1 acceso a la ind. doble, 2 accesos a ind. simple y acceso a tabla completa y la otra solo 246)

Total = 1029 accesos a bloques de punteros.


En cuanto a lo de FAT16, dividí el tamaño de archivo por el tamaño de cluster. (1Mib/8Kib) resultando 128 clusters.

No sabría responder qué modificaciones sufrieron cada FS sin meter chamuyo (Punto B).
(07-02-2015 12:25)juliahn escribió: [ -> ]
(06-02-2015 19:45)CarooLina escribió: [ -> ]Yo todavía estoy con FS.
La parte de FAT no la se todavía

EJERCICIO 1
Pero en cuanto inodos: El tamaño del archivo de 2 MB => 2097152 bytes
Bloques por puntero= 2*1024/8 = 256 bloques
Cantidad de bloques = 2097152/(1024*2)=1024 bloques

Cae en la indireccion doble: 1024 - 10 (de los directos) - 512 (2*256 de los simples) = 502 restantes
Estos se solucionan con 502/256=1.96.. 2 bloques.

Para la respuesta: 4 accesos a bloque de punteros y 1024 a bloque de datos.

CarooLina a mi me dió un acceso más:
Accesos:
Ptr Directo = 10
Ptr Ind. Simple = 2 + 256*2 (Es 1 acceso a cada tabla (2) y cada tabla 256)
Ptr Ind. Doble = 1 + 1 + 256 + 1 + 246
(1 acceso a la ind. doble, 2 accesos a ind. simple y acceso a tabla completa y la otra solo 246)

Total = 1029 accesos a bloques de punteros.


En cuanto a lo de FAT16, dividí el tamaño de archivo por el tamaño de cluster. (1Mib/8Kib) resultando 128 clusters.

No sabría responder qué modificaciones sufrieron cada FS sin meter chamuyo (Punto B).


Son 5 accesos a bloques de punteros y 1024 accesos a bloques de datos (ojo juliahn, no te confundas eso)


Como lo hicieron ustedes, tenes:

10 Punteros directos --> 10 accesos a bloques de datos (0 accesos a bloques de punteros)
2 Puntero Simples --> 512 accesos a bloques de datos (2 accesos a bloques de punteros)
1 puntero doble ---> 502 accesos a bloques de datos (1 acceso al bloque de punteros dobles y 2 a bloques de punteros simples, porque necesitas 2 bloques de 256 punteros cada uno para acceder a 502 bloques).

Consulta: ¿Se podría utilizar directamente el puntero indirecto triple? Si necesitas 1024 bloques de datos y cada bloque puede contener 256 punteros, entonces 1024/256 = 4 bloques de 256 punteros simples se necesitan.
Entonces utilizando 1 puntero triple, tenes:

1 acceso al bloque de punteros triple --> 1 acceso al bloque de punteros doble --> 4 accesos a bloques de punteros simples --> 1024 accesos a bloques de datos. Total: 6 accesos a bloques de punteros y 1024 accesos a bloques de datos. (aclaración: le llamo bloques de punteros dobles" a lo bloques del 2do nivel del puntero triple. Lo mismo para los simples (3er nivel). No se bien como llamarlos =P)
Ahh!! Ahora entendí perfecto la diferencia. Gracias!
Páginas: 1 2 3
URLs de referencia