v1.0/09 Sistemas Operativos. Planificación de procesos 1/15 Sistemas Operativos. Gestión FAT Ejercicio 1 - Información sobre el documento.........................................................................................1 2. - Ejercicios iniciales.................................................................... 1 Ejercicio 1 - Enunciado............................................................................................................................2 Ejercicio 2 - Enunciado............................................................................................................................3 Ejercicio 3 - Enunciado............................................................................................................................4 Ejercicio 4 - Enunciado............................................................................................................................5 Ejercicio 5 - Enunciado............................................................................................................................6 Ejercicio 6 - Enunciado............................................................................................................................7 Ejercicio 7 - Modificación de ficheros......................................................................................................8 3. - Soluciones.................................................................................. 9 Ejercicio 1 - Solución...............................................................................................................................9 Ejercicio 2 - Solución.............................................................................................................................10 Ejercicio 3 - Solución.............................................................................................................................11 Ejercicio 4 - Solución.............................................................................................................................12 Ejercicio 5 - Solución.............................................................................................................................13 Ejercicio 6 - Solución.............................................................................................................................14 Ejercicio 7 - Solución.............................................................................................................................15 Ejercicio 1 -Información sobre el documento El objetivo de este documento es enseñar, compartir conocimientos para facilitar el aprendizaje. Este documento es mejorable, y será actualizado si es preciso. Este documento puede ser utilizado para uso personal, no comercial, como se presenta, respetando una serie de condiciones de uso basadas en Licencia Creative Commons, como aparece en el logotipo, que se describe a continuación ● El documento se proporciona como está, por tanto no se pueden realizar modificaciones, ni en el formato ni en el contenido, ni trabajos derivados, sin la autorización expresa del autor. ● Se debe mencionar al autor del mismo, por supuesto sin modificar los enlaces o imágenes introducidas por éste en el documento. ● No se puede utilizar este material con fines lucrativos, comerciales o cualquier uso que pueda proporcionar, directa o indirectamente, un beneficio económico de terceros, sin la autorización expresa del autor. ● Si se desea publicar el documento en algún sitio web, se debe hacer a través de un enlace al documento en el sitio del autor (www.educatica.es o cursos.educatica.es) Si se desea publicar como un recurso dentro de un sitio web, sin utilizar un enlace al material en el sitio web del autor, se debe solicitar autorización expresa y, en cualquier caso, referenciar el sitio web del autor (www.educatica.es). Espero sea de provecho ;) 2. - Ejercicios iniciales A continuación se plantean una serie de ejercicios resueltos sobre gestión de sistemas de ficheros utilizando FAT para asignación de ficheros. Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos 2/15 Ejercicio 1 -Enunciado Para la siguiente FAT deberás determinar los ficheros que hay almacenados en ella. Primero trata de calcular cuantos ficheros hay. Asigna a cada fichero un identificador del tipo F1, F2, etc. con números consecutivos. Después, determina en orden que bloques tendría asignado cada fichero. Ejercicio FAT 03.02.01 ID NEXT 0 RESERVADO 1 2 2 5 3 1 4 NULL 5 NULL 6 9 7 NULL 8 12 9 7 10 NULL 11 10 12 11 13 Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos 3/15 Ejercicio 2 -Enunciado Para la siguiente FAT deberás determinar en orden los bloques que tiene asignado cada fichero y directorio del sistema de ficheros. Además, para los directorios en los que aparece un interrogante ? Deberás calcular que bloque debería aparecer en esa entrada en cada directorio. Recuerda que, un directorio es un fichero especial que almacena información sobre los ficheros que contiene. En este caso práctico o simulación, la estructura de datos de directorio está compuesta por una tabla donde en cada registro (fila) contiene información sobre un fichero. En la columna de la izquierda, o primer campo del registro, aparece el nombre del fichero. A la derecha aparece el primer bloque del fichero. ID 0 1 2 3 4 5 6 7 8 9 10 11 12 13 Tabla FAT NEXT RESERVADO NULL 4 NULL 3 8 10 2 6 NULL NULL 9 NULL \ . .. System notas examen actividad \System . .. Bloq RUTA DEL FICHERO BLOQUES 1 1 12 5 7 11 Bloq ? ? 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 Javier Pedrero Martín [email protected] www.educatica.es \ \System \notas \examen \actividad v1.0/09 Sistemas Operativos. Planificación de procesos 4/15 Ejercicio 3 -Enunciado Para la siguiente FAT deberás determinar en orden los bloques que tiene asignado cada fichero y directorio del sistema de ficheros. Además, para los directorios en los que aparece un interrogante ? Deberás calcular que bloque debería aparecer en esa entrada en cada directorio. Recuerda que, un directorio es un fichero especial que almacena información sobre los ficheros que contiene. En este caso práctico o simulación, la estructura de datos de directorio está compuesta por una tabla donde en cada registro (fila) contiene información sobre un fichero. En la columna de la izquierda, o primer campo del registro, aparece el nombre del fichero. A la derecha aparece el primer bloque del fichero. ID Ejercicio FAT 02 NEXT 0 1 2 3 4 5 6 7 8 9 10 11 12 13 RESERVADO NULL 12 NULL 13 2 NULL 4 NULL 15 18 9 NULL NULL 14 NULL 15 14 16 17 17 20 18 19 19 16 20 NULL \ Bloq 1 1 3 7 5 . .. Users pagefile.sy s leeme.txt Users . .. Default alfredoff Bloq alfredoff Bloq . .. 21 24 examen.pdf 22 NULL 23 22 backup.bat 24 NULL 25 21 fotos.jpg datos.ods ? ? 6 8 ? ? 11 10 25 23 Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos 5/15 Ejercicio 4 -Enunciado Para la siguiente FAT deberás determinar en orden los bloques que tiene asignado cada fichero y directorio del sistema de ficheros. Recuerda que, un directorio es un fichero especial que almacena información sobre los ficheros que contiene. En este caso práctico o simulación, la estructura de datos de directorio está compuesta por una tabla donde en cada registro (fila) contiene información sobre un fichero. En la columna de la izquierda, o primer campo del registro, aparece el nombre del fichero. A la derecha aparece el primer bloque del fichero. ID 50 51 52 53 54 55 56 57 58 59 60 61 62 63 Ejercicio FAT 02 NEXT 63 NULL NULL 61 NULL NULL NULL 66 59 65 NULL 62 67 51 asir . .. notas.pdf calendar.od s leeme.txt Bloq 55 52 53 57 50 dam Bloq 56 . 52 .. 64 notas.pdf 72 examen.java smr 64 68 65 NULL 66 58 .. 67 54 act.odt 68 71 ej01.sh 69 73 . ciclos 70 80 71 NULL 72 75 73 NULL readme.txt 74 NULL info.dat 75 NULL 76 NULL . .. Bloq 60 52 74 69 Bloq 52 10 70 79 77 78 79 NULL 80 76 Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos 6/15 Ejercicio 5 -Enunciado Para la siguiente FAT deberás determinar en orden los bloques que tiene asignado cada fichero y directorio del sistema de ficheros. Recuerda que, un directorio es un fichero especial que almacena información sobre los ficheros que contiene. En este caso práctico o simulación, la estructura de datos de directorio está compuesta por una tabla donde en cada registro (fila) contiene información sobre un fichero. En la columna de la izquierda, o primer campo del registro, aparece el nombre del fichero. A la derecha aparece el primer bloque del fichero. ID FAT NEXT 20 21 22 23 24 25 26 27 28 29 30 31 32 33 35 NULL 27 NULL 21 28 33 39 NULL NULL NULL 42 34 35 Windows . .. System32 win.exe notepad.exe Bloq RUTA DEL FICHERO 23 1 30 36 22 System32 . .. Scripts cmd.exe Bloq 48 Scripts Bloq 24 . 36 37 .. 37 20 ej01.bat 38 41 39 38 40 50 41 26 42 40 43 34 44 49 ? ? 29 31 25 Bloques libres ? ? 43 45 46 47 NULL 48 44 49 47 50 NULL Javier Pedrero Martín [email protected] www.educatica.es BLOQUES v1.0/09 Sistemas Operativos. Planificación de procesos 7/15 Ejercicio 6 -Enunciado Para la siguiente FAT deberás determinar en orden los bloques que tiene asignado cada fichero y directorio del sistema de ficheros. Recuerda que, un directorio es un fichero especial que almacena información sobre los ficheros que contiene. En este caso práctico o simulación, la estructura de datos de directorio está compuesta por una tabla donde en cada registro (fila) contiene información sobre un fichero. En la columna de la izquierda, o primer campo del registro, aparece el nombre del fichero. A la derecha aparece el primer bloque del fichero. ID FAT NEXT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 NULL NULL 9 NULL NULL 16 15 NULL 6 NULL 26 15 16 \ Bloq RUTA DEL FICHERO 1 1 2 5 4 . .. Windows Users Backup Windows . .. cmd.exe fotos.jpg Bloq NULL Users Bloq NULL . ? ? 3 13 7 18 .. 17 18 22 marinapg 19 23 Default 19 marinapg Bloques libres ? ? 8 10 20 21 22 23 NULL 24 28 .. leeme.txt 25 26 . 24 hd01.vdi Bloq ? ? 11 14 27 28 NULL 29 30 31 Javier Pedrero Martín [email protected] www.educatica.es BLOQUES v1.0/09 Sistemas Operativos. Planificación de procesos 8/15 Ejercicio 7 -Modificación de ficheros Atendiendo a la siguiente tabla de ficheros FAT y a los datos de los directorios, deberás simular cómo quedaría la tabla FAT y los directorios si se realizan en el siguiente orden las siguientes operaciones: 1. Borra el fichero \Windows\fotos.jpg 2. Crea un nuevo fichero llamado educatica.png dentro del directorio \Windows que necesitará dos unidades de asignación o clusters 3. El fichero \Users\marinapg\leeme.txt crece un par de unidades de asignación o clusters. FAT NEXT ID \ 1 NULL . 2 NULL .. 9 4 NULL Users 5 NULL Backup 6 16 7 15 8 NULL 9 6 . .. cmd.exe NULL 11 26 12 17 13 7 14 18 15 NULL Users 16 NULL . 17 20 .. 18 22 marinapg 19 23 Default 21 NULL 22 19 23 NULL RUTA DEL FICHERO BLOQUES \ \Users\marinapg\apuntes.pdf 1 2 5 4 3, 9, 6, 16 13, 7, 15 8 10 11,26,24,28 14, 18, 22, 19, 23 12,17,20, 21 25,27, 29 Bloques libres 30,31 \Windows \Users \Backup \Windows\cmd.exe \Windows\fotos.jpg Windows 10 21 1 1 2 5 4 Windows 3 20 Bloq fotos.jpg marinapg . 24 28 .. 25 27 leeme.txt 26 24 hd01.vdi 27 29 examen.bat 28 NULL apuntes.pdf 29 NULL Bloq 2 1 3 13 Bloq \Users\marinapg \Users\Default \Users\marinapg\leeme.txt \Users\marinapg\hd01.vdi \Users\marinapg\examen.bat 5 1 8 10 Bloq 8 5 11 14 12 25 30 31 Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos 9/15 3. -Soluciones Ejercicio 1 -Solución Como no me indican en qué bloque comienza cada fichero, ni me dicen el número de ficheros que hay tendremos que fijarnos en la información que tenemos, y de ahí centrarnos en dónde acaban los ficheros. Si nos fijamos, en una tabla de tipo FAT se debe marcar el último bloque de un fichero con un NULL en el campo siguiente o NEXT. Es decir, todas entradas que tengan un NULL almacenado indican que es el último bloque de un fichero. Atendiendo a esto, si contamos el número de entradas con NULL sabremos el número de ficheros que hay. En la tabla hay cuatro ficheros. Ahora lo que tenemos que hacer es para cada fichero recorrer la tabla en orden inverso. Es decir, comenzando por la entrada que tenga un NULL ir buscando la entrada de la tabla que le haga referencia. Si no hay ninguna, significará que es el único bloque del fichero. Por ejemplo, comencemos con la entrada 4. Como no hay ninguna entrada en la tabla que haga referencia al bloque 4, significa que el fichero F1 solo tiene un bloque, el bloque 4. Ahora vamos a echar un vistazo a la entrada 5. Vamos a suponer que esta entrada es la última entrada de un fichero llamado F2. Ahora buscamos alguna entrada en la tabla que referencia al bloque 5. La entrada 2 hace referencia al cinco. Esto significa que el bloque 2 es el penúltimo bloque del fichero. Ejercicio FAT 03.02.01 ID NEXT 0 RESERVADO 1 2 2 5 3 1 4 NULL 5 NULL 6 9 7 NULL 8 12 9 7 10 NULL 11 10 12 11 13 Ficheros F1 F2 F3 F4 Bloques 4 3, 1, 2, 5 6, 9, 7 8, 12 ,11 ,10 Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos Ejercicio 2 -Solución Tabla FAT NEXT ID \ 0 RESERVADO . 1 NULL .. 2 4 System 3 NULL notas 3 examen 5 8 actividad 6 10 7 2 8 6 4 9 10 \System NULL . NULL .. 11 9 12 NULL Bloq RUTA DEL FICHERO BLOQUES 1 1 12 5 7 11 \ \System \notas \examen \actividad Bloq 12 1 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 Javier Pedrero Martín [email protected] www.educatica.es 1 12 5, 8, 6, 10 7, 2, 4, 3 11,9 10/15 v1.0/09 Sistemas Operativos. Planificación de procesos 11/15 Ejercicio 3 -Solución Ejercicio FAT 02 NEXT \ 0 RESERVADO . 1 NULL ID 2 12 3 NULL 4 13 Users pagefile.sy s leeme.txt NULL 7 4 8 NULL 9 15 Default 10 18 alfredoff 11 9 12 NULL 13 NULL 14 NULL Users alfredoff 14 17 .. 17 20 examen.pdf 18 19 backup.bat 19 16 fotos.jpg 20 NULL datos.ods 24 23 22 24 NULL 25 21 \pagefile.sys \leeme.txt \Users\Default \Users\alfredoff \Users\alfredoff\backup.bat 3 1 6 8 .. 16 NULL Bloq . . 22 \Users \Users\alfredoff\examen.pdf 2 6 21 \ 1 1 3 7 5 .. 5 15 Bloq \Users\alfredoff\fotos.jpg \Users\alfredoff\datos.ods Bloq 8 3 11 10 25 23 Javier Pedrero Martín [email protected] www.educatica.es 1 3 7, 4, 13 5, 2, 12 6 8 11, 9, 15, 14 10, 18, 19, 16, 17, 20 25, 21,24 23,22 v1.0/09 Sistemas Operativos. Planificación de procesos 12/15 Ejercicio 4 -Solución ID Ejercicio FAT 03 NEXT 50 51 52 53 54 55 56 57 58 59 60 61 62 63 63 NULL NULL 61 NULL NULL NULL 66 59 65 NULL 62 67 51 64 68 asir . .. notas.pdf calendar.ods leeme.txt 55 52 53 57 50 RUTA DEL FICHERO BLOQUES 52 55 56 60 70, 80, 79 53, 61, 57, 66, 50, 63, 64, 68, 72,75 74 69,73 77,78 dam . .. notas.pdf examen.java Bloq ciclos ciclos\asir ciclos\dam ciclos\smr ciclos\readme.txt ciclos\info.dat ciclos\asir\notas.pdf ciclos\asir\calendar.ods ciclos\asir\leeme.txt ciclos\dam\notas.pdf ciclos\dam\examen.java ciclos\smr\act.odt ciclos\smr\ej01.sh smr Bloq Bloques libres 65 NULL . 66 58 .. 67 54 act.odt 68 71 ej01.sh 69 73 70 80 71 NULL . 72 75 .. 73 NULL readme.txt 74 NULL info.dat 75 NULL asir 76 NULL dam ciclos smr 77 Bloq 56 52 64 72 60 52 74 69 Bloq 52 ¿? 70 79 55 56 60 78 79 NULL 80 76 Javier Pedrero Martín [email protected] www.educatica.es 76 62, 67, 54 58, 59, 65 51 71 v1.0/09 Sistemas Operativos. Planificación de procesos 13/15 Ejercicio 5 -Solución ID FAT NEXT Windows 20 35 . 21 NULL .. 22 27 System32 23 NULL win.exe 24 21 25 28 26 33 System32 27 39 . 28 NULL .. 29 NULL Scripts 30 NULL cmd.exe 31 42 notepad.exe Bloq 23 1 30 36 22 RUTA DEL FICHERO BLOQUES Windows Windows\System32\Scripts\ej01.bat 23 30 36, 22, 29 31, 43, Bloques libres 32, 45, 46 Windows\System32 Windows\win.exe Windows\notepad.exe Windows\System32\Scripts Windows\System32\cmd.exe Bloq 37, 20, 35, 24, 21 27, 39, 38, 41, 26, 33, 25, 28 42, 40, 50 34, 48, 44, 49, 47 30 23 29 31 32 33 25 34 48 Scripts 35 24 . 36 37 .. 37 20 ej01.bat 38 41 39 38 40 50 41 26 42 40 43 34 44 49 Bloq 29 30 43 45 46 47 NULL 48 44 49 47 50 NULL Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos 14/15 Ejercicio 6 -Solución FAT NEXT ID \ 1 NULL . 2 NULL .. 3 9 NULL 5 NULL Backup 6 16 7 15 8 NULL 9 6 10 NULL 11 26 12 17 13 7 1 1 2 5 4 Windows Users 4 Bloq RUTA DEL FICHERO BLOQUES \ \Users\marinapg\apuntes.pdf 1 2 5 4 3, 9, 6, 16 13, 7, 15 8 10 11,26,24,28 14, 18, 22, 19, 23 12,17,20, 21 25,27, 29 Bloques libres 30,31 \Windows \Users \Backup \Windows\cmd.exe \Windows\fotos.jpg Windows . .. cmd.exe fotos.jpg 14 18 15 NULL Users 16 NULL . 17 20 .. 18 22 marinapg 19 23 Default 20 21 21 NULL 22 19 23 NULL marinapg . 24 28 .. 25 27 leeme.txt 26 24 hd01.vdi 27 29 examen.bat 28 NULL apuntes.pdf 29 NULL Bloq 2 1 3 13 Bloq \Users\marinapg \Users\Default \Users\marinapg\leeme.txt \Users\marinapg\hd01.vdi \Users\marinapg\examen.bat 5 1 8 10 Bloq 8 5 11 14 12 25 30 31 Javier Pedrero Martín [email protected] www.educatica.es v1.0/09 Sistemas Operativos. Planificación de procesos 15/15 Ejercicio 7 -Solución Atendiendo a la siguiente tabla de ficheros FAT y a los datos de los directorios, deberás simular cómo quedaría la tabla FAT y los directorios si se realizan en el siguiente orden las siguientes operaciones: 4. Borra el fichero \Windows\fotos.jpg 5. Crea un nuevo fichero llamado educatica.png dentro del directorio \Windows que necesitará dos unidades de asignación o clusters 6. El fichero \Users\marinapg\leeme.txt crece un par de unidades de asignación o clusters. FAT NEXT ID \ 1 NULL . 2 NULL .. 9 4 NULL Users 5 NULL Backup 6 16 Windows 13 8 NULL . 9 6 .. 11 26 12 17 13 NULL 14 18 15 30 RUTA DEL FICHERO BLOQUES \ \Users\marinapg\apuntes.pdf 1 2 5 4 3, 9, 6, 16 7,13 8 10 11,26,24,28,15,30 14, 18, 22, 19, 23 12,17,20, 21 25,27, 29 Bloques libres 31 \Windows \Users \Backup \Windows\cmd.exe \Windows\educatica.png 7 NULL 1 1 2 5 4 Windows 3 10 Bloq Bloq cmd.exe educatica.png Users 16 NULL . 17 20 .. 18 22 marinapg 19 23 Default 20 21 21 NULL 22 19 23 NULL . 24 28 .. 25 27 leeme.txt 26 24 hd01.vdi 27 29 examen.bat 28 15 apuntes.pdf 29 NULL 30 NULL marinapg \Users\marinapg 2 1 3 7 Bloq \Users\Default \Users\marinapg\leeme.txt \Users\marinapg\hd01.vdi \Users\marinapg\examen.bat 5 1 8 10 Bloq 8 5 11 14 12 25 31 Javier Pedrero Martín [email protected] www.educatica.es