anon -problemas de sistemas operativos 01-02 pdf

95

Upload: api-3716517

Post on 07-Jun-2015

1.272 views

Category:

Documents


15 download

TRANSCRIPT

Page 1: Anon -Problemas de Sistemas Operativos 01-02 PDF
Page 2: Anon -Problemas de Sistemas Operativos 01-02 PDF
Page 3: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 3

1. ESPERA DESESPERADA

Considere el siguiente conjunto de procesos cuyos tiempos de procesador en milisegundos son: Proceso Tiempo de procesador Tiempo de llegada P1 2 0 P2 6 1 P3 3 2 P4 2 3

Calcular el tiempo de espera de cada proceso al aplicar las políticas:

a) SJF b) Round-Robin con quantum de 2 milisegundos.

El tiempo de cambio de contexto se considera despreciable.

2. JERARQUÍA FAMILIAR Tenemos 4 procesos (p1 a p4) en un sistema, donde p1 ha creado a p2 y p3, habiendo creado este último a p4. En un momento dado p1 esta en ejecución , p2 está preparado y p3 y p4 están bloqueados. Representar el detalle de todos los P.C.B de estos procesos y sus interconexiones, reflejando, además, el estado del sistema. 3. EN BUSCA DEL SERVICIO PERDIDO Tenemos 5 procesos en espera de ser ejecutados. Sus tiempos de ejecución previstos son 9,6,3,5, y 7. Hallar el orden de ejecución de los procesos para hacer mínimo el tiempo medio de servicio en las políticas de planificación FIFO, SJF y RR (q=1). Dar los tiempos medios de servicio obtenidos con cada política. 4. JUGANDO CON LAS COLITAS Tenemos una política FB con tres colas que se gestionan con las siguientes políticas: ENTRADA Primera Cola (RR) q=1 PROCESOS Segunda Cola (RR) q=3 Tercera Cola FCFS y la siguiente secuencia de procesos:

Page 4: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 4

Proceso Instante de llegada Tiempo de ejecución A 0 3 B 1 9 C 2 4 D 3 8 E 11 5 Dibujar el diagrama de ejecución de los procesos, y hallar el tiempo medio de servicio y de espera, así como el tiempo de estancia de cada proceso en cada cola, teniendo en cuenta que el paso de un proceso de una cola a otra se produce cuando éste se ha ejecutado durante 2 quantum de tiempo en la cola correspondiente. Considerar que si en el momento de expirar un quantum llegase a la cola un nuevo proceso, este se colocará al principio de la cola. 5. EL GENERAL Dada la siguiente situación en un sistema: Proceso T. llegada T. ejecución Prioridad 1 0 8 5 2 3 4 7 3 6 2 9 4 10 3 8 5 15 6 1 6 27 4 5 y suponiendo que las prioridades crecen en relación directa con su valor (por ejemplo, una prioridad=4 es mayor que una prioridad=2), obtener: 1) Un diagrama de ocupación del procesador (CPU). 2) Tiempo medio de servicio de los 6 procesos. 3) Tiempo medio de espera de los 6 procesos. aplicando los siguientes algoritmos de planificación: a) De prioridad con apropiación. b) Round Robin de q=2. c) Primero en llegar, primero en ejecutarse (FIFO o FCFS).

Page 5: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 5

6. SISTEMA COMBINADO En un sistema multiprogramado existen dos colas de procesos preparados; una batch, y otra para procesos de tiempo compartido, gestionándose de la siguiente manera: . Cola batch: Política FCFS. . Cola tiempo compartido: Política RR con q=2. . Gestión del acceso de las colas al procesador: Prioridad apropiativa, con las siguientes prioridades; cola batch=3, y cola de tiempo compartido=5, teniendo en cuenta que a mayor número mayor prioridad. La política de planificación es tal que cuando llega un proceso a una cola, éste se coloca el último de la misma, si se produjera algún evento en el instante en que expira un quantum, se debe considerar que dicho evento se ha producido inmediatamente antes de la expiración de dicho quantum, es decir, se tratará antes el evento que la finalización del quantum. Dada la siguiente secuencia de llegada de procesos, su tiempo teórico o ideal de ejecución, así como la cola donde se van a procesar: Proceso Cola Instante de llegada Tiempo de ejecución P1 T. compartido 0 5 P2 Batch 2 8 P3 T. compartido 3 7 P4 Batch 4 9 P5 Batch 8 10 P6 T. compartido 10 3 P7 T. compartido 20 4 a) Hallar el tiempo medio de espera y el tiempo medio de servicio de la cola batch, si la consideramos como si fuera la única del sistema. b) Idem para la cola de Tiempo compartido. c) Idem para el caso del sistema que tratamos, es decir, las dos colas coexistiendo en el mismo sistema. d) De los resultados obtenidos, razona las diferencias existentes entre los dos primeros casos y el tercero: ¿afecta de alguna manera la coexistencia de las dos colas?, ¿en el tercer caso salen perjudicadas las dos colas, o sólo una, o ninguna? 7. INCREMENTO FATAL Supongamos que el algoritmo elegido para la planificación del procesador sea Round-Robin con un quantum q=3 unidades de tiempo, y que la cola de procesos preparados se ordene por prioridades, Estas se calculan cada vez que existe un cambio de contexto en el sistema, incrementando en 1 las prioridades de todos los procesos que están en dicha cola. Cuando al finalizar el quantum asignado al proceso en ejecución se compruebe que existe alguno en la cola de procesos preparados que tiene igual o mayor prioridad que el que está ejecutándose, este abandonará el procesador volviendo a la cola de procesos preparados con la prioridad con que el usuario lo cargó inicialmente, mientras que el proceso que accede al procesador se ejecutará con la prioridad que haya alcanzado en la cola de procesos preparados. Si llegase algún proceso a la cola de preparados coincidiendo con la expiración de un quantum, se considerará que dicho proceso ha llegado un instante anterior al de la finalización de dicho quantum.

Page 6: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 6

Si varios procesos pudieran ejecutarse por haber alcanzado igual o mayor prioridad que el que está

en el procesador, se elegirá el que tenga mayor prioridad y, en el caso de que sean dos o más procesos los que pudieran ser elegidos para su ejecución por tener idéntica prioridad, se seleccionará el que haya llegado antes a la cola de procesos preparados. Considerando el conjunto de procesos que se relacionan a continuación, Proceso Llegada T. ejecución Prioridad A 0 3 1 B 2 7 2 C 4 4 1 D 6 6 3 E 8 5 1 a) Hallar el Tiempo medio de servicio que presenta el sistema con esta política. b) Si cada cambio de contexto consume 0'2 unidades de tiempo, ¿cuál sería el rendimiento del sistema? (Considerar el rendimiento como R=t de CPU de todos los procesos/t total de ordenador). Recordar que cada cambio de proceso supone dos cambios de contexto 8. TRASVASE TURBULENTO Este algoritmo es una versión modificada del Round-Robin, que da mejor servicio a los procesos que ya se están ejecutando, que a los recién llegados. La cola de preparados se divide en dos: una de procesos NUEVOS y otra de ACEPTADOS. Se escoge siempre para ejecución un proceso de la cola de ACEPTADOS, mediante una estrategia de Round-Robin, y los procesos que llegan al sistema esperan en la cola de NUEVOS hasta que puedan pasar a la de ACEPTADOS. Cuando un proceso llega al sistema su prioridad es cero, y a cada unidad de tiempo el algoritmo recalcula las prioridades para todos los procesos de la siguiente forma 1.- Si un proceso está en la cola de NUEVOS, se incrementa su prioridad en un factor a. 2.- Si un proceso está en la cola de ACEPTADOS, se incrementa su prioridad en un factor b. Cuando la prioridad de un proceso de la cola de NUEVOS se hace mayor o igual a la de uno de la cola de ACEPTADOS, el proceso de la cola de NUEVOS pasará a la primera posición de la cola de ACEPTADOS. En caso de que se vacíe la cola de ACEPTADOS se introduce en ella el proceso más prioritario de la cola de NUEVOS. Un proceso será más prioritario cuanto mayor sea su valor numérico asociado. A) Suponiendo que a=2, b=1, q=1 y la siguiente situación:

Page 7: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 7

PROCESO LLEGADA CPU A 0 5 B 1 4 C 3 2 D 9 6 E 11 3

Representar el diagrama de ocupación de la CPU. Calcular el Tiempo de espera y de servicio de cada proceso, así como el tiempo medio de espera, de servicio e Índice medio de servicio. B) Analizar el comportamiento del algoritmo en los siguientes casos: * a>>b * b>=a , siendo a y b mayor que cero. 9. EL PROCESO CLÓNICO “DOLLY”

Para comprobar el efecto de la multiprogramación, se ha realizado un estudio a partir de un proceso interactivo determinado, denominado “Dolly”. La ejecución del proceso se realizaba de la siguiente forma:

4 unidades de tiempo de procesador + 6 unidades de tiempo de lectura en el disco duro + 4 unidades de tiempo de procesador + 4 unidades de tiempo de escritura en la impresora láser + 2 unidades de tiempo de procesador

Teniendo en cuenta que el sistema operativo es de Tiempo Compartido con política de

planificación del procesador Round Robin de quantum igual a 2, y que el rendimiento del ordenador se mide como:

Tiempo de ocupación del procesador R= -----------------------------------------------

Tiempo total de ejecución

Donde el tiempo total de ejecución se considera el tiempo transcurrido desde que entra el primer proceso hasta que acaba el último.

El estudio se ha realizado ejecutando n procesos idénticos de este tipo, calculando en cada caso el

rendimiento del mismo. Realiza el cálculo del rendimiento para los siguientes casos: 1 solo proceso, 2 procesos y 3

procesos ejecutándose simultáneamente en el ordenador. Considera que el usuario da la orden de ejecución de todos los procesos en el instante 0.

En el caso anterior no se ha tenido en cuenta el consumo de tiempo del cambio de proceso

necesario para la planificación del procesador, ni para el tratamiento de eventos. Suponiendo que el tiempo de cambio de contexto es de 0,3 unidades de tiempo, y que un cambio de proceso se puede considerar igual a dos cambios de contexto, calcula de nuevo el rendimiento del ordenador para los casos del apartado anterior. Al principio y al final el sistema operativo tiene el control. NOTAS: Suponer que mientras un proceso está accediendo al disco ningún otro puede acceder al mismo.

Page 8: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 8

10.- APROPIACIÓN INDEBIDA

Disponemos de un Sistema Operativo que utiliza dos colas para la planificación de procesos: * Cola 1, con prioridad 5 * Cola 2, con prioridad 1

donde los procesos de la Cola 2, tan solo se ejecutarán si la cola 1 está vacía. La Cola 1 está gestionada mediante una política de planificación de prioridades apropiativas. (Es

decir, se ejecuta el proceso más prioritario, expropiando si fuese necesario a otro con prioridad menor).

La Cola 2 está gestionada mediante una F.I.F.O. Disponemos de 4 procesos:

Llegada T. Ejecución Prioridad Cola A 0 12 7 1 B 0 20 6 1 C 0 10 4 1 D 0 10 5 2

Los procesos A,B, y C tienen además el siguiente comportamiento: El proceso A lanza una E/S cada vez que se ejecuta durante 4 unidades de tiempo, tardando siempre 6 u.t en completarse dicha E/S. El proceso B lanza una E/S cada vez que se ejecuta durante 10 unidades de tiempo, tardando siempre 20 u.t en completarse dicha E/S. El proceso C lanza una E/S cada vez que se ejecuta durante 5 unidades de tiempo, tardando siempre 10 u.t en completarse dicha E/S.

Obtener el diagrama de ocupación del procesador y los tiempos de servicio, espera e índice de servicio de cada proceso así como sus correspondientes medias.

NOTA: La prioridad más alta será aquella con un número mayor.

11.- LECTURA E IMPRESIÓN

Disponemos de un Sistema Operativo donde la cola de procesos preparados se divide en dos: • Cola 1. (Prioridad 6) • Cola 2. (Prioridad 1)

La Cola 1 está gestionada mediante una política de planificación Round_Robin de quantum 2. La Cola 2 está gestionada por una S.R.T.

La política de planificación entre colas será de prioridades apropiativa. Un número mayor indica

mayor nivel de prioridad.

Los procesos de la Cola 2 tan solo se ejecutarán si la Cola 1 está vacía. Todo proceso que se haya ejecutado dos veces en la Cola 1 pasará a la Cola 2. Cuando un proceso

llegue a la Cola 2 ya nunca volverá a la Cola 1.

Page 9: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 9

Al sistema llegan los siguientes procesos:

PROCESO LLEGADA COLA INICIAL

P1 0 1 P2 1 1 P3 2 1 P4 3 1

Los procesos se ejecutarán de la siguiente forma:

Proceso P1: 3 ut + 4 ut acceso a disco + 2 ut + 2 ut acceso a disco + 1 ut + 4 ut acceso impresora + 1 ut Proceso P2: 5 ut + 3 ut acceso a disco + 4 ut + 6 ut acceso impresora + 3 ut Proceso P3: 1 ut + 5 ut acceso a disco + 6 ut + 1 ut acceso a disco + 1 ut + 3 ut acceso impresora + 1 ut Proceso P4: 3 ut + 6 ut acceso impresora + 1 ut + 2 ut acceso a disco + 3 ut + 4 ut acceso a disco + 2 ut NOTAS:

• Si el comienzo o final de una E/S, o la llegada de un proceso, coincide con el final de un quantum, se considerará que ocurre justo antes de que acabe dicho quantum.

• Hay un solo disco, al que sólo puede acceder un único proceso al mismo tiempo. • Hay dos impresoras, a cada una de las cuales sólo puede acceder un proceso al mismo tiempo.

El uso de las impresoras es indiferente, es decir, se cogerá la que se pueda.

Obtener el diagrama de ocupación del procesador así como los tiempos de servicio, espera e índice de servicio de cada proceso junto con sus correspondientes medias. 12. PEQUEÑO PERO MATÓN

En un sistema operativo se utiliza planificación de procesos mediante multicolas con realimentación. La primera de las colas (Cola 0) se gestiona mediante una Round Robin de quantum q=1, y la segunda de las colas (Cola 1) es gestionada mediante el algoritmo SJF. La cola mas prioritaria será la 0. Un proceso pasará de la cola 0 a la 1 cuando agote su quantum q sin finalizar su ejecución.

Los procesos nuevos y los procedentes del estado bloquedo entran por la cola 0.

Suponiendo que todas las operaciones de E/S se realizan sobre el mismo dispositivo (y este es de uso exclusivo), dibujar el diagrama de ejecución de procesos para los siguientes procesos, así como los sus correspondientes tiempos de servicio, espera e índices de servicio. Proceso A: 4 ut. + 2 ut. E/S + 1 ut Proceso B: 2 ut. + 1 ut. E/S + 2 ut. Proceso C: 1 ut. + 1 ut. E/S + 3 ut. Sabiendo que los instantes de llegada de cada proceso son: instante 0 para el A, instante 2 para el B e instante 3 para el C. NOTA: Considerar que en el tiempo restante de un proceso hay que tener en cuenta el tiempo de entrada/salida.

Page 10: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 10

13.- EL FACILÓN

Tenemos un sistema donde llegan los siguientes procesos

PROCESO LLEGADA PRIORIDAD P1 0 2 P2 2 1 P3 3 3 P4 4 3

La ejecución de los procesos se realiza de la siguiente forma:

PROCESO P1: 3 ut + 2 u.t de E/S + 2 u.t PROCESO P2: 1 ut + 3 u.t de E/S + 2 u.t PROCESO P3: 4 ut + 2 u.t de E/S + 1 u.t PROCESO P4: 2 ut + 3 u.t de E/S + 2 u.t

Dibujar el diagrama de ejecución de procesos y dar los tiempos de espera, servicio e índice de servicio para las siguientes políticas:

a) Round Robin de quantum q=2 b) Prioridades apropiativas.

NOTAS: - Si la llegada de un proceso a la cola de preparados coincide con la finalización de un quantum se considerará que el proceso llega antes de la finalización del quantum. Si hay dos procesos de igual prioridad se considerará primero al que llegó antes. 14. COLAS DIABOLICAS

En un sistema tenemos 6 procesos y 2 dispositivos de E/S (una impresora y un escáner). Cada proceso tiene una prioridad y llegan según la siguiente tabla a cada una de las colas:

Procesos Llegada Prioridad Cola P1 0 7 1 P2 1 5 2 P3 2 8 1 P4 3 9 1 P5 6 6 2 P6 9 10 1

La cola 1 tiene más prioridad que la cola 2 y hay apropiatividad entre colas. La primera de las

colas está gestionada mediante una Round Robin de quantum 2 y la segunda de las colas se gestiona mediante prioridades apropiativa.

Page 11: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 11

La ejecución de los procesos se realiza de la siguiente forma:

P1: 5 procesador + 2 impresora + 2 procesador + 1 escáner + 3 procesador P2: 1 procesador + 2 escáner + 2 procesador P3: 3 procesador + 2 escáner + 4 procesador + 2 impresora + 1 procesador P4: 1 procesador + 3 escáner + 1 procesador + 3 impresora + 3 procesador P5: 1 procesador + 2 escáner + 1 procesador P6: 2 procesador + 1 impresora + 2 procesador + 2 escáner + 2 procesador Dibujar el diagrama de ejecución de procesos y dar los tiempos de espera, servicio e índice de servicio. NOTAS:

Un proceso pasa a la cola 2 cuando se ha ejecutado dos veces en la cola 1. Ningún proceso puede pasar de la cola 2 a la cola 1. Los procesos entran al final de la cola. Si la llegada de un proceso a la cola de preparados coincide con la finalización de un quantum se considerará que el proceso llega antes de la finalización del quantum.

15. ROBIN UFF!!!!

En un sistema tenemos 5 procesos y 2 dispositivos (1 impresora y 1 escaner). Los procesos llegan al sistema según la tabla siguiente:

ti Cola

P1 0 1

P2 1 2

P3 2 1

P4 2 3

P5 3 1 Tenemos 3 colas en el sistema: La cola 1 es una RR de quantum 1 y Prioridad 3 La cola 2 es una RR de quantum 2 y Prioridad 2 La cola 3 es una RR de quantum 2 y Prioridad 1

Nunca se ejecutará un proceso de una cola menos prioritaria si hay algún proceso en una cola más prioritaria pero NO SE INTERRUMPE EL QUANTUM DE NINGUN PROCESO.

La ejecución de los procesos se realiza de la siguiente forma: P1: 2 u.p. + 2 impr. + 1 u.p. + 3 escan. + 1 u.p. P2: 3 u.p. + 3 escan. + 1 u.p. P3: 1 u.p. + 2 impr. + 1 u.p. + 2 impr. + 3 u.p. + 1 impr. + 1 u.p. P4: 3 u.p. P5: 1 u.p. + 1 escan. + 1 u.p. + 2 impr. + 2 u.p. + 1 impr. + 3 u.p. Dibujar el diagrama de ejecución y dar los tiempos de espera, de servicio e indice de servicio.

NOTAS: * Un proceso pasará de una cola más prioritaria a la siguiente menos prioritaria cuando se haya ejecutado 2 veces en dicha cola. * Si la llegada de un proceso a la cola de preparados coincide con la finalización de un quantum, se considerará que dicho proceso llega antes de la finalización del quantum.

Page 12: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 12

16. CONFEDERACION HIDROLOGICA DEL CHANZA En un sistema tenemos dos colas, una cola de NUEVOS y otra de LISTOS. Sólo puede pasar a ejecución un proceso de la cola de LISTOS, la cual se gestiona mediante una Round Robin de q=1. Todos los procesos llegan al sistema a la cola de NUEVOS. Cada unidad de tiempo el sistema recalcula las prioridades para todos los procesos:

• Incrementando en 2 la prioridad de los procesos de la cola de NUEVOS • Incrementando en 1 la prioridad de los procesos de la cola de LISTOS

Cuando la prioridad de un proceso de la cola de NUEVOS iguala o supera la de uno de la cola de LISTOS, el proceso de la cola de NUEVOS pasa a la primera posición de la cola de LISTOS. Si un proceso realiza E/S al terminar entra en la cola de NUEVOS con la prioridad inicial. Si la cola de LISTOS se vacia, se introduce en ella el proceso más prioritario de la cola de NUEVOS. En cada unidad de tiempo (incluso en el instante 0) se sigue la siguiente secuencia:

1. Incremento de prioridades 2. Trasvase 3. Selección del proceso a ejecutar de la cola de LISTOS.

Realizar el diagrama de ejecución y dar los tiempos de servicio, de espera e Indices de servicio para los siguientes procesos:

ti Prioridad0 1

B 1 0 C 2 1 D 3 0

A: 2 Procesador + 3 Impresora + 3 Procesador B: 3 Procesador + 1 Impresora + 2 Procesador C: 2 Procesador + 2 Impresora + 5 Procesador D: 1 Procesador + 2 Impresora+ 4 Procesador Nota: Sólo tenemos una impresora en el sistema

Page 13: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Gestión de Procesos Pág. 13

17. EL CIENCOLAS

En un sistema tenemos 3 colas. La cola 1 está gestionada mediante una RR de q=1. La cola 2 está gestionada mediante una SRT y la tercera se gestiona mediante una FIFO.

Existe apropiatividad entre colas, siendo la más prioritaria la cola 1. Un proceso pasará a la cola 2 desde la 1 cuando agote su quantum q sin finalizar su ejecución. Un proceso pasará a la cola 3 desde la 2 tras realizar 2 operaciones de E/S en la cola 2.

Suponiendo que todas las operaciones de E/S se realizan sobre el mismo dispositivo (y este es de uso exclusivo), dibujar el diagrama de ejecución de procesos y calcular los tiempos de servicio, espera e índices de servicio para los siguientes procesos:

P1: 3 up + 1 E/S + 1 up P2: 3 up + 3 E/S + 1 up + 2 E/S + 4 up P3: 1 up + 2 E/S + 1 up + 2 E/S + 1 up P4: 2 up + 6 E/S + 5 up NOTA: Si el comienzo o final de una E/S, o la llegada de un proceso, coincide con el final de un quantum, se considerará que ocurre justo antes de que acabe dicho quantum .

Proceso ti Cola P1 0 3 P2 2 1 P3 4 1 P4 5 1

Page 14: Anon -Problemas de Sistemas Operativos 01-02 PDF
Page 15: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 15

1. INSEGURIDAD CIUDADANA

Explicar si cada uno de los estados siguientes está en un estado "seguro" o "inseguro". Si es

"seguro", indicar cómo es posible completar todos los procesos. Si es "inseguro" demostrar cómo puede darse el interbloqueo.

ESTADO A ESTADO B Recursos Recursos Asignados Necesitados Asignados Necesitados

P1 2 6 4 8 P2 4 7 3 9 P3 5 6 5 8 P4 0 2

Disponibles =1 Disponibles = 2 2. RECURSOS SEGUROS

Considerando la siguiente situación de un sistema:

RECURSOS Asignados Máximos necesitados R1 R2 R3 R4 R1 R2 R3 R4

P0 0 0 1 2 0 0 1 2 P1 1 0 0 0 1 7 5 0 P2 1 3 5 4 2 3 5 6 P3 0 6 3 2 0 6 5 2 P4 0 0 1 4 0 6 5 6

Si el número total de recursos del sistema es: R1=3, R2=14,R3=12 y R4=12. a. ¿Está el sistema en un estado seguro? ¿Por que? .3. MONOPROCESO

Si en un sistema se está ejecutando sólo un proceso:

. ¿Puede producirse interbloqueo? . ¿Puede producirse la postergación indefinida? Razona tus respuestas.

Page 16: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 16

4. PELIGRO EN LA TERMINAL

Supongamos que en un sistema existen 5 procesos en un momento dado cuyas necesidades de recursos son las siguientes:

RECURSOS Asignados Máximos necesitados Láser Línea Cinta Terminal Láser Línea Cinta Terminal

A 1 3 0 2 4 5 1 8 B 1 1 1 4 3 2 1 6 C 1 0 0 1 1 0 0 2 D 0 1 2 1 4 6 3 9 E 1 1 0 1 2 1 0 2

Donde el número máximo de recursos en el sistema es: Impresoras láser=4, de líneas=6, cintas=3, y terminales=10.

a. ¿Está en un estado seguro el sistema? Razónalo. b. ¿Se podría conceder la petición de E, (0,0,0,1)? Razónalo.

c. Si en lugar del algoritmo del banquero, se hubiera pensado en técnicas de detección y recuperación del interbloqueo, utilizando la reducción de gráficas de asignación de recursos, y en un momento dado el Sistema se encuentra en la siguiente situación con 4 procesos (P1,P2,P3,P4):

RECURSOS Asignados Solicitudes pendientes Láser Línea Cinta Terminal Láser Línea Cinta Terminal

P1 1 3 0 2 0 0 1 8 P2 1 1 1 2 2 2 0 0 P3 1 0 0 2 0 1 0 2 P4 0 1 2 2 3 0 0 0

Demostrar si existe o no interbloqueo.

5. EL INGENIERO INSEGURO

Construir un estado de asignación de recursos y peticiones pendientes entre recursos que sea inestable o Inseguro, en el que haya tres procesos y dos tipos de recursos con 6 y 4 unidades disponibles. Explicar por qué es inseguro. ¿Cómo podría resolver el sistema operativo esta situación? 6. GRAFOLOGIA

Dibujar los grafos de asignación de recursos para los problemas 1 y 2.

Page 17: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 17

7. EL GRAFÓLOGO

Contestar a las preguntas, dado el siguiente grafo de recursos reutilizables en serie: R1 P2 R2 P3 P1 R4 R3 P4

a. ¿Existe interbloqueo en el sistema? b. ¿Qué procesos están interbloqueados?

8. SUPERFICIES DISJUNTAS

En un sistema existen dos procesos, necesitando ambos una misma impresora y un mismo terminal. Si P1 solicita la impresora en el instante 5 y la libera en el instante 9, y el terminal lo solicita en el instante 7 y lo libera en el 12, y si P2 requiere la impresora en el instante 8 de su ejecución y lo libera en el 15 y requiere el terminal en el instante 3 y lo libera en el instante 6, ¿existirá posibilidad de interbloqueo en el sistema si los dos procesos se empiezan a ejecutar en el mismo instante? Razona tu respuesta y, si es afirmativa, expón como podría evitarse. 9. EL CONSTRUCTOR

Construir un estado de asignación de recursos inseguro con 4 procesos, un recurso de tipo impresora con 3 unidades y que cada proceso haya demandado 2 recursos.

Page 18: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 18

10. PREDICTOR Dada la siguiente situación de un sistema

RECURSOS ASIGNADOS NECESIDAD MÁXIMA

R1 R2 R3 R4 R1 R2 R3 R4

P1 0 0 1 2 0 0 1 2

P2 2 0 0 0 2 7 5 0

P3 0 0 3 4 6 6 5 6

P4 2 3 5 4 4 3 5 6

P5 0 3 3 2 0 6 5 2

Recursos Disponibles D = (2 1 0 0) a) ¿ Está el sistema en un estado seguro o inseguro ?. ¿Por qué?. b) ¿ Está el sistema bloqueado ?. Especificar las condiciones necesarias para que se de un interbloqueo y razonar cuáles de ellas se están cumpliendo y cuales no en el sistema anterior. c) Si llega de P3 la solicitud ( 0, 1, 0 0 ), ¿ podrá concederse inmediatamente dicha solicitud ?. ¿ En que estado dejaría al sistema la concesión inmediata de dicha solicitud?. ¿ Que procesos, si los hay, están o podrían estar interbloqueados si se concede dicha solicitud ?. 11. EL MAREITO Reducir el siguiente grafo de asignación de recursos.

P1

P7 P3

P4 P2

P6

P5 R2

R1

R3

Page 19: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 19

12. VENTANUCOS'98 El nuevo sistema operativo Ventanucos'98 funciona de la siguiente forma: - Si un proceso solicita un recurso y está libre, se le concede en el acto.

- Cuando un proceso consigue todos los recursos que necesita, realiza su tarea, y los libera antes de que llegue cualquier otra petición.

Vamos a tener 4 recursos R1,R2,R3,R4 y 6 procesos P1,P2,P3,P4,P5,P6. El vector de recursos disponibles es: E = (1,2,2,1). La tabla de NECESIDADES MÁXIMAS es:

R1 R2 R3 R4

P1 1 1 1 0

P2 1 1 1 0

P3 0 1 1 0

P4 1 0 0 1

P5 0 1 0 0

P6 0 1 0 1

Dada la siguiente secuencia de peticiones: P5 solicita (0,1,0,0) P1 solicita (0,1,0,0) P3 solicita (0,1,0,0) P2 solicita (1,0,0,0) P6 solicita (0,1,0,0) P4 solicita (1,0,0,0) P1 solicita (1,0,0,0) P2 solicita (0,0,1,0) P1 solicita (0,0,1,0) P3 solicita (0,0,1,0) P2 solicita (0,1,0,0) P4 solicita (0,0,0,1)

a) ¿Qué solicitud produce estado inseguro en el sistema?. Justifícalo.

b) ¿Se llega a una situación de interbloqueo si se conceden todas las solicitudes?. ¿Por qué?

c) ¿Cuantas de las solicitudes pendientes tendrían que concederse antes de la que produce el estado inseguro para que éste no se produzca nunca?. ¿Por qué?.

Page 20: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 20

13. CON ÉL LLEGÓ EL ESCÁNDALO

En un sistema en el que se están ejecutando 5 procesos, existen 4 recursos diferentes. El número

total de recursos es el siguiente: R1=2, R2=3, R3=2 y R4=2.

En un instante dado la situación del sistema es la que se muestra a continuación: Asignados Necesidades Máximas

R1 R2 R3 R4 R1 R2 R3 R4

P1 1 0 1 0 2 0 2 0

P2 0 0 0 2 0 1 0 2

P3 0 1 1 0 1 1 1 0

P4 1 1 0 0 1 1 0 1

P5 0 0 0 0 0 2 0 0

1.- ¿Está el sistema en un estado seguro o inseguro?

2.- Si no utilizamos ninguna técnica de evitación de interbloqueo y a continuación llegan las siguientes

solicitudes:

1) P2 solicita R2 2) P3 solicita R1 3) P4 solicita R4

4) P5 solicita R2 5) P2 solicita R3 6) P5 solicita R2

¿Qué solicitud produce interbloqueo? No tener en cuenta las necesidades máximas para este

apartado

3.- Reducir el grafo resultante

Page 21: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 21

14.- EL NEGOCIADOR

Dado el siguiente gráfico de ejecución de procesos, donde: P1 solicita el disco en T5 y la libera en T7. P1 solicita la impresora en T6 y la libera en T8. P2 solicita la impresora en T1 y la libera en T3. P2 solicita el disco en T2 y lo libera en T4.

¿Hay posibilidad de evitar el interbloqueo?. ¿Cómo?. 15.- 1, 2, 3.... RESPONDA OTRA VEZ

Dados los siguientes procesos:

Y sabiendo que una vez solicitado el disco, se liberará automáticamente tras usarlo (antes de la próxima petición de recursos), mientras que el resto de recursos, una vez concedidos, tan solo se liberarán al finalizar el proceso.

Imponer una ordenación lineal de los recursos para prevenir posibles situaciones de interbloqueo en el sistema, de tal forma que dichos procesos se ejecuten sin problemas. ¿ Qué otras técnicas conoces para prevenir los interbloqueos (enuméralas)?.

P1

P2

T8

T7

T6

T5

T4 T3 T2 T1

PRODESO P0 ...................... SOLICITUD DE DISCO ........................ SOLICITUD DE IMPRESORA ............................ SOLICITUD DE TERMINAL

PRODESO P1 ...................... SOLICITUD DE IMPRESORA ........................ SOLICITUD DE TERMINAL ............................ SOLICITUD DE DISCO

PRODESO P2 ...................... SOLICITUD DE IMPRESORA ........................ SOLICITUD DE DISCO ............................ SOLICITUD DE TERMINAL

Page 22: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 22

16. TABLITAS

En un sistema contamos con 4 tipos de recursos: R1, R2, R3, R4, de los que existen 1,2,2,1 recursos de cada tipo respectivamente.

En un instante dado tenemos 5 procesos P1, P2, P3, P4, P5, que tienen asignados los siguientes recursos:

R1 R2 R3 R4 P1 1 1 P2 1 1 P3 1 P4 P5

En ese mismos instante los procesos han realizado las siguientes peticiones que están en espera de ser concedidas por estar los recursos ocupados: P1 ha solicitado R1 P4 ha solicitado R1 P5 ha solicitado R2

Se conocen además las necesidades máximas de cada proceso:

R1 R2 R3 R4 P1 1 1 1 0 P2 1 1 1 0 P3 0 1 1 0 P4 1 0 0 1 P5 0 1 0 1

¿Existe interbloqueo?. ¿Por qué?.

Page 23: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 23

17. LA TELARAÑA Dado el siguiente grafo:

Y las siguientes necesidades máximas para cada proceso:

Procesos R1 R2 R3 R4 P1 0 0 1 2 P2 2 7 5 0 P3 6 6 5 6 P4 4 3 5 6 P5 0 6 5 2

Si llega de P3 la solicitud ( 0 , 1, 0 , 0 ), ¿se le debería conceder la petición sabiendo que estamos

usando una técnica de evitación de interbloqueos? ¿Si se concediera la petición, habría interbloqueo? Justificar ambas respuestas.

P1

P2

P5

P4

P3

R4

R3

R1

R2

Page 24: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 24

18. NO ME PIDAS, POR FAVOR Dado el siguiente grafo: Y las siguientes necesidades máximas para cada proceso:

R1 R2 R3 R4 P1 2 1 0 0 P2 1 2 0 0 P3 0 1 1 1 P4 0 1 1 2

Si el proceso P2 solicita un ejemplar del recurso R1, ¿se le debería conceder la petición sabiendo que estamos usando una técnica de evitación de interbloqueos? ¿Si se concediese la petición, habría interbloqueo? Justificar ambas respuestas. 19. CUADRICULORUM Dado el siguiente grafo de ejecución de procesos, donde: P1 solicita el disco en T5 y lo libera en T7 P1 solicita la impresora en T6 y la libera en T8 P2 solicita el disco en T1 y lo libera en T3 P2 solicita la impresora en T2 y la libera en T4 Comentar la situación.

R1

P1

P2

P3

P4

R2 R3

R4

P1

T1 T2 T3 T4 P2

T5

T6

T7

T8

Page 25: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 25

20. TABLITAS II

En un instante determinado la situación de un sistema con 4 procesos y 4 recursos es la siguiente:

ASIGNADOS NECESIDADES MÁXIMAS R1 R2 R3 R4 R1 R2 R3 R4

P1 1 0 0 0 1 1 1 0 P2 0 1 0 1 1 1 0 1 P3 0 1 1 0 0 1 1 1 P4 0 0 1 0 0 0 2 0

Conociendo que existe 1 recurso de R1, 2 recursos de R2, 3 recursos de R3 y 2 recursos de R4, ¿se encuentra el sistema en un estado seguro?. ¿Existirá interbloqueo tras una petición del recurso R2 por parte del proceso P1?. Usar las técnicas apropiadas en cada caso.

21. VENTANUCOS MILENIUM

Tenemos un sistema operativo donde se están ejecutando 5 procesos P1,P2,P3,P4 Y P5. En dicho sistema existen 4 recursos: R1 con 2 instancias, R2 con 3 instancias, R3 con 2 instancias y R4 con 3 instancias. Sabemos que las necesidades máximas de cada proceso son:

Se sabe que las necesidades máximas de los procesos son las siguientes:

R1 R2 R3 R4 P1 0 0 1 1 P2 1 2 0 0 P3 1 1 2 0 P4 0 1 0 2 P5 1 1 1 0

Inicialmente ningún proceso tiene asignado ningún recurso, y comienzan a realizar las siguientes

solicitudes:

1.- P5 solicita 1 ejemplar de R1 8.- P1 solicita 1 ejemplar de R3 2.- P3 solicita 2 ejemplares de R3 9.- P1 solicita 1 ejemplar de R4 3.- P2 solicita 1 ejemplar de R2 10.- P4 solicita 1 ejemplar de R2 4.- P3 solicita 1 ejemplar de R1 11.- P2 solicita 1 ejemplar de R1 5.- P2 solicita 1 ejemplar de R2 12.- P5 solicita 1 ejemplar de R3 6.- P4 solicita 2 ejemplares de R4 13.- P3 solicita 1 ejemplar de R2 7.- P5 solicita 1 ejemplar de R2

¿En que estado quedará el sistema tras la solicitud 6?. ¿Y tras la 7?. De producirse interbloqueo, ¿qué solicitud lo provocaría?. Usar las herramientas adecuadas en cada caso.

Page 26: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Interbloqueos Pág. 26

22. EL DILEMA En un instante determinado la situación de un sistema con 5 procesos y 5 recursos es la siguiente:

Asignados Necesidades Máximas R1 R2 R3 R4 R5 R1 R2 R3 R4 R5

P1 0 1 1 0 1 0 1 1 0 1 P2 0 1 1 0 0 0 2 1 2 0 P3 1 0 0 0 0 1 0 0 1 2 P4 0 0 0 1 0 1 0 1 1 0 P5 0 0 0 0 0 1 1 1 0 0

En dicho instante las solicitudes ya realizadas y pendientes de conceder son P2 solicita (0, 0, 0, 1, 0) P4 solicita (1, 0, 0, 0, 0) P5 solicita (0, 1, 1, 0, 0) 1) ¿Esta el sistema en un estado seguro o inseguro?. ¿Existe interbloqueo? 2) Si llega la petición: P3 solicita (0, 0, 0, 1, 0) ¿Se produciría interbloqueo? Nota: Usar la técnica apropiada para cada caso.

Page 27: Anon -Problemas de Sistemas Operativos 01-02 PDF
Page 28: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 28

1. LA DIOSA MEMO Nos encontramos en un sistema con una memoria de 128K. El S.O. ocupa 64K y se encuentra en la parte alta de dicha memoria (posiciones de la 64 a la 127). La zona de usuario será, por tanto, la restante, o sea, la que va de las posiciones 0 a la 63. La gestión de esta memoria es mediante particiones variables, con una sola lista encadenada para gestionar huecos libres y ocupados. Si se sigue como política de asignación de huecos la FIRST FIT y llega la siguiente secuencia de sucesos: 1) LLega proceso 1 de tamaño 8K 2) LLega proceso 2 de tamaño 6K 3) LLega proceso 3 de tamaño 6K 4) LLega proceso 4 de tamaño 6K 5) LLega proceso 5 de tamaño 3K Obtendremos la siguiente lista encadenada: 1 0 8 2 8 6 3 14 6 4 20 6 5 26 3 -1 29 35 a) Indica como iría quedando la lista si se produjeran a continuación los siguientes sucesos: a) Sale proceso 1 b) LLega proceso 6 de tamaño 5K c) Sale proceso 3 d) LLega proceso 7 de tamaño 4K b) Si en vez de usar listas encadenadas usaramos mapa de bits y los clics fueran de 1K, ¿Cual sería el mapa de bits una vez se ha producido el suceso d)? c) Comentar si se produce Fragmentación Externa y/o Interna y cuanta en cada caso. 2. EL INOLVIDABLE Tenemos un procesador con una MMU que gestiona segmentación paginada. La dirección lógica es de 28 bits y la memoria física es de 16 Megabytes. El tamaño de la trama es igual al de la página: 1 Kbyte. Sabiendo que el tamaño máximo de un segmento puede ser de 1 Mega, responder a las siguientes preguntas: a) ¿Cuál es la estructura y el tamaño en bytes de la tabla se segmentos si para conseguir la dirección de la tabla de páginas de ese segmento sumamos la dirección base al número de página? b) ¿Cuál es la estructura y el tamaño en bytes de una de las tablas de páginas si para conseguir la dirección física concatenamos la trama con el desplazamiento? c) ¿Qué tamaño en bytes tiene el registro STBR? NOTA: Tanto la tabla de segmentos como las tablas de páginas se encuentran en memoria física.

Page 29: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 29

3. PIFIÓN Tenemos un sistema de memoria virtual paginada. Las direcciones lógicas son de 8 bits. La memoria física es de 64 bytes. Las páginas son de 16 bytes. Si se produce una secuencia de referencias a página como la siguiente: 0, 4, 2, 0, 4, 7, 0, 7, 4, 7, 0, 7, 2, 7, 3 Contesta: A B

a) ¿Cuántos fallos de página se producirán? b) Si la tabla de páginas se encuentra en memoria, ¿Cuántos accesos a memoria se producirán? c) Si usamos un algoritmo de reemplazo AGING con una historia de cuatro tics de reloj (4 bits),

¿qué página saldría en el punto A y en el punto B si fuese necesario un reemplazo de página? ¿ Y si contásemos con 5 bits de historia? Supón que cada referencia es un tic de reloj.

4. DUMBO Tenemos un sistema de memoria virtual paginada. Las direcciones lógicas son de 40 bits. La memoria física es de 128 Kbytes. Las páginas son de 2 Kbytes. a) ¿Cuánto ocupa la Tabla de Páginas, y cuál es el contenido de una de sus entradas? Justificarlo. c) En este ejercicio, ¿dónde consideras más interesante situar la tabla de páginas, en memoria

física, en registros internos o en registros asociativos? ¿Por qué? 5. HECHIZO DE BYTES Tenemos un procesador con una MMU que gestiona segmentación paginada. La Tabla de Segmentos tiene 32 posiciones y las Tablas de Páginas son de 16 posiciones.El tamaño total en bytes de la Tabla de Segmentos es de 136 bytes y el de las Tablas de Páginas de 18 bytes.Si el tamaño de la trama es igual al tamaño de la página: 2 Kbyte, responder a las siguientes preguntas: a) ¿Cuál es la estructura de la tabla se segmentos si para conseguir la dirección de la tabla de

páginas de ese segmento sumamos la dirección base al número de página? b) ¿Cuál es la estructura de una de las tablas de páginas si para conseguir la dirección física

concatenamos la trama con el desplazamiento? c) ¿Cuántos bits tendrá la dirección lógica? d) ¿Cuál es el tamaño máximo de la memoria física? e) ¿Qué tamaño tendrá el registro STBR?

NOTA: Tanto la tabla de segmentos como las tablas de páginas se encuentran en memoria física.

Page 30: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 30

TABLA SEGMENTOS TABLA PÁGINAS 0 @ Base Límite 0 f 15 31 6. MÁS PIFIAS En un sistema de memoria virtual paginada las direcciones lógicas son de 13 bits y las direcciones físicas de 11 bits. Las páginas son de 512 bytes. Si se produce una secuencia de referencias a página como la siguiente: 4, 7, 0, 4, 1, 3, 4, 1, 4, 1, 2, 3, 4, 1, 0, 1, 3, 4 Contesta: A a) ¿Cuántos fallos de página se producirán...

- con algoritmo de reemplazo óptimo?

- con algoritmo de reemplazo FIFO?

- con algoritmo de reemplazo LRU?

b) Si la tabla de páginas se encuentra en memoria, ¿Cuántos accesos a memoria se producirán en cada caso? c) Si usamos un algoritmo de reemplazo AGING con una historia de cuatro tics de reloj (4 bits), ¿qué página saldría en el punto A ? ¿ Y si contásemos con 5 bits de historia? NOTA: Suponer que cada referencia es un tic de reloj.

Page 31: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 31

7. PÁGINAS AMARILLAS El cargador de programas ha inicializado las tablas de segmentos y de páginas de un proceso de usuario según la figura, donde se puede ver la Unidad de Gestión de Memoria de la máquina y las posiciones de memoria física que nos interesan. La memoria direcciona palabras de 32 bits. Todas las cifras están en decimal. 22 10 p d 3 19 s p’ T. S. ≤ T.P. i s 0 STBR no error t d 22 10 4 + + i ≤ STLR 1

no 32 32 1 9 22 error bit validez =

no 1024 2 2048 1 1024 error 2048 1 1028 0 1 1011 5120 1 0020 STBR = 1024 5120 1 STLR = 6 6144 4 4096 4096 1 0321 6144 1 1958 0 0222 1 1963 0 0223 1 1000 1 0004 ¿Cuáles son las direcciones válidas del espacio lógico de este proceso? ¿Y las correspondientes al espacio físico una vez cargado en memoria? ¿Son contiguos estos dos espacios?

Page 32: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 32

8. LA ILÓGICA REALIDAD Tenemos un sistema con una gestión de memoria paginada. El espacio físico puede llegar a 32 Mbytes y el espacio lógico permite direcciones de 32 bits. Aplicamos paginación a la traducción de direcciones del espacio lógico al físico. Cada página es de 4096 bytes. a) Dibujar la estructura de la tabla de páginas necesaria para esta traducción de direcciones. b) ¿Cuántos bits de la dirección lógica sirven de índice a la Tabla de Páginas? c) ¿Cuántos bits se necesitan en una entrada de la Tabla de Páginas para indicar la página física? d) Si un programa ocupa 8 Mbytes, ¿cuántas entradas marcadas como válidas tendría la Tabla de

Páginas para poder direccionar toda la memoria física que ocupa el programa? e) Añadimos todo lo necesario para tener ahora Memoria Virtual Paginada. Si cada entrada de la

Tabla de Páginas ocupa 2 bytes, ¿cuánta memoria ocuparían las entradas válidas de la Tabla para un programa de 1 Mbyte?

9. LOGIC MEMORY Tenemos un sistema que proporciona Memoria Virtual basada en segmentación paginada. El espacio lógico que el sistema operativo ofrece a los procesos está formado por un máximo de 16 segmentos de un tamaño máximo de 128 Mbytes. Sabiendo que la memoria física de la máquina es de 512 Mbytes, que las Tablas de segmentos y de páginas estarán en memoria física, y que el tamaño de la página es de 4 Kbytes, responder a las siguientes preguntas: a). Dado el esquema de traducción de direcciones lógicas a físicas, indicar el nombre y la medida en bits de todos los campos y tablas. b). ¿Cuántos bits de control añadirías a cada tabla? Justificarlo. c). Si tenemos un proceso que ocupa 3 segmentos, y los tamaños de los segmentos son 178 Kbytes, 200 Kbytes y 1 Mbyte, ¿ cuál es la mínima cantidad de memoria que necesitaremos para las tablas de segmentos y de páginas para este proceso?

Page 33: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 33

10. MÁS PÁGINAS AMARILLAS a). Con la MMU de la figura, ¿se podría usar su estructura para gestionar memoria Virtual Paginada bajo demanda? 22 10 p d 3 19 s p’ T. S. ≤ T.P. i s 0 STBR no error t d 22 10 4 + + i ≤ STLR 1

no 32 32 1 9 22 error bit validez = no 1024 2 2048 1 1024 error 2048 1 1028 0 1 1011 5120 1 0020 STBR = 1024 5120 1 STLR = 6 6144 4 4096 4096 1 0321 6144 1 1958 0 0222 1 1963 0 0223 1 1000 1 0004 b). ¿Se podría añadir una política de reemplazo tipo AGING? ¿Qué información sería necesaria en la tabla de páginas? c). Con los valores de la figura.Adaptar la información de las tablas de páginas suponiendo que la dirección 1 del espacio lógico del proceso da un fallo de página. Dibujar las entradas de las tablas antes y después de recuperar el fallo de página. d). ¿Qué pasaría si intentamos acceder a la dirección 1073741826 (01000000000000000000000000000010 en binario)?¿ Y a la dirección 1610613763 (01100000000000000000010000000011 en binario)?

Page 34: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 34

11. MEMORIA IMPOSIBLE Tenemos una MMU que gestiona Segmentación Paginada con Memoria Virtual. El espacio lógico es de 88 Mb. y el espacio físico de 60 Mb. Las páginas son del mismo tamaño que las tramas : 3 Kb. Sabemos, además, que el tamaño máximo que puede tener un segmento es de 520.000 bytes. a). Comenta la posible estructura de la tabla de segmentos y de una de las tablas de páginas b). ¿Cuántos accesos a memoria supondría acceder a un dato que se encuentra en la página 10 del segmento 2, si la página aún no se encuentra en memoria y se produce un fallo de página sin reemplazo? c). ¿Qué pasaría si se intenta ejecutar la dirección lógica:000000100000001111000000000? 12. EL BUSCADOR DE HUECOS Tenemos un sistema con un mecanismo de traducción de direcciones que proporciona Segmentación Paginada. El cargador ha puesto en memoria, además del sistema operativo, los procesos A y B. Cada proceso puede llegar a tener hasta 3 segmentos y cada segmento podría ocupar toda la memoria física. El espacio físico sobre una memoria física de 32 Kb con páginas de 4 Kb ha quedado como sigue (ver figura): a). Dibuja y rellena el esquema del mecanismo de traducción (segmentación paginada), con los valores de las tablas de segmentos y páginas del sistema operativo y de los dos procesos. b). Decide donde pondrías, razonándolo, en memoria física, las tablas de segmentos y de páginas. Una vez decidido, rellena los valores de los elementos de las tablas de la pregunta 1. que habían quedado indeterminados. 0 SO seg 0 5096 4096 8192 SO seg 2 3100 12228 PB seg 0 6028 16384 20480 SO seg 1 4K 24576 PA seg 0 4 K 28672 PA seg 1 2346 32768 8 bits

Page 35: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 35

13. MEMORIA MORTAL Tenemos una MMU que gestiona segmentación paginada con memoria virtual. La memoria física es de 4 Kbytes y el espacio lógico de 8 Kbytes. Los procesos no pueden tener más de 3 segmentos y el tamaño máximo que puede tener un segmento es el de la mitad de la memoria física. El tamaño de la trama es de 256 bytes. a).- Comentar el esquema de traducción de direcciones que se esta utilizando en este sistema, y la estructura de las tablas de segmentos y de las tablas de páginas. b).- Llega un proceso de 3 Kbytes, segmentado de la siguiente forma:

SEGMENTO 0 : 1280 BYTES

SEGMENTO 1 : 560 BYTES SEGMENTO 2: 1232 BYTES

El proceso de usuario comienza su ejecución y el procesador lanza las siguientes direcciones lógicas (en decimal): 1200, 2588, 5256, 4106, 29, 4116, 1200, 280, 5306, 2112, 1210, 5256. Utilizamos paginación bajo demanda pura y la política de asignación del sistema operativo le asigna a nuestro proceso 5 tramas. ¿ Cuántos fallos de página se producirán si utilizamos el algoritmo FIFO de reemplazo de páginas? ¿Y si usamos el algoritmo LRU? c).- Si usamos un algoritmo de reemplazo AGING con una historia de 4 tics de reloj (4 bits), que páginas saldrían en cada uno de los reemplazos? ¿Y con 5 tics de reloj? NOTA: Suponer que cada referencia es un tic de reloj. d).- El sistema operativo está residente y ocupa 768 bytes. Las tramas ocupadas por el sistema operativo son la 1, la 4 y la 8. ¿Qué valores tendrán la tabla de segmentos y las tablas de páginas del proceso de usuario una vez finalizada la secuencia de direcciones del apartado 2 con el algoritmo de reemplazo LRU? Rellena los valores que puedas, habrá algunos que no es posible rellenarlos. 14. IGUALDAD DE ESPACIOS ¿Qué tamaño tendría el espacio lógico de un proceso en un sistema con Memoria Virtual Segmentada si cada proceso puede tener hasta 4 segmentos de medida máxima 1 Mbyte? Consideramos que las medidas del espacio físico y lógico son iguales. a). Dibujar el mecanismo de traducción de direcciones y la tabla de segmentos. b). ¿Cuál es el contenido de una entrada de la tabla de segmentos ?

SEGMENTO 0

SEGMENTO 1

SEGMENTO 2

Page 36: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 36

15. EL SEGMENTADOR

Tenemos un sistema que ofrece segmentación paginada sobre un espacio físico de 128 Kb. Las páginas tienen 2 Kb. La dirección lógica es de 18 bits, de la cual 2 bits indican el segmento. En un momento determinado tenemos la memoria física de la siguiente manera (los números indican número de página): 0 11 35 39 50 60 10 34 38 49 59 63 Espacio ocupado Espacio libre Queremos cargar un programa que, inicialmente, tiene las siguientes características: Segmento de código: 13 Kb. Segmento de datos: 34 Kb. Segmento de pila: 8 Kb. a). ¿ Cabe todo el programa en memoria? En caso afirmativo, hacer un esquema de una posible distribución de los segmentos dentro de la memoria física b). Supongamos que dentro del segmento de pila son válidas las páginas lógicas 16, 17,18 y 19. ¿Cuáles son la primera y la última direcciónes lógicas válidas de la pila? c). Hacer un esquema de la tabla de páginas del segmento de pila donde aparezcan las entradas con página válida. 16. MINIMEM Tenemos un proceso con la siguiente estructura de memoria, en un sistema que proporciona segmentación. Cada posición del espacio lógico y físico representa un byte. SEGMENTO SEGMENTO SEGMENTO Espacio Físico CODIGO(0) DATOS(1) PILA(2) 0 a 0 f 0 i 0 f 1 b 1 g 1 j 1 g 2 c 2 h 2 k 2 h 3 d 3 l 3 i 4 e 4 j 5 k 6 l 7 8 9 10 a 11 b 12 Espacio Lógico c 13 d 14 e 15 El sistema proporciona un espacio lógico de hasta 4 segmentos de hasta 8 bytes de longitud, y la máquina dispone de una memoria de 16 bytes. Dado el esquema de la ocupación del espacio lógico y físico, dibujar la correspondiente tabla de traducción de segmentos para el proceso, con el contenido y la longitud de todos los campos, indicando cual de los campos es opcional y cual es necesario.

Page 37: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 37

17. TRABAJO VIRTUAL En un sistema que se gestiona con Memoria Virtual con Paginación por Demanda, el tamaño de la memoria física es de 16 Kbytes. Si el tamaño de la página es igual al de la trama e igual a 1Kbyte y una tabla de páginas tiene un tamaño total de 256 bits, sin ningún tipo de control de protecciones.

a) Calcular la estructura de la MMU, sabiendo que el algoritmo de reemplazo que se usa es el N.R.U. b) El sistema asigna un conjunto de trabajo inicial a cada proceso de tamaño 5, que puede aumentarse si

es necesario, pero nunca disminuirse. Para cambiar su tamaño, el conjunto de trabajo tiene una S=10, de manera que si durante las 10 referencias estudiadas se invoca un numero de páginas diferentes que supera en más del 20% al tamaño del conjunto de trabajo existente, este se aumentará para poder contener el nº de páginas referenciadas. Suponemos que un proceso lleva cierto tiempo ejecutándose y ya ha cargado en memoria las páginas: 1, 3, 5, 6 y 7 y además referenciadas en ese orden. Las referencias que realiza a partir de ese momento son: 7, 8, 7, 9, 10, 9, 10, 11, 12, 13, 12, 11, 12, 13, 11, 10, 11, 13, 14, 15, 14, 13, 12, 11, 12, 11, 9, 8, 9, 7 Suponiendo una política N.R.U., ¿que tamaño de conjunto de trabajo necesitará dicho proceso para ejecutarse, y cuales son las páginas que se encuentran en memoria al finalizar cada grupo de 10 referencias?. (sólo para la secuencia de referencia, no para las que ya están en memoria). c) Suponiendo que el S.O. se encuentra en las tres primeras tramas de la memoria física, y que para cada fallo de página el sistema asigna la primera trama que encuentra libre. ¿ Qué valores hay en cada una de las posiciones de la tabla de páginas al final de cada grupo de 10 referencias?. ¿Qué porcentaje de fallos de página existe en la ejecución del proceso (sólo para la secuencia de referencias dada) ? NOTA: El bit de referenciada se pondrá a cero cada 5 referencias. Cada dos referencias a una página supone modificarla. 18. EL VIAGRA

Tenemos un sistema gestionado mediante Memoria Virtual. Una dirección lógica es de 28 bits; los 8 primeros (los más altos) indican el segmento y los 10 siguientes son el número de página lógica. Las direcciones físicas son de 24 bits. 1.- Dibuja el mecanismo de traducción de direcciones desde la dirección lógica hasta la memoria física. Indica la medida de todos los campos en bits, sabiendo que se usa como algoritmo de reemplazo el MFU.

2.- ¿Cuál es el tamaño máximo de una Tabla de Páginas?

3.- Un segmento de 4800 bytes, ¿qué fragmentación interna y externa genera? No hay que tener en cuenta la Tabla de Páginas.

4.- Un proceso quiere hacer crecer el anterior segmento en 200 bytes. ¿Qué ha de hacer el S.O.?

5.- ¿Y para hacerlo crecer de 5000 a 5500 bytes?

6.- Comentar las diferencias de expresar el límite de los segmentos en número de bytes o bien en número de páginas. Modificar la traducción de direcciones para reflejar el caso, de estos dos, que no hayas hecho en el apartado 1.

Page 38: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 38

19. LA ESCALERA VIRTUAL

Nos encontramos en un sistema gestionado mediante Memoria Virtual. La memoria física es de 640 Kb. El tamaño de la trama es igual que el de la página e igual a 2 Kb. El espacio lógica es de 20 bits y un proceso nunca tendrá más de 8 segmentos. 1) Dibuja el esquema completo de la MMU del sistema. 2) Este sistema no trabaja con Paginación por Demanda Pura sino que a todo proceso que va a ejecutarse

se le asignan 3 tramas de la memoria. El proceso colocará las tres primeras páginas del primer segmento en la memoria antes de comenzar a ejecutarse. Una vez comenzada su ejecución la política de asignación de tramas utilizada es Working Set con

S=8. Se le asignarán al proceso tantas páginas como indique el Conjunto de Trabajo, calculado cada 8 referencias.

Un proceso que tiene 2 segmentos de 16 Kb. cada uno emite la siguiente secuencia de direcciones lógicas:

0 0 0 1 0 1 0 1 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 0 2 1 0 0 2 1 0 1 7 0 2 0 0 7 1

Donde la primera fila indica el segmento y la segunda la página. a) ¿Cuántos fallos de página y cuántos reemplazos se producirán si se usa el algoritmo LRU? b) ¿Qué valores tendremos en el campo límite de la tabla de segmentos de este proceso?

20.- LA COLMENA

En un sistema gestionado mediante segmentación paginada se han cargado 3 procesos: P1, P2 y P3. La memoria física es de 64 Kb. y las páginas son de 2 Kb. Un proceso no puede tener más de 8 segmentos y el tamaño máximo de cada uno de ellos no puede sobrepasar la mitad de la memoria física.

1) Dibuja el esquema de la MMU de este sistema si sabemos que cada entrada de la Tabla de Segmentos tiene 4 bytes y cada entrada de la Tabla de páginas tiene 1 byte (entre los que figura un bit de Referenciada y un bit de Modificada).

2) Si los 3 procesos están cargados en la memoria de la siguiente forma

P1 P2 P3 P1 P1 P3 P3 P2 P2 P3

S0

P0

S0

P1

S0

P0

S0

P1

S0

P2

S0

P0

S0

P1

S0

P2

S0

P3

S1

P0

S1

P1

S1

P2

S1

P3

S1

P0

S1

P1

S1

P0

S1

P1

S2

P0

S2

P1

S2

P2

S2

P0

S2

P1

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Y sabemos que las posiciones donde se encuentran las Tablas de Segmentos de cada proceso son la posición 0, 64 y 144 respectivamente y que las Tablas de Páginas de cada proceso están justo a continuación de la Tabla de segmentos de dicho proceso. Rellenar las Tablas de Segmentos y las Tablas de Páginas de los 3 procesos.

3) ¿Qué le falta a esta MMU para poder gestionar Memoria Virtual? 4) ¿Qué ocurriría si se intenta ejecutar la dirección lógica 24577 (en decimal)?

Page 39: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 39

21.- EL CORRECTOR Un sistema gestionado mediante segmentación paginada con memoria virtual tiene direcciones lógicas de 15 bits y direcciones físicas de 13 bits. El tamaño de la página es igual al de la trama e igual a 1Kb. Ningún proceso puede tener más de 4 segmentos. a. Dibuja el esquema de la MMU de este sistema sólo con los bits necesarios en las tablas sabiendo que no tenemos STLR pero si STBR. b. ¿Cuánto ocupa en bytes la Tabla de Segmentos?¿ Y la Tabla de Páginas? c. Un proceso es cargado en memoria. En el STBR se almacena el valor 500 y la memoria física guarda los siguientes valores:

500 519 2223 1 524 5000 1 514 4096 1 0

BV

514 3 1 1 7 1 1 3 1 0 5 1 0

0 0 BV

519 2 1 1 7 1 0 5 1 1

0 0 BV

524 1 1 1 3 1 0 2 1 0 6 1 0 4 1 1

0 0 ¿Qué ocurriría si se ejecutan las siguientes direcciones lógicas? A. 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 B. 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 C. 0 0 0 1 0 0 0 1 0 1 1 0 0 0 0 D. 0 1 1 0 1 0 0 0 0 0 0 0 0 1 0

Page 40: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 40

22. SEXTO SENTIDO

Disponemos de una MMU que gestiona 64K de memoria física com memoria virtual mediante

segmentación paginada. El número máximo de segmentos que puede tener un proceso son 3, y el tamaño máximo de un segmento es de 32K. El tamaño de la trama es de 1k.

En este sistema para obtener la entrada de la tabla de segmentos de un segmento dado se multiplica el número del segmento por 4 (se añanden dos bits a cero a la derecha del número binario del segmento). Cada entrada de la tabla de segmentos estará compuesta de la siguiente información:

BASE DE LA T.P LÍMITE BIT DE VALIDEZ Cada entrada de la tabla de páginas estará compuesta de:

TRAMA BIT VALIDEZ BIT PRESENCIA Se sabe que el contenido del STBR es 150, y que las posiciones de memoria son de un byte. Tras un volcado de memoria se tiene la siguiente información:

0000 ........................

0604 1 1 0 0 0 0 0 0

0150 0 0 0 0 0 0 1 0 0605 1 1 0 0 0 0 0 00151 0 1 0 1 1 0 0 0 0606 1 1 0 0 0 0 0 00152 0 0 0 1 1 1 1 1 0607 1 0 0 0 0 0 0 10153 1 1 1 1 1 1 1 1 0608 1 0 0 0 0 0 0 10154 0 0 0 0 0 0 0 0 0609 1 0 0 0 0 0 0 10155 1 0 1 0 0 1 1 0 0610 0 0 0 0 0 0 0 10156 0 0 0 1 0 1 1 1 0611 0 0 0 0 0 0 0 10157 1 1 1 1 1 1 1 1 0612 1 0 0 0 0 0 0 00158 0 0 0 0 0 0 1 0 0613 1 0 0 0 0 0 0 00159 0 1 1 1 1 0 0 0 0614 0 1 0 0 0 0 0 00160 0 0 0 0 1 1 1 1 0615 0 1 0 0 0 0 0 00161 1 1 1 1 1 1 1 1 0616 0 1 0 0 0 0 0 10162 1 0 1 1 0 0 1 0 0617 0 0 0 0 0 1 0 00163 1 1 1 0 0 0 1 0 0618 0 0 0 0 0 1 0 10164 1 0 0 1 1 0 1 0 .....................0165 1 0 0 1 1 1 0 0 0628 0 0 0 0 0 0 0 10166 0 0 0 1 1 0 1 1 0629 0 0 1 1 1 1 0 10167 0 0 1 0 1 1 1 1 0630 0 0 1 1 1 1 0 10168 0 1 1 0 0 0 1 0 0631 0 1 0 0 1 0 0 10169 1 0 1 0 0 0 0 0 0632 0 0 1 0 1 0 0 00170 0 1 1 0 0 0 0 1 0633 0 0 0 1 1 1 1 10171 1 0 0 1 1 0 0 0 0634 0 0 0 0 1 1 1 00172 1 0 0 1 1 0 0 1 0635 0 1 0 1 0 1 0 00173 1 0 0 1 1 0 0 0 0636 0 0 1 0 1 1 0 1

........................

0637 0 0 0 1 0 1 0 1

0600 0 0 1 0 0 0 1 0 0638 0 0 1 0 1 1 0 00601 0 1 1 1 1 1 1 0 0639 0 1 1 1 1 0 0 10602 1 1 0 0 0 0 1 1 .................0603 0 0 1 1 0 0 1 0

Page 41: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 41

Dibujar la MMU correspondiente con los valores válidos para las tablas. ¿Cuántos segmentos tiene el proceso?. ¿Cuántas páginas tiene cada segmento? ¿Qué ocurrirá al lanzar las siguientes direcciones lógicas? A: 01000100011010011 B: 10000001111001011 C: 10001000011111111 23.- EL CONJUNTADO En un sistema gestionado mediante memoria virtual paginada, el espacio lógico del procesador es de 4 Kb.. En la memoria física tenemos 16 tramas de 256 bytes cada una. Llegan al sistema dos procesos A (en primer lugar) y B (en segundo lugar), de 2 Kb. y 3 Kb. respectivamente. Ya tenemos otros procesos cargados en memoria en las tramas 1, 4, 6 y 10. Cuando llega un proceso el sistema carga en memoria, en las 3 primeras tramas que encuentra libre, las 3 primeras páginas del proceso. Posteriormente se usa una técnica de Working Set con S=8, de forma que el sistema asigna al proceso tantas tramas como indica el Working Set. El sistema utiliza un algoritmo LRU de sustitución de páginas, y se produce la siguiente secuencia de referencias:

Proceso A A A B B B B A A A A B B B B A A A A A B B B B A A A A B B B BPágina 1 0 4 0 3 2 0 7 0 1 4 5 3 2 0 2 0 1 4 7 5 3 2 1 4 7 0 2 2 3 0 1

1 2 a) Dibuja el esquema completo de la MMU de este sistema b) ¿Qué valores tendrán cada uno de los campos de las tablas de páginas de los procesos A y B en los instantes 1, 2 y 3? c) ¿Cuánto valen los conjuntos de trabajo para A y B en los instantes 2 y 3? 24. ESQUEMA MORTAL

En un sistema con Paginación, tenemos una memoria física de 30 Kb. Las páginas son de 3 Kb. y el tamaño máximo que puede tener un proceso es de 5 páginas. Dibuja un esquema adecuado para este sistema tratando de controlar los tamaños máximos del proceso, de la memoria física y de la página.

3

Page 42: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 42

25. EL BIZCOCHO En un sistema gestionado con particiones fijas de 10 Kb, 8 Kb, 6 Kb, 4 Kb y 4 Kb tenemos una sola cola gestionada mediante BEST FIT. El S.O. esta residente y ocupa la partición de 10 Kb. Los procesos que llegan son los siguientes:

ti t Tam.

1 0 5 7 Kb 2 1 3 3 Kb 3 2 3 7 Kb 4 3 4 8 Kb 5 4 3 4 Kb 6 5 6 5 Kb

1) ¿Qué Fragmentación Interna y Externa se produce tras la llegada del proceso 3? 2) ¿Y tras la llegada del proceso 6?

26. LO QUE LA MENTIRA ESCONDE

La memoria física de un sistema gestionado mediante segmentación paginada es de 64 Kb. Páginas y tramas son de 2 Kb. Sabemos, además, que los procesos de este sistema no pueden tener más de 8 segmentos y cada segmento nunca puede ser mayor de 32 Kb.

1) Dibujar el esquema de la MMU conociendo que una entrada de la tabla de segmentos tiene 32 bits y

una entrada de la tabla de páginas tiene 8 bits (entre ellos se encuentra un bit de referenciada y un bit de modificada).

2) Llegan 2 procesos al sistema P1 y P2. P1 tiene 2 segmentos (de 8 y 4 Kb) y P2 3 segmentos (de 6, 4 y

6 Kb). El sistema asigna al proceso P1 las tramas 4, 5, 14, 15, 18 y 19 y al proceso P2 las tramas 10, 11, 12, 23, 24, 26, 27 y 28.

Sabiendo que el sistema ha colocado la tabla de segmentos del proceso P1 en la posición 64 y la del P2 en la posición 256 de la memoria y que las tablas de páginas de cada proceso se encuentran justo a continuación de las tablas de segmentos de cada proceso, rellenar por completo las tablas de segmentos y de páginas de los 2 procesos.

3) Si el procesador lanza la dirección lógica 77824 y en esos momentos esta el proceso P2 en ejecución.

¿Qué ocurriría?

Page 43: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 43

27. DUMP

Disponemos de una MMU que gestiona 128K de memoria física con memoria virtual mediante segmentación paginada. El número máximo de segmentos que puede tener un proceso son 5, y el tamaño máximo de un segmento es de 32K. El tamaño de la trama es de 4k. En este sistema para obtener la entrada de la tabla de segmentos de un segmento dado se multiplica el número del segmento por 4 (se añaden dos bits a cero a la derecha del número binario del segmento).

La tabla de segmentos controla sus entradas válidas mediante el registro STLR. La tabla de páginas dispone del valor de la trama, el bit de validez, el de presencia y el de modificada por ese orden.. En la tabla de segmentos el valor de la posición base es la primera información de la entrada.

Se sabe que para un proceso el contenido del STBR es 724 y el del STLR es 2 , y que las

posiciones de memoria son de un byte. Tras un volcado de memoria se tiene la siguiente información:

0000 .......................

.0662 0 1 0 0 0 1 1 1

0510 0 0 0 0 0 0 1 0 0663 0 1 0 1 0 1 0 00511 0 1 0 1 1 0 0 0 0664 1 1 0 0 0 0 0 00512 1 0 0 1 0 1 1 1 0665 1 0 0 0 0 0 0 10513 0 1 1 1 0 1 0 0 0666 1 0 0 0 0 0 0 10514 0 1 0 0 1 1 0 1 0667 1 0 0 0 0 0 0 10515 0 1 0 1 1 1 1 0 0668 0 0 0 0 0 0 0 10516 0 0 0 1 0 0 1 1 .....................0517 1 1 1 1 1 0 1 1 0718 1 0 0 0 0 0 0 00518 0 0 0 0 0 0 1 0 0719 1 0 0 0 0 0 0 00519 0 1 1 1 1 0 0 0 0720 0 1 0 0 0 0 0 0

.................... 0721 0 1 0 0 0 0 0 00626 1 1 1 1 1 0 1 1 0722 0 1 0 0 0 0 0 10627 1 0 1 1 0 0 1 0 0723 0 0 0 0 0 0 0 00628 1 1 1 0 0 0 1 0 0724 0 0 0 0 0 0 0 10629 1 0 0 0 1 1 1 1 0725 0 0 0 0 0 0 0 00630 0 0 1 1 0 1 0 1 0726 0 0 1 1 0 0 0 00631 0 0 0 1 1 0 1 1 0727 0 1 0 0 0 0 0 00632 0 0 1 0 1 0 1 1 0728 0 0 0 0 0 0 0 10633 0 1 1 0 0 0 1 0 0729 0 0 1 1 1 0 1 00634 1 0 1 0 0 0 0 0 0730 1 0 0 1 1 1 1 00635 0 1 1 0 0 0 0 1 0731 0 0 0 0 0 0 0 00636 1 0 0 1 1 0 0 0 0732 0 0 0 0 0 0 0 10637 1 0 0 1 1 0 0 1 0733 0 1 0 0 1 0 1 00638 1 0 0 1 1 0 0 0 0734 1 0 1 0 1 1 1 0

..................... 0735 0 0 0 0 0 0 0 00658 0 0 1 0 0 0 1 0 0736 0 0 1 0 1 1 0 00659 0 1 1 1 1 0 1 0 0737 0 1 1 1 1 0 0 10660 1 1 0 0 0 0 1 1 0738 1 0 1 1 1 1 0 00661 0 0 0 1 1 1 0 0 0739 1 1 1 1 0 0 0 0

Page 44: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 44

Dibujar la MMU correspondiente con los valores válidos para las tablas. ¿Cuántos segmentos tiene

el proceso?. ¿Cuántas páginas tiene cada segmento? ¿Qué ocurrirá al lanzar las siguientes direcciones lógicas? A: 011010000001000000 B: 000011110000000000 C: 001001000000001111 D: 010001000111111111 28. ¡ NO ME VENGAS CON MEZCLAS!

Supongamos que en un sistema queremos ejecutar 3 procesos A, B y C mediante un algoritmo de planificación S.R.T.

Estos 3 procesos se encuentran ya en memoria cargados en las tramas que el sistema les ha asignado (3 tramas a cada proceso). Los 3 procesos han cargado en memoria las paginas 0, 1 y 2.

Si el sistema utiliza un modelo de administración dememoria virtual paginada con algoritmo de reemplazo LFU y cada proceso realiza la siguiente secuencia de ejecución:

A: P0, P2, P3 + 2 E/S + P0, P3, P0, P7 + 1 E/S + P1, P7 + 3 E/S + P3, P0, P1

B: P1, P0, P1, P4, P0 + 1 E/S + P4, P0, P4, P5, P4 + 3 E/S + P1, P0, P3

C: P2, P1 + 1 E/S + P0, P2, P0, P6 + 1 E/S + P3, P0, P2, P6 + 1 E/S + P3, P0, P2, P1

Si consideramos que cuando no se produce fallo de página gastamos una unidad de tiempo de procesador y cuando hay fallo y tenemos que reemplazar gastamos dos unidades de tiempo de procesador, realizar el diagrama de ejecución de los procesos. NOTA: HAY VARIOS DISPOSITIVOS DE E/S EN EL SISTEMA 29. REDUMP

Disponemos de una MMU que gestiona la memoria mediante memoria virtual con segmentación paginada. El tamaño de la palabra es de 16 bits. La dirección lógica es de 15 bits y la dirección física de 19 bits. Las tramas son de 2 Kbytes y sabemos que cada entrada de la tabla de segmentos tiene 4 bytes. En la tabla de segmentos la primera información de la entrada se corresponde con la dirección base, y a continuación está el límite. Para controlar el número de entradas válidas de la tabla de segmentos no se usa STLR. Se sabe además que el STBR vale 850. La estructura de las entradas de tabla de páginas es la siguiente: TRAMA Lectura (R) Escritura (W) Ejecución (X) Modificada (M) Referenciada (R) Presencia (P) Validez (V) En esta MMU para obtener la entrada de la Tabla de Segmentos, para un segmento dado, se multiplica por 2 el número del segmento (Se añade un cero al número de segmento en binario).

Page 45: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 45

Tras un volcado de memoria se ha obtenido la siguiente información:

0868 11111000 01111111 0869 11011011 01010011

0850 00000000 01101101 0870 00000000 01100001 0851 01001111 10100001 0871 00000010 01101111 0852 00000000 01101100 0872 00010100 01100001 0853 11011010 10010001 0873 00000001 01100111 0854 00000000 01101101 0874 00100001 01010001 0855 11000111 11010001 0875 00000100 01111111 0856 01011101 01000000 0876 00001000 00010000 0857 00100010 01010000 0877 00000100 00010000 0858 11101001 01000100 0878 00000000 11100001 0859 11010101 01000000 0879 00010000 00000000 0860 01010010 00000000 0880 01110110 00010000 0861 10101100 11010010 0881 00001000 00000000 0862 10100010 00001000 0882 01001011 00001000 0863 10100011 11000000 0883 01011111 10110111 0864 11110111 11100000 0884 11011011 11111111 0865 10101001 00100000 0885 11100000 01110111 0866 10101010 01011100 0867 10110100 00100100

¿Cuantos segmentos tiene este proceso? Dibujar la MMU correspondiente con todos los valores válidos para las tablas. Que ocurrirá al lanzar las siguientes direcciones lógicas: A: 010001111111100 B: 011100111110100 C: 001101100100000 Si inicialmente están asignadas tantas tramas como páginas hay cargadas en memoria, y usamos el algoritmo de asignación de tramas Working Set con s=4 y se producen las siguientes referencias a páginas:

1- 001010011010000 7- 000001101100100 2- 000010001011111 8- 001100010101010 3- 001110001101011 9- 000001001010100 4- 010000000001010 10- 000010101011100 5- 001000111110110 11- 001000111010000 6- 010001000010000 12- 010000100011101

Representa las páginas cargadas en memoria en cada referencia y el estado de las tablas de página al final de la secuencia. El algoritmo de reemplazo usado es el LRU. NOTA: Para asignar nuevas tramas se comienza consecutivamente a partir de la de mayor número

Page 46: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Administración de Memoria Pág. 46

30. MATRIX

En un sistema gestionado mediante segmentación paginada con memoria virtual se han cargado dos procesos: P1 y P2.

El tamaño de la dirección física es de 16 bits y las tramas son de 2 Kb. El tamaño de la tabla de segmentos y de la tabla de páginas es de 16 bytes y esta última tiene Bit de

Referenciada.

1) Dibuja el esquema de la MMU 2) Si el proceso P1 tiene 3 segmentos (S0 de 15386 bytes, S1 de 3128 bytes y S3 de 6120 bytes) y el

P2 tiene 2 segmentos (S0 de 5850 bytes y S1 de 4000 bytes) y cada uno se encuentra cargado en la memoria de la siguiente forma:

Proceso Segmento Tramas en las que se encuentra cargado

P1 S0 8, 9, 10, 14, 15, 16, 5 y 4 S1 12 y 11 S3 28, 29 y 27

P2 S0 18, 19 y 20 S1 7 y 30

Si las tablas de segmentos de cada proceso están en las posiciones 32 y 128 respectivamente y las tablas de páginas están justo a continuación de las tablas de segmentos de cada proceso. Rellenar las tablas de segmentos y las tablas de páginas de los dos procesos (lo más posible).

3) Si se ejecuta la dirección lógica 15 (en decimal), ¿a que dirección física accederíamos, si el proceso que tiene el procesador es el P1?

4) ¿Cuántos accesos a memoria se producen si se ejecuta la dirección lógica 15 (en decimal) para el mismo proceso P1?

31. QUASIMODO

Tenemos una MMU que gestiona segmentación paginada con memoria virtual. El espacio lógico es de 90 Mb. y el espacio físico es de 57 Mb.

Las páginas son de 3 Kb. y el tamaño máximo de un segmento es de 522.000 bytes.

Dibujar el esquema de la MMU.

Page 47: Anon -Problemas de Sistemas Operativos 01-02 PDF
Page 48: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 48

1. EL RAP DEL CABEZAL En MS-Dos un diskette de 720 Kb. dispone de dos caras, 80 pistas y 9 sectores por pista.Las pistas están numeradas de 0 a 79, desde el exterior hacia el interior y los sectores de 1 a 9. Llegan las siguientes peticiones de disco, cuando el cabezal se encuentra en la pista 40, sector 5 de la cara 0: cara pista sector 1. 0 7 5 2. 0 1 5 3. 0 75 5 4. 0 47 5 5. 0 8 5 6. 0 45 5 7. 0 20 5 8. 0 39 5 9. 0 9 5 10. 0 27 5 Si contamos el nº de pistas por las que tiene que pasar el brazo para atender todas las peticiones. ¿Cuántas pistas tendrá que recorrer para cada una de las políticas: FCFS, SSTF, SCAN, y C-SCAN? 2. SYSFIL Queremos montar un sistema de ficheros (SF) del estilo de UNIX sobre un diskette con 720 sectores de 64 bytes. Este SF tendrá las siguientes características: 1.El sector 0 es el superbloque. 2. Los sectores desde el 1 hasta el 20 serán inodes. El primer inode corresponde al directorio raiz. 3. Los sectores desde el 21 hasta el 719 serán bloques de datos o índices. El tamaño de bloque y

sector coinciden. Estructura del superbloque: - Nombre del sistema de ficheros - Fecha de creación - Puntero al primer sector libre de datos. La lista de bloques libres de datos es encadenada. - Mapa de bits para gestionar los inodes libres. El mapa de bits es de 20 bits. Estructura de un inode: - Tipo de fichero - Numero de links - Lista de punteros a los bloques de datos. Consta de cuatro punteros de dos bytes cada uno. Estructura de una entrada de un fichero directorio: - Nombre del fichero (14 letras) - Número de inode

Page 49: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 49

Se pide: 1. ¿Hechas en falta alguna información en este SF? En caso afirmativo, ¿qué y dónde? 2. ¿Cuántos ficheros puede tener como máximo este SF? 3. ¿Qué tipo de ficheros puede contener? 4. ¿Cùal es el tamaño máximo de un fichero? 5. ¿Y si tuviesemos un quinto puntero en el inode, que apuntase a un bloque de índices que contiene punteros a bloques de datos? 3. HIPERESPACIO Un sistema de ficheros de UNIX utiliza bloques de 1024 bytes y direcciones en disco de 16 bits. En cada i-node caben 8 direcciones de disco para bloques de datos, una dirección de bloque indirecto simple y una de bloque indirecto doble. ¿Cuál es el tamaño máximo de fichero? 4. FATALIDAD En un sistema de ficheros que utiliza FAT, encontramos la siguiente configuración: RAIZ BLOQUE 5 BLOQUE 2

A Dir 5 D Dat 12 G Dat 9

B Dir 2 E Dat 15 H Dat 13

F Dat 10 e e e e e e e e e e FAT X X o o 7 o o 8 6 o 4 o o o o o f f f f f f f f f f

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Se pide: a) El árbol de este sistema de ficheros b) Si no tenemos estructuras de datos en memoria que nos ahorren accesos al disco y el tamaño de un registro es igual al de un sector, que es también la unidad de asignación de espacio, ¿Cuántos accesos a disco son necesarios para leer el registro 5 del fichero F? La FAT ocupa un sector y no se encuentra en memoria.

Page 50: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 50

5.BLOQUES REUNIDOS GEYPER En un sistema de ficheros que utiliza FAT, encontramos la siguiente configuración: RAIZ BLOQUE 15 BLOQUE 3

A Dir 15 D Dat 8 G Dir 4

B Dir 3 E Dat 13 H Dat 2

C Dat 2 F Dat 9 I Dat 12 e e e e e e e e FAT X X 11 o o 6 o 14 o o o 7 5 o 10 o f f f f f f f f

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Se pide: a) El árbol de este sistema de ficheros b) ¿Por qué C y H apuntan al mismo bloque? c) Si no tenemos estructuras de datos en memoria que nos ahorren accesos al disco y el tamaño de un registro es igual al de un sector, que es también la unidad de asignación de espacio, ¿Cuántos accesos a disco son necesarios para leer el registro 5 del fichero H si la FAT ocupa un sector y se encuentra en memoria? ¿ Y si no estuviese en memoria?

Page 51: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 51

6. DISCÒBOLO Tenemos un sistema de ficheros con un espacio de nombres en árbol, con los siguientes directorios, subdirectorios y ficheros: A Fichero B C d e f g h Si suponemos que: - Nunca tenemos estructuras de datos en memoria que nos ahorren accesos al disco. - El tamaño de un registro es igual al de un sector, que es también la unidad de asignación de espacio. Se pide: - Indicar los accesos a disco necesarios para leer el registro 10 del fichero f, suponiendo que el espacio se organiza como: a) Tabla de índices (Inodes). Un fichero sólo tiene un nivel de tabla de índices, y ésta ocupa un sector. b) FAT. Ocupa un sector. c) Sectores encadenados. No hay que considerar el tamaño de los punteros entre registros. - Si el fichero f es un apuntador directo (hard-link) al fichero g, y suponiendo la organización de disco del caso b): d) Indicar los accesos a disco necesarios para leer el registro 10 del fichero f. e) Dibujar el árbol de directorios y ficheros. - Si el fichero f es un apuntador indirecto (soft-link) del fichero g, y suponiendo la organización del disco según b): f) Indicar los accesos a disco necesarios para leer el registro 10 del fichero f. g) Dibujar el árbol de directorios y ficheros 7. HIPERESPACIO II

Un sistema de ficheros de Unix utiliza bloques de 3 Kb y direcciones en disco de 32 bits. En cada i-node caben 6 direcciones de disco para bloques de datos, una dirección de bloque indirecto simple, una de bloque indirecto doble y otra de bloque indirecto triple. ¿ Cuál es el tamaño máximo de un fichero en bytes?

Directorio

Page 52: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 52

8. LA CUENTA DE LA VIEJA Tenemos el siguiente árbol de directorios: / A B C D E F G a)Suponer: - que un registro es igual a un bloque. - que en memoria sólo está la tabla de ficheros abiertos. - y que sólo se dispone de un único buffer de medida 1 bloque para hacer las transferencias a disco. Comentar que organización interna de sistema de ficheros justifican el hecho de que el sistema operativo necesite 18 accesos a disco para leer el registro 15 del fichero G. ¿ Y si son sólo 8 accesos a disco? Razona tu respuesta. b)Suponer además: - una organización del sistema de ficheros como la de UNIX. - que sólo el i-node raiz se encuentra en memoria. Justificar por qué el sistema operativo podría necesitar 11 accesos a disco para abrir el fichero /C/F.

Page 53: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 53

9. FATÍDICO RAIZ BLOQUE 2 BLOQUE 3 BLOQUE 13

B G Dat 14 D 4

H Dat P 11 E

C R Dat 12 F

D 13

BLOQUE 11 BLOQUE 12 /B/F /B/E e e FAT X X o o f f

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1. Rellenar las estructuras de datos sabiendo: a) que el fichero f ocupa los bloques 7, 9 y 8 sucesivamente b) que el fichero e ocupa los bloques 6 y 5 sucesivamente 2. ¿De qué tipos puede ser el fichero P? 3. ¿Cuántos accesos a disco se producirían para visualizar el contenido del fichero e si no tenemos estructuras de datos en memoria que nos ahorren accesos a disco y el tamaño de un registro es igual al de un sector, que es también la unidad de asignación de espacio? La FAT ocupa menos de un sector y no se encuentra en memoria.

Page 54: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 54

10. UNIXEX Tenemos un sistema de ficheros del estilo de Unix sobre un disquete de 36 sectores de 64 bytes. Este sistema de ficheros tiene las siguientes características: 1. El sector 0 es el superbloque. 2. Del sector 1 al 8 son i-nodes. El primer i-node es el i-node raiz. 3. Del sector 9 al 35 son bloques de datos. 4. El tamaño del bloque, del sector y del registro coinciden. 5. En cada i-node tenemos lo siguiente: - tipo de fichero - tamaño del fichero - número de links - 3 apuntadores a bloques de datos - 1 apuntador indirecto simple 6. Cada entrada de un fichero directorio tiene: - nombre del fichero - número de i-node Sabiendo que el fichero F es un hard-link del fichero D del directorio C y que el fichero B ocupa 5 sectores: / A B C D E F D G A) Rellenar la siguiente estructura:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 B) ¿Podría crearse un fichero H en el directorio C que fuese un soft-link al fichero B? Justificarlo. C) ¿Cuántos accesos a disco supone acceder al cuarto registro del fichero B? D) ¿Cuántos accesos a disco supone visualizar el fichero E? NOTA: No tenemos estructuras de datos en memoria que nos ahorren accesos al disco.

SUPER BLOCK

Page 55: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 55

11. FATÍDICO II RAIZ BLOQUE 2 BLOQUE 3 BLOQUE 10

A B K Dat 4 S 8

J D E

C 10 H 12 G

F Link R

BLOQUE 11 BLOQUE 12 /A/D/E NOTA e e e FAT X X o o o f f f

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1. Rellenar las estructuras de datos sabiendo: a) que el fichero J ocupa los bloques 7, 13 y 9 sucesivamente b) que el fichero E ocupa los bloques 6, 15 y 5 sucesivamente c) que el fichero R ocupa los bloques 17,18,16 y 19 sucesivamente d) que el fichero S es un hard-link al fichero G 2. ¿Cuántos accesos a disco se producirían para visualizar el contenido del 3º registro del fichero E si no tenemos estructuras de datos en memoria que nos ahorren accesos a disco y el tamaño de un registro es igual al de un sector, que es también la unidad de asignación de espacio? La FAT ocupa menos de un sector y no se encuentra en memoria.

Page 56: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 56

12. UNIXEX II

Tenemos un sistema de ficheros del estilo de Unix sobre un disquete de 36 sectores de 64 bytes. Este sistema de ficheros tiene las siguientes características: 1. El sector 0 es el superbloque. 2. Del sector 1 al 9 son i-nodes. El primer i-node es el i-node raiz. 3. Del sector 10 al 35 son bloques de datos. 4. El tamaño del bloque y del sector coinciden. El tamaño del registro es de 32 bytes. 5. En cada i-node (1 bloque) tenemos lo siguiente: - tipo de fichero - tamaño del fichero - número de links - 3 apuntadores a bloques de datos - 1 apuntador indirecto simple 6. Cada entrada de un fichero directorio tiene: - nombre del fichero - número de i-node

Sabiendo que el fichero D es un hard-link del fichero G del directorio F y que el fichero B tiene 10 registros, el fichero C 6 registros, el fichero G 2 registros, el fichero E un registro y el fichero H 2 registros: / A E F B C D G H A) Rellenar la siguiente estructura:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

B) ¿ Podría crearse un fichero H en el directorio raíz que fuese un soft-link al fichero E? Justificar la respuesta.

C) ¿ Cuántos accesos a disco supone añadir un 2º registro al fichero E? ¿y añadir un 7º registro al fichero C?

D) ¿ Cuántos accesos a disco supone visualizar el fichero B? NOTAS: No tenemos estructuras de datos en memoria que nos ahorren accesos al disco. La lista de bloques libres está en memoria.

SUPER BLOCK

Page 57: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 57

13. LA CUENTA DE LA VIEJA II Tenemos el siguiente árbol de directorios: / A B C D E F G Suponer: - que un registro es igual a un bloque. - y que sólo se dispone de un único buffer de medida 1 bloque para hacer las transferencias a disco. a) Suponer además: - una organización del sistema de ficheros como la de UNIX. - que sólo el i-node raiz se encuentra en memoria. - que el i-node tiene 3 apuntadores directos y 1 indirecto Justificar por qué el sistema operativo podría necesitar 11 accesos a disco para leer el 4º registro del fichero /C/F. b) Suponer ahora: - una organización del sistema de ficheros como la del Ms-Dos. - la FAT ocupa un bloque y no se encuentra en memoria Justificar por qué el sistema operativo podría necesitar 8 accesos a disco para leer el 4º registro del fichero /C/F.

Page 58: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 58

14. DISCÓBOLO II Tenemos un sistema de ficheros con un espacio de nombres en árbol, con los siguientes directorios, subdirectorios y ficheros: Directorio A Fichero B C d e f g h Si suponemos que: - Nunca tenemos estructuras de datos en memoria que nos ahorren accesos al disco. - El tamaño de un registro es la mitad del tamaño de un sector, que es también la unidad de asignación de espacio. Se pide: - Indicar los accesos a disco necesarios para leer el registro 10 del fichero f, suponiendo que el espacio se organiza como: a)Tabla de índices (Inodes). Un fichero sólo tiene un nivel de tabla de índices,y ésta ocupa un sector. b) FAT. Ocupa un sector. c) Sectores encadenados. No hay que considerar el tamaño de los punteros entre registros. - Si el fichero g es un apuntador directo (hard-link) al fichero f, y suponiendo la organización de disco del caso b): d) Indicar los accesos a disco necesarios para leer el registro 10 del fichero g. - Si el fichero g es un apuntador indirecto (soft-link) del fichero f, y suponiendo la organización del disco según b): e) Indicar los accesos a disco necesarios para leer el registro 10 del fichero g.

Page 59: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 59

15. PROPIEDAD PRIVADA En un sistema Unix tenemos 4 usuarios: A, B, C y D. Cada uno tiene su propio directorio y dentro de él a sus ficheros. Sin embargo necesitan compartirlos debido al proyecto común que están realizando. El sistema de ficheros es el siguiente: / A B C D a1 a2 a3 a4 b1 b2 c1 c2 c3 d1 d2 d3 No existen problemas de protección y todos los usuarios pueden hacer uso de todos los ficheros del sistema. a2 y b1 son hard-links a d1. d1 fue creado por el usuario D. a3 y d2 son soft-links a c1. c1 fue creado por el usuario C. a) ¿Qué ocurriría en el sistema si D quisiera borrar el fichero d1? b) ¿Qué ocurriría en el sistema si C quisiera borrar el fichero c1? c) ¿Qué ocurriría en el sistema si B quiesiera borrar sus dos ficheros: b1 y b2? NOTAS: * En todos los apartados se parte de la situación inicial descrita en el enunciado. * Comenta todas las modificaciones que se producirían en el sistema (en los i-nodes, en los directorios, etc.).

16. EL HUECO LOCO

Tenemos un disco con 134 pistas, 8 sectores por pista y 4 caras. Queremos implementar un sistema de ficheros tipo UNIX para mantener en el disco un máximo de 16 ficheros, cuyo tamaño máximo será de 266 k. El tamaño del sector es de 1K, que coincide con el del Bloque. El tamaño del registro lógico es de 256 Bytes.

Sabiendo que en el sistema sólo podrá existir el directorio raiz, que ocupa como máximo 1 bloque, y que el Superbloque ocupa 14 K.

A) Representar la estructura lógica del disco, indicando el tamaño de cada una de sus partes, así como la estructura del i-node.

B) Indica razonadamente si hay capacidad en el disco para almacenar los 16 ficheros con su máximo tamaño (266 K).

C) ¿Cuantos accesos a disco se necesitan para modificar el registro lógico 50 de cualquier fichero?

Page 60: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 60

17. EL FATÍDICO UNIXEX Disponemos de la siguiente estructura de directorios:

Donde el fichero A tiene 25 registros lógicos, el fichero B tiene 14 registros lógicos, el fichero C tiene 8 registros lógicos y el fichero K tiene 50 registros lógicos. El tamaño de sector es de 1K, el tamaño de bloque es de 2K y el registro lógico ocupa 512 bytes.

Suponiendo que el disco tiene 128 pistas, 2 caras y 4 sectores: A) Dibujar y rellenar para el caso anterior la estructura de un sistema de ficheros tipo MS-DOS ¿Cabría toda la FAT en el tamaño de un registro lógico? ¿Por qué?. B) Suponiendo un sistema de ficheros tipo UNIX, donde el número máximo de ficheros permitidos es 16 (incluyendo al directorio raíz) y el tamaño del i-node es de 1 bloque, ¿qué tamaño de bloque elegirías para minimizar el espacio de disco ocupado con la estructura de ficheros de la figura, si podemos elegir entre bloques de 1K,2K y 3 K?. ¿Cuánto espacio tendríamos ocupado en cada caso?. (Suponer que no hay BOOT y que el Superbloque ocupa 1K) C) Si las características de nuestro disco son: Tiempo de Búsqueda :8 mS Tiempo de Latencia: 2 mS Tiempo de Transmisión: 1K/mS. ¿Cuánto tiempo necesitaríamos para leer el registro lógico nº 45 del fichero K con cada uno de los sistemas de ficheros de los apartados A y B?.

RAIZ

D

E

A

K

C

B

Page 61: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 61

18.- EL MENEITO

Disponemos de un disco con 128 pistas, 8 sectores y 4 caras. El tamaño del sector es de 512 bytes, el de bloque de 1 Kbyte y el registro lógico de 128 bytes. Dicho disco tiene implementada una estructura de ficheros tipo Unix.

En un momento dado la información que hay en el disco es la siguiente:

Donde C es un SoftLink al fichero F, y E es un HardLink al fichero D. Si el fichero F tiene 160 registros, el fichero D tiene 2500 registros, los apuntadores son de 32 bits, y el inode raíz está en memoria. ¿Cuantos accesos a disco son necesarios para leer el registro 90 del fichero C?. ¿ Y el registro 2300 del fichero E ?. Si en un momento dado la cabeza de lectura/escritura se encuentra situada en la pista 60, cada petición de lectura escritura tarda 5 mS en ser atendida, y se produce la siguiente secuencia de peticiones: Momento 0 mS: pistas 55,80,103 Momento 3 mS: pista 38 Momento 12 mS: pista 71 Momento 17 mS: pista 94 Momento 26 mS: pista 86 Momento 32 mS: pista 79 Dibujar el recorrido de la cabeza de lectura escritura si la política de planificación de búsqueda utilizada es una SCAN. Decir el nº de pistas recorridas para atender todas las peticiones. 19.- SISTEMA DE PROCESOS Disponemos de un Sistema Operativo donde la cola de procesos preparados se divide en dos:

• Cola 1. (Prioridad 5) • Cola 2. (Prioridad 3)

La Cola 1 está gestionada mediante una política de planificación Round_Robin de quantum 3. La Cola 2 está gestionada por una FIFO.

/

A B

C D E F

Page 62: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 62

La política de planificación entre colas será de prioridades apropiativa. Un número mayor indicará mayor nivel de prioridad. Los procesos de la Cola 2 tan solo se ejecutarán si la cola 1 está vacía. Todo proceso que se haya ejecutado 2 veces en la Cola 1, pasará al principio de la Cola 2. Al sistema llegan los siguientes procesos:

PROCESO LLEGADA T. EJECUCION COLA INICIAL P1 0 9 1 P2 1 11 1 P3 5 14 1 P4 0 12 2 P5 8 2 2

Los procesos se ejecutarán de la siguiente forma: Proceso P1: 5 ut + Acceso fichero A(Registro 15) + 2 ut + Acceso fichero C(Registro 54) + 2 ut. Proceso P2: 4 ut + Acceso fichero C(Registro 88) + 1 ut + Acceso fichero B(Registro 42) + 6 ut. Proceso P3: 14 ut. Proceso P4: 2 ut + Acceso fichero A(Registro 5) + 2 ut + Acceso fichero C(Registro 14) + 8 ut + Acceso

fichero D(Registro 42) Proceso P5: 1 ut + Acceso Fichero B(Registro 108) + 1 ut. Nota: Si el comienzo o el final de una E/S coincide con el final de un quantum, se considerará que ocurre justo antes de que finalice dicho quantum. Este Sistema operativo corre en un equipo al que hay conectado un disco duro de 256 cilindros, 16 sectores y 2 caras. El tamaño del sector es de 512 bytes. El bloque es de 1K y el tamaño del registro lógico coincide con el de sector. Este disco tiene implementada un estructura de ficheros tipo Unix, con apuntadores de 32 bits, donde en el momento de la ejecución existe el siguiente árbol de directorios:

Donde entre A y C existe un SoftLink.

/

X A B

C D E

Page 63: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 63

El tamaño de los ficheros en número de registros será:

FICHERO REGISTROS A 600 B 188 C 600 D 80 E 16

Sabiendo que cada acceso al disco tarda 1 unidad de tiempo, y que el i-node raíz y el bloque de datos del directorio raíz se encuentran siempre en memoria, se pide: a) Dibujar la estructura del sistema de ficheros, si el número máximo de ficheros del disco puede ser 32, el

superbloque ocupa 1 k y no hay boot. b) ¿ Cuál será el número máximo de registros que podrá tener un fichero si no hay limitación en el tamaño

del disco? ¿Y si estamos limitados al tamaño del disco que tenemos? c) Dibujar el diagrama de ejecución de los procesos, dando sus tiempos de servicio, espera e índice de

servicio así como todos sus valores medios. Nota: Todas las peticiones de E/S se realizan sobre el mismo disco, que no es un dispositivo concurrente, y las atiende por orden de llegada. 20.- EL BLOQUE FANTASMA. Disponemos de un disco de 512 k, sin boot, donde el Superbloque ocupa 1 bloque, y sabemos que el tamaño del registro lógico es de 512 bytes para todos los ficheros. Sabemos que en este disco hay montado un sistema de ficheros UNIX con la siguiente estructura:

Sabemos que entre E y A hay un Hard Link, y que entre D y C hay un Soft Link.

/

B A C

E D

Page 64: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 64

Debido a un corte del fluido eléctrico el disco se ha borrado parcialmente, quedando de la siguiente forma: SB

A

A

A

A

A

A

A

A

A

A

A

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

C

C

C

C

C

C

..................................................................

20 21 22 23 24 25 26 255 Tenemos claro que no hay más bloques de datos de los ficheros de los que aparecen en la figura anterior. a) Completar la figura anterior para que refleje la situación original. b) ¿ Cuantos ficheros podemos tener como máximo ?. c) ¿ Podemos tener el disco ocupado totalmente con un único fichero ?¿Por qué?. d) ¿ Si todos los bloques de datos de los ficheros están llenos, cuantos registros lógicos tiene el fichero C ? e) ¿ Cuantos accesos se necesitan para acceder al registro lógico nº 43 del fichero E ?. f) ¿ Cuantos accesos se necesitan para acceder al registro lógico nº 18 del fichero D ?.

NOTA: No hay ninguna estructura en memoria para facilitar los accesos. 21. REHABILITACIÓN FAT-IDICA

Disponemos de un disquete con formato MS-DOS con 9 sectores, 80 pistas y dos caras. El tamaño del sector es de 512 bytes. Los bloques y el tamaño del registro lógico es de 1K. En el directorio raiz conocemos la siguiente información:

A 50 B 60

De la FAT hemos podido recuperar lo siguiente: 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74E O F

53

63

70

64

E O F

65

55

69

71

E O F

54

67

74

58

68

59

61

72

E O F

73

E O F

66

E O F

Page 65: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 65

Y conocemos los siguientes bloques de datos:

50 51 52 56 57 60 C 51 E 52D 56 F 57

DATOS DE ‘C’

DATOS DE ‘E’

DATOS DE ‘D’

DATOS DE ‘F’

Se pretende implementar un enlace duro con nombre K, que acceda al fichero E desde el directorio raíz. Puesto que MS-DOS no permite realizar el enlace, para poder realizarlo vamos a pasar toda la información a un disco con formato UNIX, que tiene 160 pistas, 16 sectores y 4 caras. Dicho disco dispone de 16 i-nodes y el superbloque ocupa 8 k. El boot ocupa 2 K y el tamaño del bloque y del sector es de 1K. Los apuntadores serán de 16 bits. ¿Cómo quedaría el nuevo disco con toda la información del disquete de MS-DOS y el enlace creado? Suponiendo que no hay estructuras en memoria que nos ahorren accesos al disco ¿ Cuantos accesos son necesarios para acceder al registro lógico nº 11 del fichero E? ¿ Y para acceder al registro lógico nº 3 del fichero K? 22. MINIDISK

Disponemos de un disquete de 80K, que tiene 2 Cabezas, 4 Sectores y 5 Cilindros, y el tamaño del registro lógico es de 1K. El tamaño de bloque es el mismo que el de Sector. En este disco hay tres subdirectorios, hijos del raíz, asociados a tres usuarios diferentes.

• El usuario A, posee el directorio A, donde guarda los ficheros A1 (con 2 reg. Lógicos) y A2 (con 24 reg. Lógicos).

• El usuario B, posee el directorio B, donde guarda los ficheros B1 (con 5 reg. Lógicos) y B2, que es un Soft-Link al fichero A2.

• El usuario C, posee el directorio C, donde guarda los ficheros C1 (con 5 reg. Lógicos) y C2, que es un Hard-Link al fichero B2, (dicho enlace se creó una vez que existía el fichero B2).

1.- Representar como quedaría la FAT y la estructura de directorios del disco, suponiendo que el disco dispone de un sistema de ficheros MS-DOS. Para este caso suponer que el boque 0 está reservado y que el directorio raíz ocupa el bloque 1. 2.- Representar la estructura del disco si disponemos de un sistema de ficheros tipo UNIX. Para este caso suponer que el superbloque ocupa 2K y que no hay BOOT. El número de i-nodes del disco será de 10. 3.- ¿Qué pasaría si se borra el fichero A2? 4.- ¿Qué pasaría si se borra el fichero B2? 5.- ¿Qué pasaría si se borra el fichero C2? 6.- ¿Cuántos accesos son necesarios para acceder al registro nº 24 del fichero C2, si tenemos un sistema de ficheros MS-DOS, y la FAT se encuentra en memoria? 7.- ¿Cuántos accesos son necesarios para acceder al registro nº 24 del fichero C2, si tenemos un sistema de ficheros UNIX?

Page 66: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 66

23. MARCHA ATRÁS En un disco donde hay instalado un sistema de ficheros Unix disponemos de la siguiente información: El bloque y el sector son de 1K El tamaño del registro lógico son 524288 bits Los apuntadores son de 32 bits

La información que se conoce del disco es la siguiente: Implementar en B un Hard-Link llamado F que apunte a E Implementar en C un Soft-Link llamado G que apunte a A Si no hay estructuras en memoria que ahorren accesos a disco, ¿cuántos accesos se necesitan para acceder al registro nº 22 del fichero E?,¿y para acceder al registro nº 15 del fichero F?. Justifícalo. Dibujar la FAT y los bloques de directorios necesarios en un sistema de ficheros MS-DOS para mantener la estructura de ficheros original (sin los enlaces).

48

40

42

44

46 47

49

41

43

45

20

22

38

30

32

34

36 37

39

31

33

35

19

18

21

B O O T

S. B

0

23222120 1918

1 2 3 4 5 6 7 8 9 10

78

80

60

62

61

63

. . .

A 3 B 4 C 5

E 6

Page 67: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 67

24. DISPERSIÓN

Disponemos de un disco de 128 Megabytes con 8 caras, 512 cilindros y 16 sectores donde hay montado un sistema de ficheros UNIX.

El tamaño del bloque equivale al de sector. El registro lógico es de 1K y los apuntadores son de 32 bits. Conocemos que en el disco existen los siguientes ficheros y directorios:

Donde C es un Soft-Link a E. El fichero D tiene 100 registros lógicos, y el fichero E tiene 1400.

Se sabe además que los siguientes accesos se realizan de la siguiente forma:

Acceso al reg nº 70 de D Acceso al reg nº 1400 de E Acceso al reg nº 1 de C Bloque Nº 2 Bloque Nº 2 Bloque Nº 2 Bloque Nº 60 Bloque Nº 60 Bloque Nº 60 Bloque Nº 6 Bloque Nº 9 Bloque Nº 6 Bloque Nº 80 Bloque Nº 84 Bloque Nº 80 Bloque Nº 7 Bloque Nº 8 Bloque Nº 4 Bloque Nº 81 Bloque Nº 92 Bloque Nº 100 Bloque Nº 1028 Bloque Nº 83 Bloque Nº 2 Bloque Nº 6140 Bloque Nº 60

Bloque Nº 9 Bloque Nº 84 Bloque Nº 8 Bloque Nº 70 Dibujar la estructura lógica del disco rellenando toda la información posible con los datos de que disponemos. Implementar un Hard Link llamado H que esté en el directorio raíz y apunte al fichero C. ¿Cuantos accesos se necesitan para acceder la registro nº 120 del fichero H?

/

A B

C D E

Page 68: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 68

25. SOLITARIO

Tenemos un disco de 256 cilindros, 16 sectores y 2 caras con un tamaño de sector de 256 bytes y bloques de 1 Kb.

1) ¿Cuál será el número máximo de registros que podrá tener el fichero A en este disco si la estrucuta del disco es:

Y el superbloque ocupa 1 bloque, no hay boot y el máximo número de ficheros que puede haber en el

sistema es de 16? 2) Si no estuviesemos limitados al tamaño del disco. ¿Cuántos registros lógicos podría tener ese fichero? 3) ¿Cuántos bloques estarían siendo usados para datos, cuántos para inodes, cuántos para directorios y

cuántos para apuntadores, para almacenar la información de la siguiente estructura de directorios? No dibujar la estructura del disco.

C tiene 58 registro lógicos D tiene 1100 registros lógicos E es un hard link a C NOTAS: * Nos encontramos en un sistema Unix * Los apuntadores son de 32 bits

* El tamaño del registro lógico coincide con el tamaño del sector 26. FATTIGA

Disponemos de un disco con 544 Kb, sobre el que hay montado un sistema de ficheros MS-DOS. Se sabe que el registro lógico es de 512 bytes. El disco tiene 2 caras, 4 sectores y 68 cilindros. El tamaño de bloque coincide con el tamaño del sector.

La FAT contiene la siguiente información:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 X x 11 eof 5 6 eof eof eof eof 12 13 14 15 17 16 18 29 19 20 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ... ... ....

21 22 23 24 25 26 27 28 eof 30 eof eof Conocemos además la información de los siguientes bloques de datos: Raíz (bloque 1) Bloque 3 Bloque 7 Bloque 9 Bloque 8 A DIR 3 X DAT 4 E LINK 8 D DAT 2 B DIR 7 Y DAT 10 F DAT 31 C DIR 9 Z DAT 2

/A/Z

A

C

E D

B

Page 69: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Sistema de Ficheros Pág. 69

1.- Si los apuntadores fuesen de 32 bits, y estuviésemos usando listas enlazadas para gestionar el espacio libre, ¿Cuántos bloques necesitaríamos para representar el espacio libre de éste disco? 2.- Representar esa misma información en ese mismo disco, suponiendo que tenemos una estructura de ficheros UNIX, con 32 i-nodes, sin BOOT, y donde el Superbloque ocupa 1 bloque. 3.- ¿Cuantos accesos son necesarios para acceder al registro nº 30 del fichero E? ¿Y para acceder al registro nº 26 del fichero D?. Suponer en ambos casos que trabajamos con el sistema de ficheros UNIX y que los apuntadores son de 32 bits. 27. LA HORMIGONERA Queremos ejecutar 3 procesos A, B y C mediante un algoritmo de planificación SRT. Estos procesos llegan en el instante 0, 2 y 3 respectivamente y el sistema les asigna 3 tramas a cada proceso. El sistema utiliza un modelo de administración de memoria virtual paginada con algoritmo de reemplazo LFU y cada proceso realiza la siguiente secuencia de ejecución: A: P1, P2 + Reg. 5 del fichero X + P1, P2, P1, P3 + Reg. 14 del fichero W + P4, P1, P4 + Reg. 42 del

fichero V + P4, P1, P3 B: P2, P3, P1, P3 + Reg. 88 del fichero W + P1, P3, P4, P5 + Reg. 42 del fichero Y + P3, P1, P5, P2 C: P1, P3, P1 + Reg. 15 del fichero X + P2, P3, P4, P1 + Reg. 54 del fichero W + P4, P1, P3, P2 Todas las operaciones de Entrada/Salida se realizan sobre un mismo dispositivo no concurrente. Sabemos que cada acceso al disco tarda una unidad de tiempo, que tanto el i-node raiz como el bloque de datos del directorio raíz se encuentran siempre en memoria y que cuando se produce un fallo de página (sea con reemplazo o no) gastamos dos unidades de tiempo de procesador mientras sólo gastamos una unidad de tiempo en el caso de que no se produzca fallo. El disco de este sistema tiene 256 cilindros, 16 sectores y 2 caras. El tamaño del sector es de 512 bytes, el bloque es de 1 Kb. y el tamaño del registro lógico coincide con el del sector. Se usa un sistema de ficheros tipo Unix con apuntadores de 32 bits, donde el árbol de directorios es el siguiente: Entre X y W hay un soft-link, el fichero W tiene 90 registros lógicos, y los ficheros Y y V tiene 50 registros lógicos cada uno.

Dibujar la estructura del sistema de ficheros, si el número máximo de ficheros del disco puede ser 16, no hay boot y el superbloque ocupa 1K. Realizar el diagrama de ejecución de procesos y proporciona los tiempos de espera, de servicio e índice de servicio para cada proceso así como los diferentes tiempos medios.

X

/

Z Y

W V

Page 70: Anon -Problemas de Sistemas Operativos 01-02 PDF
Page 71: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 71

1. EL ENTRAMADO

En un sistema operativo tenemos 7 usuarios que pueden trabajar sobre 8 ficheros. Para poder

proteger a unos usuarios contra otros se utiliza una matriz de acceso:

F1 F2 F3 F4 F5 F6 F7 F8

A - - - - R R,W R,W,D - - - - - -

B - - R R - - - - X - - - -

C - - - - R R R,W,D - - - - R,X

D R,X R R - - - - - - R,W,D,X - -

E X R R - - - - - - R,W,D,X - -

F - - R,W,X R R R,W,D - - - - - -

G - - R R - - - - X - - - -

Para ahorrar un poco de espacio se piensa en elaborar listas de control de acceso, con usuarios

reunidos en grupos de trabajo. 1.- ¿Cómo quedarían las listas de control de acceso si sabemos que los usuarios A,C y F se reúnen

en el grupo 1, que los usuarios B y G se reúnen en el grupo 2 y los usuarios D y E en el grupo 3? Sabemos, además, quienes son los propietarios de los ficheros: A es propietario del F4, B del F6, C del F8, D del F1 y del F3, E del F7 y F del F2 y del F5.

2.- Si F2 es un fichero ejecutable y F5 un fichero de datos y estuviésemos en un sistema Unix, ¿qué

operaciones de protección tendría que realizar el usuario F para conseguir que el fichero ejecutable F2 modifique de forma controlada al fichero F5 cuando los usuarios que pertenezcan al mismo grupo que el usuario F lo ejecute?

2. NUMERITOS Una determinada entidad utiliza el algoritmo R.S.A para encriptar sus comunicaciones. Se sabe que la clave pública de dicha entidad es 5, y que n vale 65. Descubre y justifica cual sería la clave de desencriptación de dicha entidad. 3. DESVERANITO. Se pretende encriptar la palabra VERANO mediante el algoritmo DES con las siguientes características: Se usa una sola ronda de cifrado. El bloque es de 8 bits. La clave es la letra A. La permutación de la clave es intercambiar los 1 por 0 y los 0 por 1. La permutación inicial es poner el bit de mayor peso como bit de menor peso La función de transformación para obtener la parte derecha es la XOR. El alfabeto utilizado es:

A: 0000 E: 0100 N: 1000 S: 1100 B: 0001 J: 0101 O: 1001 T: 1101 C: 0010 L: 0110 P: 1010 U: 1110 D: 0011 M: 0111 R: 1011 V: 1111

Page 72: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 72

4. GOLDENEYE

El agente 008 ha sufrido un accidente en su última intervención. Resulta que era el último especialista en criptoanálisis y al Gobierno le llega un texto cifrado que no consiguen desencriptar. Piden ayuda a un famoso diseñador de sistemas operativos, el Dr. Perejil, y le pasan el texto cifrado:

NPAΘI,RΘSΘMSSXCΘEAΘBΘMYNF.G.ELQTERO,AIICLMΘIΘESΘ DATDAΘIXTΘΘNΘΘJSTDΘIEIIEΘDPIVUΘTOΘRXOSHOAAEYEE REOXAAAEN.OELUETPSNAURLUSΘΘANAIA

El texto contiene 126 caracteres. Lo único que han podido averiguar es que está encriptado por

transposición de columnas, pero la clave tampoco la pueden descifrar, pues también está encriptada, aunque saben que tiene 9 caracteres.

La clave viene cifrada por sustitución, utilizando como clave de un solo uso el comienzo de éste

mismo párrafo, y es la siguiente: YÑISIQCDL ¿Sabrías descifrar la clave? ¿Cuál es el mensaje secreto?

NOTA: Considerar que los códigos de los caracteres son los siguientes: Θ (Espacio) ⇒ 0 A ⇒ 1 B ⇒ 2 C ⇒ 3 D ⇒ 4 E ⇒ 5 F ⇒ 6 G ⇒ 7

H ⇒ 8 I ⇒ 9 J ⇒ 10 K ⇒ 11 L ⇒ 12 M ⇒ 13 N ⇒ 14 Ñ ⇒ 15

O ⇒ 16 P ⇒ 17 Q ⇒ 18 R ⇒ 19 S ⇒ 20 T ⇒ 21 U ⇒ 22 V ⇒ 23

W ⇒ 24 X ⇒ 25 Y ⇒ 26 Z ⇒ 27 , ⇒ 28 . ⇒ 29

5. GOLDFINGER

Considerar el siguiente texto cifrado producido con un cifrado por transposición por columnas: ELCN HHLA TTOT SUTI HBOU ROOX HEMI TGFD OONE OURX. Por legibilidad hemos presentado el texto cifrado en grupos de cuatro letras, aunque el texto cifrado real es una sola cadena que se obtiene suprimiendo los espacios entre grupos. Descubrir este cifrado y obtener el texto llano original. ¿Qué necesita descubrir respecto a la clave? ¿Depende la ruptura del cifrado del descubrimiento de la clave de cifrado original? Explicar. (Sugerencia: Puesto que la sentencia en texto llano proviene de una guía de viajes sobre Florida, puede ser razonable esperar hallar en él la palabra FLORIDA). 6. CAPACIDAD TEÓRICA

¿Cuáles son las principales diferencias entre las listas de capacidades y las de acceso?

Page 73: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 73

7. FRANCIA 98.

La policía francesa ha recibido el siguiente texto de las autoridades inglesas:

PICANΘΘΘLNNSHNΘΘAETOXAOAUΘLUOOGΘLSRDAUΘAUSLRMIDΘQLHISGEAΘLSSROUΘXΘDEAESOAIEΘAESYSΘLE

a) Lo único que se sabe es que el texto está cifrado mediante trasposición por columnas y que la clave es de 4 caracteres. Se sabe, además, que cuando el texto está colocado correctamente (cada columna en su lugar) en una de las líneas podrá leerse la palabra 'SUYA' literalmente.

b) La policía francesa quiere enviar al ministerio del interior francés la última palabra que se descifra del texto anterior. Para ello usa la clave pública del ministerio que es e=3 y n=29. ¿Que recibirá el ministerio antes de desencriptar?.

NOTA: La codificación de los caracteres es:

Θ -->0 A-->1 B-->2 C-->3 D-->4 E-->5 F-->6 G-->7 H-->8 I-->9

J-->10 K-->11 L-->12 M-->13 N-->14 O-->15 P-->16 Q-->17 R-->18 S-->19

T-->20 U-->21 V-->22 W-->23 X-->24 Y-->25 Z-->26

8. EL CAPACIDAD.

Tenemos un sistema con 3 tipos de usuarios distintos: Administrador de sistema, Manager de grupo y usuarios de grupo.

El Administrador tiene derechos de lectura, escritura y ejecución sobre los ficheros de los Manager de grupo.

Los Manager de grupo tienen derecho de borrado sobre los ficheros de los miembros de su grupo.

Los miembros de un grupo tienen derecho de lectura sobre los ficheros de los demás miembros de su mismo grupo.

Todos los usuarios tienen todos los derechos sobre los ficheros de los que son propietarios.

Los derechos existentes en el sistema son Lectura, Escritura, Ejecución y Borrado.

El USR0 es el Administrador del sistema.

Existen 4 grupos de usuarios G1,G2,G3 y G4 compuestos por:

GRUPO MANAGER MIEMBROS

G1 USR1 USR2,USR5,USR6

G2 USR2 USR3,USR7

G3 USR4 USR1,USR8

G4 USR9

Page 74: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 74

Los usuarios son propietarios de:

USUARIO FICHEROS

USR0 F18

USR1 F13,F15

USR2 F1,F5,F6

USR3 F7,F10

USR4

USR5 F9

USR6 F3,F4

USR7 F2,F11

USR8 F8,F12

USR9 F19

a) ¿Cómo quedarían las Listas de Capacidades para dicho sistema?.

b) Describir brevemente 6 técnicas para romper la seguridad de un sistema informático

Page 75: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 75

9. ACCESO CONTROLADO

Disponemos de un sistema con dos tipos de usuarios, el Administrador y el resto de usuarios, que

serán miembros de los diferentes grupos en que se organizan los usuarios.

El Administrador tiene todos los derechos sobre todos los ficheros del sistema, aunque se ha

autolimitado el acceso de escritura sobre los ficheros de los miembros de los grupos.

Los miembros de los distintos grupos no tienen ningún derecho sobre los ficheros de los miembros

de otros grupos, pero tienen derecho de lectura sobre los ficheros de los miembros de su mismo grupo.

El fichero donde se definen los grupos llamado 'grupos.conf' se encuentra encriptado usando el

método de transposición por columnas, con la palabra clave 'clave'. Si visualizamos dicho fichero

obtenemos lo siguiente:

@,|S324GRR@|SSSS21UU@135UGRRUUGR@,@ El fichero donde se definen los miembros de los grupos llamado 'miembros.conf', tiene la información

de los usuarios en texto llano, pero los nombres de los ficheros se encuentran encriptados usando el método

R.S.A, con los siguientes valores:

d=7 que será la clave de desencriptación

n=33 que se calcula a partir de p=3 y q=11.

Si visualizamos el fichero obtenemos la siguiente información:

ADMINISTRADOR 18 29

USR1 18 9 19 18 4

USR2 18 24

USR3 18 5

USR4 18 28

USR5 18 14

Obtener las listas de capacidades para dicho sistema.

Nota: codificación de caracteres para el algoritmo R.S.A A --> 1 G--> 7 , --> 13 6 --> 19

B --> 2 H --> 8 1 --> 14 7 --> 20

C --> 3 I --> 9 2 --> 15 8 --> 21

D --> 4 J --> 10 3 --> 16 9 --> 22

E --> 5 K --> 11 4 --> 17 0 --> 23

F --> 6 L --> 12 5 --> 18

Page 76: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 76

10. EL RUMOR Durante el verano del 98 se propagó un rumor por toda la Escuela debido a un malentendido. Un alumno lo quiso comunicar a sus compañeros más cercanos sin que el resto se enterase. Para ello elaboró un documento y lo encriptó usando para ello transposición por columnas. El texto encriptado es el siguiente:

AMΘUΘEΘEOTΘEMSESUΘUΘOΘIΘEN.RA.ΘHΘREΘXΘIAEVNTRRΘOΘEIEIOMUΘICDVΘI.HUSQLMETΘASSEΘΘIQLJ.POFRΘEARLZLCREΘEADSSROΘIEAMΘEΘOΘDNAEMROΘOENΘYODEENSMPIEPBELMEDNHDCRQSTΘEΘΘPA La clave utilizada para encriptar este texto ha sido también cifrada mediante el algoritmo DES, utilizando las siguientes características:

- Cada carácter está codificado en binario con 4 bits - La primera permutación utilizada ha sido intercambiar los 1 por 0 y los 0 por 1. - Se han realizado 2 iteraciones - La clave utilizada en el algoritmo DES ha sido: 00 11 00 11 00 - La función que se ha aplicado para obtener la parte derecha siguiente es: XOR - La permutación aplicada sobre la clave es: El bit de mayor peso se pone como bit de menor

peso. - Una vez encriptada, la clave utilizada para la transposición por columnas es: BODIC

Codificación de caracteres: Θ 0 A 1 B 2 C 3 D 4 E 5 F 6 G 7 H 8 I 9 J 10 K 11 L 12 M 13 N 14 O 15

Page 77: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 77

11. MAD MAX IV Se ha interceptado la cadena de caracteres: O G A R D J.

Se sabe que ha sido encriptado con el algoritmo DES usando las siguientes características:

• Cada carácter esta codificado en binario con 4 bits usando la siguiente codificación:

A 0000 F 0101 M 1010 S 1111

B 0001 G 0110 N 1011

C 0010 I 0111 O 1100

D 0011 J 1000 P 1101

E 0100 L 1001 R 1110

• Usamos bloques de 12 bits

• En la primera permutación se intercambian los 4 primeros bits con los 4 últimos bits

• Se han realizado 2 iteraciones

• La clave usada es 110110

• La función aplicada para obtener la parte derecha siguiente es la equivalencia, cuya tabla de verdad es:

X Y

0 0 1

0 1 0

1 0 0

1 1 1

La inversa es la misma

• La permutación aplicada a la clave es intercambiar los dos bits de mayor peso por los dos de menor peso

Se pide desencriptar la cadena de caracteres interceptada.

Page 78: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 78

12. CRIPTONITA

Se ha interceptado el siguiente mensaje encriptado con R.S.A.

08 15 11 44

Se sabe que el mensaje tiene cuatro caracteres, y que la codificación de dichos caracteres se ha realizado usando la clave de encriptación e= 11 y n= 51, dando como resultado las cifras anteriores.

Obtener la clave de desencriptación y descifrar el mensaje.

NOTA: La codificación de los caracteres es:

Θ -->0 A-->1 B-->2 C-->3 D-->4 E-->5 F-->6 G-->7 H-->8 I-->9

J-->10 K-->11 L-->12 M-->13 N-->14 O-->15 P-->16 Q-->17 R-->18 S-->19

T-->20 U-->21 V-->22 W-->23 X-->24 Y-->25 Z-->26

13. CAPACIDAD LIMITADA

Tenemos un sistema con 3 tipos de usuarios distintos: Administrador de sistema, Manager de grupo y usuarios de grupo.

El Administrador tiene derechos de lectura, escritura y ejecución sobre los ficheros de los Manager de grupo.

Los Manager de grupo tienen derecho de borrado sobre los ficheros de los miembros de su grupo. Los miembros de un grupo tienen derecho de lectura sobre los ficheros de los demás miembros de

su mismo grupo. Todos los usuarios tienen todos los derechos sobre los ficheros de los que son propietarios. Los derechos existentes en el sistema son Lectura, Escritura, Ejecución y Borrado. El USR0 es el Administrador del sistema. Existen 3 grupos de usuarios G1,G2 y G3 compuestos por:

GRUPO MANAGER MIEMBROS

G1 USR2 USR4,USR7

G2 USR3 USR1,USR8,USR9

G3 USR6 USR5

Page 79: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 79

Los usuarios son propietarios de:

USUARIO FICHEROS

USR0 F6

USR1 F1,F14

USR2 F5

USR3 F7,F9

USR4 F2

USR5 F3,F4

USR6 F8

USR7 F13

USR8 F10

USR9 F11,F12

¿Cómo quedarían las Listas de Capacidades para dicho sistema?. 14. OBVIO

Se ha interceptado el siguiente mensaje codificado con el algoritmo R.S.A. con n=85 y e=13:

39 39 01 13 70 82 61 01

Se sabe que la palabra resultante de descifrar el texto ha sido cifrada con el algoritmo

DES según las siguientes características:

Tamaño de Bloque de 16 bits. 1 iteración Permutación inicial: Poner el bit de mayor peso como bit de menor peso. Clapve Inicial: 10111110 Función para obtener la parte derecha de cada iteración : XOR Permutación de la clave: Cambiar los 1 por 0 y los 0 por 1.

Page 80: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 80

Cada carácter esta codificado en binario con 4 bits usando la siguiente codificación:

A 0000 F 0101 M 1010 T 1111 B 0001 G 0110 N 1011 C 0010 I 0111 O 1100 D 0011 J 1000 P 1101 E 0100 L 1001 R 1110

Obtener la palabra original.

TABLA DE POTENCIAS 13 39 61 70 82

CUBO 2197 59319 226981 343000 551368 CUARTA 28561 2313441 13845841 24010000 45212176 QUINTA 371293 90224199 844596301 1680700000 3707398432 SEXTA 4826809 3518743761 51520374361 117649000000 304006671424 SEPTIMA 62748517 137231006679 3142742836021 8235430000000 24928547056768 OCTAVA 815730721 5352009260481 191707312997281 576480100000000 2044140858654976 NOVENA 10604499373 208728361158759 1169414609283414

1 4035360700000000

0 167619550409708032

15. EN BUSCA DEL CARÁCTER PERDIDO Se desesa descifrar el texto @LLS que se sabe que ha sido encriptado usando una variación de D.E.S con las siguientes características: Tamaño de bloque de 6 bits. 2 iteraciones del bucle de cifrado. Función de transfiormación XOR. La permutación inicial es leer al revés la entrada La permutación de la clave es la negación de la anterior. La clave utilizada para el cifrado con D.E.S será la codificación en binario del carácter que se lee al descifrar la sguiente frase:

CE@C@VS@AAEALL@L dicha frase ha sido encriptada usando transposición por columnas, y lo único que se conoce de ella es que aparece la palabra ‘clave’. El alfabeto usado en ambos casos será:

A -> 0 B-> 1 C-> 2 E-> 3 L-> 4 S-> 5 V-> 6 @(BLANCO)-> 7

Page 81: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 81

16. BIEN Se pretende encriptar con el algoritmo DES la palabra BIEN. Las características del algoritmo para la encriptación son: Usamos bloques de 8 bits Se realizan 2 iteraciones La permutación inicial es intercambiar las mitades izquierda y derecha La clave inicial es 0111 La función utilizada para obtener la parte derecha es la XOR. La permutación aplicada a la clave es rotar una posición a la izquierda (poner el bit de mayor peso

como el de menor peso) Cada carácter esta codificado en binario con 4 bits usando la siguiente codificación:

A 0000 F 0101 M 1010 S 1111

B 0001 G 0110 N 1011

C 0010 I 0111 O 1100

D 0011 J 1000 P 1101

E 0100 L 1001 R 1110 17. EL HIPÓDROMO DE LA ZARZUELITA

Un grupo de amigos onubenses quiere jugar en las apuestas de caballos del hipódromo de La Zarzuelita en Madrid. Han averiguado, por medios extraoficiales, el número al que hay que apostar, por lo que quieren remitir a un familiar que se encuentra en la capital un texto encriptado con el algoritmo DES.

Este familiar les envía un carácter codificado con el algoritmo RSA de clave pública. El carácter recibido es ‘E’. La codificación en binario del carácter desencriptado nos servirá como clave en el algoritmo DES de encriptación.

Los datos que necesitamos para desencriptar el carácter E son: n=26 y la clave pública con la que se ha encriptado es e=5.

Los datos para encriptar son: Texto a encriptar: OCHO Bloques de 8 bits Permutación inicial: Cada 2 bits se permutan con los dos siguientes Función para obtener la parte derecha: Equivalencia

Codificación de caracteres:

A: 0000 E: 0100 I: 1000 M: 1100 B: 0001 F: 0101 J: 1001 N: 1101 C: 0010 G: 0110 K:1010 O: 1110 D: 0011 H: 0111 L:1011 P: 1111

Permutación de la clave: El bit de mayor peso se pone como bit de menor peso Nº de iteraciones: 2 ¿Qué texto tendrán que enviar nuestros amigos hacia la capital?

X Y 0 0 1 0 1 0 1 0 0 1 1 1

Page 82: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Protección y Seguridad Pág. 82

18. CÁBALA Para los dos números primos p=7 y q=11, encuentra dos valores de e y d (ambos distintos de 11) para poder encriptar y desencriptar según el algoritmo R.S.A. Una vez encontrados e y d, demuestra su funcionamiento codificando y decodificando el valor 3.

Page 83: Anon -Problemas de Sistemas Operativos 01-02 PDF
Page 84: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 84

1.- EL BARRENDERO

Implementa la rutina LIMPIAR_BUZON, para el sistema operativo KMOS visto en clase, que deberá funcionar de la siguiente forma: Si hay procesos esperando en el buzón, les enviará a todos mensajes en blanco y los pasará a la cola de preparados. Si hay mensajes pendientes en el buzón, los leerá todos hasta que no quede ninguno. El diagrama de transición de estados para la rutina LIMPIAR_BUZON será el siguiente: NOTA: No se podrán usar las llamadas a las rutinas ENVIAR ni RECIBIR. 2. AUTOSERVICIO

Para hacerlo más rápido se ha decidido eliminar del sistema operativo KMOS la rutina despachar. Obviamente, todas las rutinas que hiciesen llamadas a la rutina despachar deberán implementar las funciones que esta realizaba en su propio código. Con este fin se ha rehecho la rutina recibir de la siguiente forma:

rutina recibir(buzon):mensaje { invocable por el usuario } begin Salvar el contexto del invocador; if hay mensajes esperando begin extraer de la cola el mensaje;

entregar el mensaje al proceso invocante; end

else begin suspender al proceso invocante en el descriptor del buzón; end; habilitar niveles de interrupción superiores y deshabilitar los inferiores; restaurar contexto del proceso; devolver el control al proceso; end;

¿ Continúa dicha rutina funcionando correctamente y de la misma forma que lo hacia con la llamada a despachar?. Indicar todos los problemas encontrados si los hubiese.

EN_EJECUCIÓN

ESP. MENSAJE PREPARADOS

LIMPIAR_BUZÓN { y no esperan ni procesos ni mensajes}

Proceso más prioritario LIMPIAR_BUZON {y se limpia el buzón }

Page 85: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 85

3. SECUENCIA CRITICA

En un equipo en el que hay instalado un Sistema Operativo KMOS tenemos en un instante dado los siguientes procesos:

PROCESO PRIORIDAD PA 6 PB 5 PC 4 PD 7 PE 7 PF 0

Suponemos que estamos en el instante 0 y que PA acaba de comenzar su ejecución, es decir, acaba de entrar en el estado de EN_EJECUCIÓN. Los procesos PB, PC y PF estan en el estado de preparados. En el sistema existen los buzones B1, B2 y B3, así como todos aquellos necesarios para atender las interrupciones que pudiesen llegar, cada uno de ellos con su correspondiente Rutina de Servicio de Interrupción. El proceso PD se encuentra esperando un mensaje en el buzón B2. Las acciones que realizan cada uno de los procesos son:

Proceso PA << otras cosas >> CREAR_PROC(PE,7) << otras cosas >> CREAR_BUZON(B4) RECIBIR(B4) << otras cosas >> ELIMINAR PROC

Proceso PB << otras cosas >> RETARDAR(1) ENVIAR(B4,M) <<otras cosas >> ELIMINAR_PROC

Proceso PC << otras cosas >> ENVIAR(B2,M) RECIBIR(B3) ELIMINAR_PROC

Proceso PD << otras cosas >> ENVIAR(B3,M) ELIMINAR_PROC

Proceso PE << otras cosas >> ENVIAR(B1,M) << otras cosas >> ELIMINAR_PROC

Proceso PF WHILE(TRUE) DO ;

Prioridad de PE

Page 86: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 86

La Interrupción de reloj llega cada 1000 Unidades de Tiempo y decrementa en 1 el contador de tiempo que resta a cada uno de los procesos que están en la cola de RETARDADOS. Considerar que cada linea de los procesos es una instrucción, y que cada instrucción tarda 1 unidad de Tiempo en ejecutarse. Indicar la secuencia de instrucciones que se ejecutan en el sistema, así como todas las funciones del Sistema operativo que son llamadas, tanto por los procesos como por otras funciones del Sistema Operativo. Notas:

Si hay dos procesos de igual prioridad en PREPARADOS se ejeutará aquel que lleve más tiempo en dicha lista. Para las rutinas del Sistema Operativo sólo es necesario indicar las llamadas a otras rutinas, no las instrucciones de dichas rutinas

4. INTERRUPTUS En un sitema KMOS tenemos los procesos siguientes: Donde el proceso PA tiene una prioridad de 6 y el proceso PB tiene una prioridad de 0. En este sistema suponemos que todas las peticiones de lectura de disco tardan 100 unidades de tiempo en atenderse, y que cada instrucción tarda 1 unidad de tiempo en ejecutarse. Indicar todos los buzones necesarios en el sistema para poder ejecutar dichos procesos, así como la secuencia de instrucciones que ejecuta el procesador, tanto si se trata de instrucciones del proceso como de rutinas del KMOS.

Proceso PA CREARBUZON(A1); Instrucción 1 LEER DESDE DISCO Instrucción 2 Instrucción 3 RECIBIR(A1) . . . . . . . . . .

Proceso PB WHILE(TRUE) DO;

Page 87: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 87

5. DISKMOS

En un equipo en el que hay instalado un Sistema Operativo KMOS tenemos en un instante dado los siguientes procesos:

PROCESO PRIORIDAD PA 4 PB 5 PC 1

Suponemos que estamos en el instante 0 y que PA acaba de comenzar su ejecución, es decir, acaba de entrar en el estado de EN_EJECUCIÓN.

Los procesos PB y PC se encuentran en estado de preparados.

En el sistema existen los buzones necesarios para atender las interrupciones que pudiesen llegar, cada uno de ellos con su correspondiente Rutina de Servicio de Interrupción si la necesitan.

Las acciones que realizan cada uno de los procesos son:

En este sistema suponemos que todas las peticiones de lectura de disco tardan 50 unidades de tiempo en atenderse, y que cada instrucción tarda 1 unidad de tiempo en ejecutarse.

Indicar todos los buzones necesarios en el sistema para poder ejecutar dichos procesos, así como la secuencia de instrucciones que se ejecutan en el sistema. Se deberán indicar todas las funciones del Sistema Operativo que son llamadas, tanto por los procesos como por otras funciones del Sistema Operativo. Notas:

Para las rutinas del Sistema Operativo sólo es necesario indicar las llamadas a otras rutinas, no las instrucciones de dichas rutinas

Proceso PA << otras cosas >> CREAR_PROC(PD,6) << otras cosas >> CREAR_BUZON(B4) RECIBIR(B4) ENVIAR(B2,M) RECIBIR(B4) ELIMINAR_PROC

Proceso PB << otras cosas >> RECIBIR(B2) LEER DE DISCO <<otras cosas >> ENVIAR(B4,M) ENVIAR(B3,M) ELIMINAR PROC

Proceso PD CREAR_BUZON(B3) CREAR_BUZON(B2) ENVIAR(B4,M) RECIBIR(B3) ELIMINAR_PROC

Proceso PC WHILE(TRUE) DO;

Prioridad de PD

Page 88: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 88

6. SUBSECUENCIA CRITICA En un sitema KMOS tenemos los procesos siguientes: Donde el proceso PA tiene una prioridad de 4, el proceso PB tiene una prioridad de 5 y el proceso PC tiene una prioridad 0. En este sistema suponemos que todas las peticiones de lectura de disco tardan 50 unidades de tiempo en atenderse, y que cada instrucción tarda 1 unidad de tiempo en ejecutarse. Indicar todos los buzones necesarios en el sistema para poder ejecutar dichos procesos, así como la secuencia de instrucciones que se ejecutan en el sistema, junto con todas las funciones del Sistema operativo que son llamadas, tanto por los procesos como por otras funciones del Sistema Operativo.

Proceso PA Instrucción 1 CREAR_BUZON(A) ENVIAR(B,m); LEER DESDE DISCOInstrucción 2 ENVIAR(B,n) RECIBIR(A) ELIMINAR_PROC

Proceso PB Instrucción 1 CREAR_BUZON(B) RECIBIR(B) RECIBIR(B) Instrucción 2 ENVIAR(A,m) ELIMINAR_PROC

Proceso PC WHILE(TRUE) DO;

Page 89: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 89

7. RELODISKMOS

En un equipo en el que hay instalado un Sistema Operativo KMOS tenemos en un instante dado los siguientes procesos:

PROCESO PRIORIDAD PA 5 PB 4 PC 6 PD 0

Suponemos que estamos en el instante 0 y que se ejecuta la rutina DESPACHAR del Sistema Operativo. Todos los procesos están en el estado de preparados.

En el sistema existen los buzones necesarios para atender las interrupciones que pudiesen llegar, cada uno de ellos con su correspondiente Rutina de Servicio de Interrupción si la necesitan.

Las acciones que realizan cada uno de los procesos son:

Indicar todos los buzones necesarios en el sistema para poder ejecutar dichos procesos, así como la secuencia de instrucciones que se ejecutan en el sistema. Se deberán indicar todas las funciones del Sistema Operativo que son llamadas, tanto por los procesos como por otras funciones del Sistema Operativo. No es necesario indicar las llamadas que la rutina DESPACHAR realiza a la rutina HABILNVL. Notas: Para las rutinas del Sistema Operativo sólo es necesario indicar las llamadas a otras rutinas, no las instrucciones de dichas rutinas. No es necesario realizar las llamadas a HABILNVL. LA INTERRUPCIÓN DE RELOJ TIENE UNA PRIORIDAD DE 15, Y LA INTERRUPCIÓN DEL DISCO TIENE UNA PRIORIDAD DE 12. Se deberá contestar en la tabla adjunta donde se indican los instantes en los que llegan interrupciones al sistema, así como la interrupción de que se trata.

Proceso PA CREAR_BUZON(B1) RECIBIR(B1) <<otras cosas>> ELIMINAR_PROC

Proceso PB << otras cosas >> LEER DE DISCO ENVIAR(B1,M) << otras cosas >> ELIMINAR_PROC

Proceso PC << otras cosas >> RETARDAR(2) << otras cosas >> ELIMINAR_PROC

Proceso PD WHILE(TRUE) DO;

Page 90: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 90

PROCESO INSTRUCCIONES S.O DESPACHAR (

Interrupción de reloj

Interrupción de Disco

Interrupción de reloj

Page 91: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 91

8. ULTRADISK

En un equipo en el que hay instalado un Sistema Operativo KMOS tenemos en un instante dado los

siguientes procesos:

Suponemos que estamos en el instante 0 y que se ejecuta la rutina DESPACHAR del Sistema

Operativo. Todos los procesos están en el estado de preparados.

En el sistema existe un buzón B1, además de los buzones necesarios para atender las interrupciones que pudiesen llegar, cada uno de ellos con su correspondiente Rutina de Servicio de Interrupción si la necesitan.

Las acciones que realizan cada uno de los procesos son:

Para atender las lecturas de disco se necesitan 5 instantes de tiempo. Suponer que cada instrucción es un instante de tiempo. Es decir, el final de una lectura de disco se produce 5 unidades de tiempo después de haberse lanzado la petición de lectura.

Indicar todos los buzones necesarios en el sistema para poder ejecutar dichos procesos, así como la secuencia de instrucciones que se ejecutan en el sistema. Se deberán indicar todas las funciones del Sistema Operativo que son llamadas, tanto por los procesos como por otras funciones del Sistema Operativo. No es necesario indicar las llamadas que la rutina DESPACHAR realiza a la rutina HABILNVL. Notas: Para las rutinas del Sistema Operativo sólo es necesario indicar las llamadas a otras rutinas, no las instrucciones de dichas rutinas. No es necesario realizar las llamadas a HABILNVL.

PROCESO PRIORIDAD PA 5 PB 7 PC 0

Proceso PA ENVIAR(B1,M) RECIBIR(B2) LEER_DISCO <<otras cosas>> ELIMINAR_PROC

Proceso PB CREARBUZON(B2) RECIBIR(B1) ENVIAR(B2,M) LEER_DISCO <<otras cosas>> ELIMINAR_PROC

Proceso PC WHILE (TRUE) ;

Page 92: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 92

9. DISCOBÍS En un sitema KMOS, donde hay instalados dos discos, tenemos los procesos siguientes: Donde el proceso PA tiene una prioridad de 4, el proceso PB tiene una prioridad de 5 y el proceso PC tiene una prioridad 0. En este sistema suponemos que todas las peticiones de lectura de disco tardan 20 unidades de tiempo en atenderse, y que cada instrucción tarda 1 unidad de tiempo en ejecutarse. Indicar todos los buzones necesarios en el sistema para poder ejecutar dichos procesos, así como la secuencia de instrucciones que se ejecutan en el sistema, junto con todas las funciones del Sistema operativo que son llamadas, tanto por los procesos como por otras funciones del Sistema Operativo.

Proceso PA Instrucción 1 LEER DISCO 1 CREAR_BUZON(B1) Instrucción 2 ENVIAR(B2,n) RECIBIR(B1) ELIMINAR_PROC

Proceso PB Instrucción 1 CREAR_BUZON(B2) RECIBIR(B2) Instrucción 2 LEER DISCO 2 ENVIAR(B1,m) ELIMINAR_PROC

Proceso PC WHILE(TRUE) DO;

Page 93: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

___________________________________________________________________________________ Problemas de Sistemas Operativos Núcleo de un Sistema Operativo Pág. 93

TABLA PARA SOLUCIONES

PROCESO INSTRUCCIONES

S.O DESPACHAR (

Page 94: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

_______________________________________________________________________________ Problemas de Sistemas Operativos Índice Pág. 94

Page 95: Anon -Problemas de Sistemas Operativos 01-02 PDF

ESCUELA POLITÉCNICA SUPERIOR D.I.E.S.I.A. LA RÁBIDA

_______________________________________________________________________________ Problemas de Sistemas Operativos Índice Pág. 95

Pág. Gestión de Procesos........................ 3

Interbloqueos.................................. 15

Administración de Memoria.......... 28

Sistema de Ficheros........................ 48

Protección y Seguridad.................. 71

Núcleo de un sistema operativo..... 84