Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ejercicios
Adicionales
Ignacio Vissani
1◦ Cuat - 2012
1 Repaso
Motivación
2 Ejercicios
3 Adicionales
Dónde estamos
1 Repaso
Motivación
2 Ejercicios
3 Adicionales
Ya vimos:
Ya vimos:
¿Qué es un archivo?
¿Qué es un archivo?
¿Qué es un archivo?
Asignación contigua
Todos los bloques de un archivo se almacenan en forma consecutiva
Ventajas:
Desventajas:
Lista enlazada
Ventajas:
Puedo usar todos los bloques del disco (no pierdo espacio por
fragmentación)
Desventajas:
Guardo una tabla (en disco, pero la puedo cargar en memoria) en la que la
entrada i tiene el puntero (N◦ de bloque) al bloque siguiente a i
Ventajas:
Desventajas:
i-nodos (Steve Jobs (1955 - 2011) no tuvo nada que ver con estos)
Ventajas:
Desventajas:
Dónde estamos
1 Repaso
Motivación
2 Ejercicios
3 Adicionales
Ejercicio 1
B 0 1 ... 6143 ... 7003 7004 7005 7006 ... 20000 20001 20002 ...
S 1 2 ... EOF ... 7004 7005 7006 EOF ... 20001 20002 7003 ...
Ejercicio 2
Ejercicio 2
Ejercicio 2
Ejercicio 3
En un FS con inodos de 200bytes se desea acelerar el resultado de la
operación ls -la que muestra los nombres de los archivos, sus atributos
y su tamaño
% ls -la
drwxr-xr-x 20 root wheel 2560 25 may 18:51 .
drwxr-xr-x 21 root wheel 512 2 jun 00:21 ..
drwxr-xr-x 2 root wheel 512 16 may 19:44 X11
-rw-r--r-- 1 root wheel 221 16 feb 23:19 amd.map
-rw-r--r-- 1 root wheel 1248 16 feb 23:19 apmd.conf
-rw-r--r-- 1 root wheel 241 16 feb 23:19 auth.conf
drwxr-xr-x 2 root wheel 512 16 feb 23:19 bluetooth
-rw-r--r-- 1 root wheel 736 16 feb 23:19 crontab
Dónde estamos
1 Repaso
Motivación
2 Ejercicios
3 Adicionales
Estructuras de un HDD
2
2
http://home.teleport.com/ brainy/fat32.htm
ivissani - Sistemas operativos Clase práctica - Filesystem
Repaso
Ejercicios
Adicionales
Ejercicio 4
Se tiene un disco rı́gido con un sistema de archivos de tipo FAT. Se pide programar el algoritmo
Para ello utilice las siguientes estructuras y funciones ya definidas (la variable fat_bs ya se encuentra cargada en
memoria):
s t r u c t FAT BS STRUCT {
u n s i g n e d c h a r jumpCode [ 3 ] ;
u n s i g n e d c h a r OEMName [ 8 ] ;
void h d d l o a d s e c t o r ( unsigned i n t sector ,
unsigned short bytesXSect ;
void ∗ b u f f e r ) ;
unsigned char sectXClust ;
unsigned short r e s e r v e d S e c t ;
struct dir entry {
u n s i g n e d c h a r numOfCopies ;
u n s i g n e d c h a r name [ 8 ] ;
u n s i g n e d s h o r t maxRootDirEnt ;
unsigned char e x t e n s i o n [ 3 ] ;
u n s i g n e d s h o r t smallNumOfSect ;
unsigned char a t t r i b u t e s ;
u n s i g n e d c h a r mediaDesc ;
u n s i g n e d c h a r nada [ 1 0 ] ;
u n s i g n e d s h o r t sectXFAT ;
unsigned short time ;
unsigned short sectXTrack ;
unsigned short date ;
u n s i g n e d s h o r t numOfHeads ;
unsigned short c l u s t e r ;
unsigned i n t hiddenSect ;
unsigned i n t f i l e S i z e ;
u n s i g n e d i n t bigNumOfSect ;
};
u n s i g n e d s h o r t l og D ri v e Nu m ;
unsigned char extendSignat ;
b o o l e a n i s d i r ( s t r u c t d i r e n t r y ∗ de ) ;
unsigned i n t serialNum ;
b o o l e a n i s f i l e ( s t r u c t d i r e n t r y ∗ de ) ;
u n s i g n e d c h a r volumeName [ 1 1 ] ;
i n t s p l i t p a t h ( c o n s t c h a r ∗ path ,
u n s i g n e d c h a r FATName [ 8 ] ;
c h a r ∗∗∗ a r r a y ) ;
unsigned char code [ 4 4 8 ] ;
// p t r a s t r i n g [ ]
unsigned char execMarker [ 2 ] ;
} f a t b s ; // Ya e s t á c a r g a d a en memoria
ivissani - Sistemas operativos Clase práctica - Filesystem
Repaso
Ejercicios
Adicionales
http://www.asknacho.fcen.uba.ar
http://www.asknacho.fcen.uba.ar
O sea ¿Preguntas?