Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación Sistemas Operativos (6004)
Práctica #10
Entrada/Salida, Planificación de Disco y Gestión de Archivos Objetivos:
Entender los esquemas de administración de Entrada/ Salida Entender los esquemas de planificación y almacenamiento en disco. Estudiar cómo se realiza la gestión de archivos en sistemas operativos y en particular sistemas UNIX como caso de estudio. Conocer las distintas implementaciones de sistemas RAID.
Conocimientos necesarios para desarrollar la práctica:
Entrada/Salida y DMA. Algoritmos para la gestión del almacenamiento secundario: FCFS (First Come First Served). SSTF (Shortest Search Time First). SCAN (Algoritmo del elevador). C-SCAN (Algoritmo del elevador modificado). Elementos de un disco magnético: Cilindros. Pistas. Sectores. Representación de archivos: Lista de bytes. Lista de registros. Árbol de registros. Sistemas de Archivos: I-Nodos. Enlaces: Fuertes. Débiles. Rutas: Relativas. Absolutas. Atributos y permisos de archivos. ◦ ◦ ◦ ◦
◦ ◦ ◦
◦ ◦ ◦
◦ ◦
▪ ▪
◦ ◦
Esto corresponde con los capítulos 10, 11, 12 y 13 del libro de Silberschartz (Operating Systems Concepts ); capítulo 4 y 5 de los libros de Tanenbaum ( Modern Operating Systems y Operating Systemas Designs and implementation ); y los capítulos 11 y 12 del libro de Stallings ( Operating Systems: Internals and Design Principles ). Para más información consulten el cronograma general de la materia.
Semestre I-2012
Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación Sistemas Operativos (6004)
Práctica #10
Preguntas:
1. ¿Por qué la manipulación directa de la Entrada / Salida ha de ejecutarse en modo kernel? 2. ¿Cómo funciona la E/S programada, E/S con interrupciones y E/S con DMA? Diga cuál es mejor y ¿por qué? 3. ¿Qué información debería enviar el procesador al DMA para solicitar una operación de E/S? 4. Algunos sistemas llevan a la práctica la capacidad de compartir archivos permitiendo a varios usuarios leer una sola copia de un archivo al mismo tiempo. Otros proporcionan una copia del archivo compartido a cada usuario. Analice las ventajas y desventajas relativas de cada uno de estos enfoques. 5. En un sistema de archivos jerárquico los nombres de ruta pueden ser bastante largos. En vista de que la mayor parte de las referencias a archivos corresponden a los archivos propios del usuario, ¿Qué convención podría manejar el sistema de archivos para reducir al mínimo la necesidad de usar nombres de ruta largos? 6. Indicar las razones para proponer una estructura jerárquica para el sistema de archivos. 7. Indique cinco nombres relativos diferentes para /users/so/datos. Indique el directorio respecto al que son relativos 8. Sabiendo que el directorio actual o de trabajo es /usr/man, indicar 5 nombres distintos de rutas de acceso para el archivo /usr/man/whatis de acuerdo a la siguiente estructura de directorios:
Semestre I-2012
Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación Sistemas Operativos (6004)
Práctica #10
9. Muchos Sistemas Operativos proporcionan una llamada de renombrar (RENAME) para cambiar el nombre de un archivo. Indicar cuál es la diferencia entre el uso de esta llamada para cambiar el nombre de un archivo y un procedimiento que primero copie el archivo a otro con el nuevo nombre y , después, borre el antiguo 10. En la siguiente figura se representan los primeros 16 bloques de un disco en el que se utiliza el método de asignación de espacio en disco mediante listas enlazadas. Los bloques corresponden a un sector del disco, los cuales tienen 512 bytes. El disco tiene una capacidad total de 100 Mbytes
Calcular el tamaño máximo de los datos almacenados en el archivo notas representado en la figura anterior
Semestre I-2012
Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación Sistemas Operativos (6004)
Práctica #10
11. La siguiente figura muestra la estructura de un sistema de archivos. Junto a cada elemento se indica el número de bloque en el que comienza y el nodo-i asociado. El archivo file4 pertenece al directorio car, pero hay un enlace desde man.
Para cada elemento (archivo y directorio) representar sus nodos-i con la información contenida en los bloques según el formato indicado en la siguiente tabla Nro nodo-i
Nombre archivo/directorio
12. Se dispone de un disco de 2 megabytes de capacidad sin formatear (lo que suman todos los bloques se usen luego para lo que se usen). Se pretende realizar sobre él un formateo para que adopte el sistema de archivos tipo UNIX descrito a continuación:
Tamaño de bloque: 512 bytes. Tamaño de dirección de bloques: 2 bytes (permite direccionar hasta 65.536 bloques distintos). Datos de control del sistema de archivos: o Permisos: 10 bytes o Tamaño del archivo: 4 bytes o Fecha de última actualización: 4 bytes. o 4 entradas de referencia directa a bloques del archivo: 4 x 2 bytes. o 2 entradas de referencia indirecta de primer nivel: 2 x 2 bytes. o 1 entrada de referencia indirecta de segundo nivel: 2 bytes.
Semestre I-2012
Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación Sistemas Operativos (6004)
Práctica #10
Nota: Los inodos deben poder identificarse mediante un número de bloque, aunque se desperdicie espacio. Se pide: a. Calcular el tamaño del disco que puede ser usado para datos de usuario. b. Número máximo de directorios que pueden ser almacenados en este disco. 13. En la siguiente tabla se muestra esquemáticamente el contenido de un sistema de archivos tipo UNIX. Algunos de los i-nodos se muestran en la primera fila, y algunos de los bloques de datos en la fila de abajo: 0 drwxr-xr-x linkcount=4 bloque1=0 bloque2= .
0
..
0
hola
1
adios
3
1 drw-r--r — linkcount=2 bloque1=1 bloque2=
2 -rw-r —r-linkcount=2 bloque1=2 bloque2=
3 drw-r--r — linkcount=2 bloque1=3 bloque2=
4 lrw-r--r — linkcount=1 bloque1=4 bloque2=
.
1
.
3
..
0
..
0
hola1.txt 2
adios1.txt 4
/hola/hola2.txt
hola2.txt 2
El i-nodo correspondiente al directorio raíz es el 0. Se pide: a. Suponiendo que el disco estaba inicialmente formateado y al final de las operaciones realizadas durante el día aparece con la información mostrada en la figura, indicar ¿cuáles han sido las operaciones que se han realizado? b. Suponiendo que el i-nodo 0 está cargado en memoria, así como el bloque 0, y que nos encontramos situados en el directorio raíz, indicar todos los accesos a disco necesarios para cargar en memoria /adios/adios1.txt. c. Realizar las siguientes operaciones sobre este sistema de archivos e indicar qué parámetros se modifican y qué consecuencias hay sobre dicho sistema. i. rm /hola/hola2.txt ii. cat /adios/adios1.txt 14. La planificación SSTF tiende a favorecer menos a los cilindros internos y externos que a los cilindros de la zona media ¿Por qué esto es así? 15. Un disco que posee 200 pistas, tiene la siguiente cola de peticiones de acceso: 55, 58, 39, 18, 90, 150. 160. 38, 184 ¿Cuál es la longitud media de búsqueda para satisfacer
Semestre I-2012
s o d o n i
s o t a D
Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación Sistemas Operativos (6004)
Práctica #10
estas solicitudes con los siguientes algoritmos de planificación de disco? Suponer que inicialmente la cabeza se encuentra en la pista 100 a. b. c. d.
FIFO SSTF SCAN C-SCAN
16. Un disco que posee 200 (numeradas de 0 a 199) pistas, tiene la siguiente cola de peticiones de acceso: 81, 142, 86, 172, 89, 145, 97, 170, 125. ¿Cuál es la longitud media de búsqueda para satisfacer estas solicitudes con los siguientes algoritmos de planificación de disco? Suponer que inicialmente la cabeza se encuentra en la pista 100 a. b. c. d.
FIFO SSTF SCAN C-SCAN
17. Un controlador en software de disco duro tiene en su lista de peticiones los cilindros 10, 22, 20, 2, 40, 6 y 38 en ese orden. El disco duro tiene 50 cilindros. El brazo tarda 6 ms en moverse de un cilindro al otro adyacente ¿Cuánto tiempo de búsqueda se requiere para: a. FIFO? b. SSTF? c. SCAN? (Inicialmente yendo hacia abajo, es decir, en dirección hacia 0). En todos los casos el brazo comienza sobre el cilindro 34.
Semestre I-2012