(04-03-2013 00:23)gonnza escribió: el 2 me quedó asi:
sabiendo que un bloque tiene 512 bytes, y los punteros 32 bits = 4 bytes, cada bloque de indireccion puede tener \[\frac{512}{4}=128\] entradas.
maxima capacidad de archivo:
5 x 512 bytes + 2 x 128 x 512 bytes + 2 x \[128^{2}\] x 512 bytes + 1 x \[128^{3}\] x 512 bytes = 1090652672 bytess, que son aproximadamente 1 GB 16 MB 130 KB
sobre el b, si tnego qe acceder al byte 16911366, y cada bloque son 512 bytes, entonces, dividiendo puedo obtener el numero de bloques que ocupa \[\frac{16911366}{512} = 33030.011..\]
entonces leyendo el bloque numero 33031 obtengo, ademas de otros, el byte que quiero leer.
de los 33031 punteros que necesito:
Los directos son 5, entonces quedan 33031 - 5 = 33026 punteros
los indirectos, tengo 128 punteros por cada indirecto, son 2, asique 33026 - 2 x 128 = 32770
Los doblemente indirectos, son 2, y cada uno tiene \[128^{2}\] punteros
entonces 32770 - 2 x \[128^{2}\] = 2
quedan 2 bloques por leer, asique con 2 punteros a datos quedan.. claramente estaran en el primer indirecto triple, en el primer bloque de indireccion de cada nivel..
Como el inodo ya esta en memoria, solo tengo que leer:
- el unico puntero indirecto triple
- el primer nivel de indirección
- el segundo nivel de indirección
- el tercer nivel de indirección
- el dato
son entonces 5 lecturas
sobre el c, esta respondido en la pagina anterior, tiene que ver en que si no colocas los atributos de seguridad (permisos) en el inodo, la otra opcion es en la entrada de directorio. Supongamos que es asi, que las colocamos ahi, con un hard link tenes otra entrada (distinta, con distinto nombre) en el directorio que apunta al mismo inodo, entonces basicamente podes abrir el archivo sin leer dichos atributos.
Con un soft link, como es un archivo nuevo, totalmente distinto (con su propio inodo) cuyo contenido es la entrada de directorio original, ahi no hay problema, porque igual leerias la entrada ahi y tendrias los atributos
espero sirva, y que este bien jajaj
2)
a) concuerdo
b)
Este ejercicio es casi igual que el 8 de la guia de 2012 de FS.
Te pide leer el byte numero tal o sea que hay que ver en que indireccion cae.
Como cae en al indireccion triple PARA MI
tenes
-un acceso al indirecto triple
-un acceso al doble DE ESE TRIPLE
-un acceso al simple DE ESE DOBLE DEL TRIPLE
-un acceso al dato byte 16911366
Son 4 accesos.
Ahora bien si te pidiera del byte 0 al byte 16911366 ahi si tenes que leer bastantes bloques y tenes un acceso por cada bloque MAS la indireccion.
Estoy bastante seguro que es asi y sino me rompen el paradigma ajajja