Sistemas Operativos II PLAN VIEJO Facultad de Informática / Escuela Técnica Superior Informática Aplicada Apellidos y nombre: • • • • • SOLUCION 18 de Junio de 2003 Centro: FI / ETSIA No desgrape las hojas. Conteste exclusivamente en los espacios reservados para tal fin. Utilice las páginas en blanco para sus anotaciones y cálculos. Responda de forma breve y precisa. El examen consta de 15 cuestiones que puntúan todas por igual. ¿Qué técnicas se utilizan para gestionar sistemas con asignación dispersa de memoria y que además puedan usar memoria virtual ? ¿Qué tipo de fragmentación se puede producir en cada uno de estos sistemas? 1. Paginación por demanda -> fragmentación interna Segmentación por demanda -> fragmentación externa Segmentación paginada por demanda -> fragmentación interna Diga si las siguientes afirmaciones sobre la gestión de memoria son verdaderas (V) o falsas (F): V Las bibliotecas de enlace dinámico pueden utilizarse en un sistema que emplee memoria virtual. 2. F F V En un sistema de gestión de memoria basada en particiones múltiples de tamaño fijo, la fragmentación externa es mayor cuanto más grande sea el número de particiones El mecanismo de las superposiciones (“overlays”) se utiliza como técnica de compartición de memoria. En un esquema de gestión de memoria basado en particiones múltiples se puede utilizar el mecanismos de protección de memoria de cotas inferior y superior. Indique el código de un “script” al que se le pase como argumento el nombre de un directorio que cuelga del actual. El código a implementar debe imprimir por pantalla una lista de nombres de ficheros de dicho directorio; cada nombre debe mostrarse en una línea y estar antecedido por el carácter ‘>’. cd $1 3. for i in * do echo ‘>’ $i done Sistemas Operativos II PLAN VIEJO Facultad de Informática / Escuela Técnica Superior Informática Aplicada 18 de Junio de 2003 Sea un esquema de segmentación con un máximo de 32 segmentos por proceso. El valor del registro base de un descriptor de segmento es siempre un múltiplo de 2KB y el valor máximo de registro límite es 64KB Indique los posibles valores de los componentes de sendas direcciones lógicas que pueda corresponder a las direcciones físicas 3654 y 5357. 4. 3654) s: d: 5357) s: d: 0..31 1606, 3654 0..31 1261,3309,5357 Sea un sistema con doble nivel de paginación donde las direcciones lógicas tienen 15 bits, el tamaño de página es de 1KB y cada tabla de primer nivel puede contener cuatro descriptores de tablas de segundo nivel. La memoria física tiene 4 marcos asignables a procesos, se encuentra inicialmente vacía y los marcos libres se asignan en orden creciente. Indique el formato de una dirección lógica en este sistema, incluyendo el número de bits de cada componente. 5. Formato: p1 (2 bits), p2 (3 bits), d (10 bits) A partir de los datos de la cuestión anterior, suponga que un mismo proceso emite la siguiente secuencia de direcciones lógicas: 7168, 26624, 16508, 5120, 7168, 26624, 12288, 7168, 26624 Diga qué página ocupará cada marco de la memoria física después de la secuencia suponiendo que el algoritmo de reemplazo de páginas es el LRU y utilizando la siguiente notación: (i,j): identifica la página cuyo descriptor de primer nivel es el i, y cuyo descriptor de segundo nivel es el j. NOTA: Las tablas de páginas de 1er y segundo nivel las gestiona el sistema operativo y por tanto no se ubican en la memoria asignable a procesos. 6. MO: (0,7); M2: (1,4); M1: (3,2); M3: (0,5); Sea un sistema de memoria virtual segmentado-paginado en el que la tabla de segmentos se ubica íntegramente en registros de la MMU y las tablas de páginas se encuentran fijas en memoria principal, existiendo una TLB para los descriptores de páginas más frecuentemente usados. Los descriptores de páginas ocupan dos palabras. Indique la fórmula para calcular el tiempo de acceso efectivo a un descriptor de página, teniendo en cuenta que: • El tiempo de acceso a una palabra de memoria es TAM • El tiempo de acceso a los registros de la MMU es despreciable frente al TAM • El tiempo de acceso a la TLB para un descriptor de página completo es TTLB 7. TAE (Acceso al descriptor de página) = (1-p) TTLB + p (2 TAM + TTLB) siendo p la probabilidad de fallo en encontrar el descriptor de página en la TLB Sistemas Operativos II PLAN VIEJO Facultad de Informática / Escuela Técnica Superior Informática Aplicada 18 de Junio de 2003 Diga si las siguientes afirmaciones sobre el modelo del área activa son verdaderas (V) o falsas (F): F Si la suma de los tamaños de las ventanas del área activa de los distintos procesos de un sistema 8. F V F es mayor que el número de marcos de memoria física entonces, en el sistema se produce hiperpaginación. Si el espacio de direcciones lógicas de un proceso es de 1024 páginas y el tamaño del área activa en un instante dado es de 512 páginas, entonces puede asegurarse que el proceso provocará hiperpaginación en todos los casos. En un sistema cuyo tamaño de ventana de área activa es 1024, el tamaño del área activa en un instante t vale 1024, si y solo si, las últimas 1024 páginas de una serie de referencias son distintas. Si se aumenta el número de marcos que tiene asignados un proceso, entonces aumentará el tamaño del área activa. Se tiene un sistema con memoria virtual que utiliza la técnica de la segmentación paginada por demanda. En este sistema se ejecuta un proceso A con tres segmentos T (código), D (datos) y S (pila). Las longitudes de estos segmentos se especifican en la tabla 1. La memoria física consta de 4 marcos de 512 bytes cuyo contenido en un instante t es el de la tabla 2, donde la nomenclatura Ti indica la página lógica i del segmento T (ej: D0 es la página 0 del segmento D). Segmento Longitud T 2500 D 1500 S 300 Marco 0 T2 1 D2 2 T1 3 D1 Tabla 1 Tabla 2 Indique las direcciones físicas que se obtienen como consecuencia de los siguientes accesos o los valores ERROR, si se detecta un error en la dirección lógica o FALLO si se produce un fallo de página. 9. Dir. lógica Dir. física (D,1000) à 2024 (Marco 3) (T,1500) à 476 (Marco 0) (S,350) à Error (desplazamiento excede tamaño segmento) (T,1000) à 1512 (Marco 2) (D,1500) à Error (desplazamiento coincide tamaño segmento) (T,2000) à Fallo Sistemas Operativos II PLAN VIEJO Facultad de Informática / Escuela Técnica Superior Informática Aplicada 18 de Junio de 2003 Diga si las siguientes afirmaciones sobre la gestión de ficheros son verdaderas (V) o falsas (F): F Los métodos de acceso a la información de un fichero son los siguientes: contiguo, enlazado e 10. F V V indexado. Una estructura de directorios de grafo acíclico no puede contener enlaces simbólicos. Open es una llamada a sistema que permite obtener un descriptor de fichero en UNIX si el resultado de la llamada es correcto UNIX puede utilizar un modo de trabajo con ficheros basado en el concepto de sesión Se tiene un disco con sectores de 512 bytes y una partición de 800Mb. Esta partición se formatea en MS-DOS con formato FAT-16 y FAT duplicada. El número de entradas que se reservan en el directorio raíz es de una por cada 10K sectores, siendo el tamaño de entrada de directorio de 32 bytes. Indique la estructura de la partición junto con los tamaños de cada uno de los elementos componentes, siendo el tamaño de cluster de 16 KB. Arranque: 1 sector 11. FAT: ((800 Mb / 16Kb)*2)/512 = 200 sectores FAT’: 200 sectores RAIZ: (((800 Mb / 512)/10kb)*32)/512 = 10 sectores DATOS: (800 Mb / 16 Kb)- [411/32]= 51187 clusters En la partición del problema anterior se tiene un directorio C:\DOS con una única entrada de un fichero llamado copy.exe cuyo tamaño es 64Kb. Si el manejador de disco siempre realiza los accesos de lectura y escritura por sectores de 512 bytes, detalle sobre la tabla siguiente los accesos a realizar en el peor de los casos para leer el primer cluster completo de este fichero. NOTAS : a) En la tabla siguiente, “Elemento de la partición accedido” se refiere a FAT, Dir raíz, Datos, etc... b) Suponga que no es necesario acceder la FAT duplicada c) Suponga que el fichero no está abierto. Elemento 12. partición Descripción del acceso accedido Número accesos Total accesos Raíz Búsqueda del directorio c:\DOS 10 10 Datos Búsqueda de la entrada de dir. copy.exe 1 15 Datos Acceso al primer cluster de copy.exe 32 47 Sistemas Operativos II PLAN VIEJO Facultad de Informática / Escuela Técnica Superior Informática Aplicada 18 de Junio de 2003 Se tiene un disco con sectores de 512 bytes y una partición de 24Mb. Esta partición se formatea con el sistema de ficheros de MINIX, de forma que se obtiene la siguiente estructura de la partición: Indique el máximo número de ficheros que pueden crearse en dicha partición, justificando la respuesta. (NOTA. El tamaño de una zona equivale al de un bloque (1024 bytes), una referencia a zonas tiene 16 bits, el tamaño de un nodo- i es de 32 bytes, una entrada de directorio son 16 bytes, la estructura de punteros del nodo- i es de 7 punteros directos, 1 indirecto y 1 indirecto doble, y el nodo- i cero no ocupa espacio). 13. El máximo nº de ficheros depende del número de nodos-i y este puede calcularse a partir de: - Mapa de bits: (3 * 1024 * 8)= 24 k posibles nodos-i - Bloques de nodos-i: 5 * (32 nodos-i/bloque)= 160 posibles nodos-i. La cota en el nº de ficheros vendría dada por el menor valor, es decir 160. Se tiene la siguiente lista de peticiones de acceso a cilindros de una partición de disco: 52, 31, 157, 143, 230, 112, 89, 0, 175, 188 Si el disco tiene 256 cilindros, numerados del 0 al 255, y el cilindro inicial sobre el que se encuentra el cabezal es el 151 diga al menos un algoritmo de planificación del disco que produzca en cada caso, las siguientes trayectorias de cilindros recorridos por el cabezal del disco: a) 157, 143, 112, 89, 52, 31, 0, 175, 188, 230. b) 143, 112, 89, 52, 31, 0, 157, 175, 188, 230. 14. a) SSTF (el más cercano) b) LOOK o SCAN, con dirección descendente Sistemas Operativos II PLAN VIEJO Facultad de Informática / Escuela Técnica Superior Informática Aplicada 18 de Junio de 2003 Se tiene un sistema Unix en el que existen tres usuarios: so1, so2 y ast. Los usuarios so1 y so2 pertenecen al grupo prac mientras que ast pertenece al grupo guest. Asimismo, se tiene un directorio cuyo listado es el siguiente: fichero prop. grup. otros propietario. grupo rws rw--x so1 prac type rws --x --x so1 prac trunc rwx rw--- so1 prac ceros rwx r---- ast guest unos La descripción de los ficheros de este directorio es la siguiente: type arg1: visualiza el contenido del fichero arg1 por la salida estándar. trunc arg1: borra el contenido del fichero arg1, truncándolo pero sin eliminarlo. ceros contiene caracteres ‘0’. unos contiene caracteres ‘1’. Represente el resultado de los siguientes comandos, indicando la palabra ERROR cuando no se pueda ejecutar la orden y los tipos de caracteres mostrados (vacío, ’0’ ó ‘1’). 15. Usuario Comando Resultado so1 type ceros 0 ast ast type unos trunc ceros 1 vacio so2 trunc unos error so1 type unos error