Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Una unidad de disco tiene 300 cilindros numerados del 0 al 299, 4 cabezas de Lectura/Escritura y 18 sectores por pista, de 512 bytes cada uno El disco !ira a 3"00 rpm y el tiempo medio de posicionamiento es de 30 milise!undos La #elocidad de trans$erencia de datos es de 4 %b/se! 1& 'alcular la capacidad del (isco en %b 2& 'alcular la direcci)n del blo*ue del 'ilindro 20, +uper$icie 2 y +ector 10 3& 'alcular el tiempo necesario para leer 3 540 bytes, distribuidos aleatoriamente en el disco
EJERCICIO N 2.
Una unidad de disco tiene 305 cilindros, 4 cabezas de Lectura/Escritura y 15 sectores por pista de 512 bytes cada uno El tiempo de Latencia tl , 0,02 se!undos El tiempo medio de posicionamiento es de 30 milise!undos La #elocidad de trans$erencia es de 2 %b/se! 1& 'alcular la capacidad del disco en %b 2& 'alcular el tiempo necesario para la lectura 12 sectores situados consecuti#amente en la misma pista 3& 'alcular el tiempo *ue se necesitar- para la lectura de 15 sectores distribuidos aleatoriamente en el disco
EJERCICIO N 3.
(ado un sistema operati#o cuya $orma de almacenamiento de la in$ormaci)n en un soporte de acceso directo se basa en el m.todo de asi!naci)n conti!ua, determinar en *u. blo*ues se deben ubicar los $ic/eros F1 de 3 000 bytes y F2 de " 000 bytes 0ealizar la asi!naci)n por todos los m.todos de asi!naci)n conti!ua conocidos, pero de $orma independiente para cada uno de los $ic/eros El tama1o del blo*ue es de 512 bytes y en el momento de realizar la asi!naci)n, los blo*ues *ue est-n ocupados en el disco son los si!uientes2
3, 4, 5, ", 15, 1", 13, 18, 33, 34, 35, 3", 50, 51, 52, 53,
(e$inir la lista de espacio libre mediante un #ector de bits, *ue represente la situaci)n anteriormente de$inida
EJERCICIO N 4.
+upuesto un sistema operati#o, *ue !estiona el espacio en disco utilizando la asi!naci)n conti!ua En un momento determinado, se realiza la si!uiente llamada al sistema2
0E4( 561,8&
(ic/a llamada si!ni$ica, *ue se *uiere leer del $ic/ero 7618, el re!istro l)!ico n9 8 +abiendo *ue en el directorio actual tenemos adem-s de otras entradas la si!uiente2 :ombre
61
tama1o
"540
bytes
+abiendo *ue el re!istro l)!ico tiene un tama1o de 128 bytes, *ue un blo*ue en el disco tiene un tama1o de 512 bytes, el disco tiene 300 cilindros, 4 caras ;tiles y 13 sectores por pista <ndicar a *u. pista, cara y sector del disco /abr- *ue acceder para poder leer del $ic/ero 7618 el re!istro l)!ico 8
EJERCICIO N 5.
Un sistema operati#o !estiona el espacio en disco mediante un #ector de 5 punteros Los tres primeros apuntan a blo*ues de datos, el 49 puntero se utiliza para inde=aci)n a un ni#el y el 59 para inde=aci)n a dos ni#eles +i el tama1o de blo*ue 5tanto de >ndice como de datos& es de 1024 bytes y el tama1o de cada puntero es de 8 bytes, calcular el espacio m-=imo en disco *ue se puede !estionar con esta estructura
EJERCICIO N 6.
(ado un sistema operati#o cuya $orma de almacenamiento se basa en el m.todo de asi!naci)n conti!ua, determinar en *u. blo*ues se deber>an ubicar un $ic/ero 61, cuyo tama1o es de 12 re!istros l)!icos y otro 62 de 3 400 bytes 0ealizar la asi!naci)n de $orma independiente para cada estrate!ia de asi!naci)n de espacio conti!uo, teniendo en cuenta, *ue el tama1o del re!istro l)!ico para el $ic/ero 61 es de 512 bytes y el tama1o del blo*ue 1 ?byte El almacenamiento de estos dos $ic/eros en el disco, se realizar-, primero el 61 y despu.s el 62, indicando en cada momento la situaci)n actual de la lista de espacio libre, *ue en el momento inicial es la *ue $i!ura a continuaci)n2
L<+@4 (E E+A4'<B L<C0E : CLBDUE+ 'B:@<EUB+ 2 2 " 1 9 " 18 1 40 10 "0 3 30 " 80 12
EJERCICIO N 7.
Una unidad de disco !estionada por asi!naci)n conti!ua, dispone de 25" cilindros, 1" pistas por cilindro y 9 sectores de 512 bytes por pista El tiempo medio de posicionamiento es de 0,2 se! , la #elocidad de trans$erencia de 5 %b/se! y la #elocidad de rotaci)n del disco de 3"00 rpm En un instante determinado, el espacio disponible est- indicado por el si!uiente mapa de bits2
111001100000111000110111
1& 'alcular la capacidad del disco en %b 2& +uponiendo *ue los blo*ues son de un sector, para un $ic/ero 61 con un tama1o de 1 280 bytes y re!istros l)!icos de 128 bytes2 a& E=prese mediante una lista de espacio libre por direcci)n base y desplazamiento, la disponibilidad de espacio en el disco tras ubicar 61 con la estrate!ia del meFor aFuste b& Ubicado 61, indicar el tiempo in#ertido por el sistema en leer el $ic/ero c& 'alcular en *ue cilindro, cara y sector estar- ubicado el re!istro l)!ico numero 3
EJERCICIO N 8.
Un disco ma!n.tico dispone de 2 platos, 200 cilindros y 1" sectores por pista, cada sector tiene 512 bytes El blo*ue se de$ine con un tama1o de 2 sectores La tabla de espacios libres para un momento determinado es2
(<0E''<G: C4+E (E+AL4H4%<E:@B 0 4 15 1 35 0 "2 8 93 3 125 0
+e desea resol#er los si!uientes puntos2 1& <ndicar en *u. blo*ues se !rabar>an los $ic/eros mencionados a continuaci)n y c)mo se modi$icar>a la tabla al !rabar los $ic/eros2 a& +i se !raba un $ic/ero 61 de 5250 bytes, con asi!naci)n conti!ua y estrate!ia del peor aFuste b& +i se !raba un $ic/ero 62 de 3000 bytes, de $orma conti!ua y con la estrate!ia del meFor aFuste 2& Aosteriormente se desean leer 500 bytes a partir del byte 2000 del $ic/ero 62 <ndicar *u. cilindro, super$icie y sector tendremos *ue leer del disco 3& 6inalmente se *uiere dise1ar un sistema de arc/i#os para ese disco *ue no utilice la asi!naci)n conti!ua, sino una combinaci)n entre asi!naci)n directa e inde=ada Aara ello se utilizan en el directorio tres punteros de se!uimiento de $ic/eros, los dos primeros se utilizan para asi!naci)n directa y el tercero se utiliza para la asi!naci)n inde=ada El proyecto consiste en utilizar punteros >ndices de 8 bytes y se desea Fusti$icar el ni#el de inde=aci)n necesario *ue tenemos *ue desarrollar, para poder utilizar un $ic/ero cuyo tama1o m-=imo pueda !rabarse en el disco citado en el enunciado del problema
EJERCICIO N .
Un sistema utiliza el si!uiente m.todo de asi!naci)n de espacio en disco2 En la entrada de directorio del $ic/ero, e=iste un campo, *ue contiene la direcci)n del primer blo*ue del $ic/ero, *ue es siempre un blo*ue >ndice En cada blo*ue >ndice, se almacena un conFunto de punteros de 1" bits cada uno, *ue apuntan directamente a blo*ues de datos Los blo*ues de >ndices est-n asociados por una lista enlazada a& El tama1o m-=imo de espacio en disco *ue puede !estionarse mediante este m.todo de asi!naci)n Aara un $ic/ero de 33 523 re!istros l)!icos de 80 bytes de lon!itud cada re!istro2 b& El n;mero total de blo*ues utilizados por el sistema para ubicar el $ic/ero en el disco c& El n;mero total de re!istros adicionales *ue podr>a tener el $ic/ero, sin *ue el n;mero de blo*ues >ndices asi!nados por el sistema al $ic/ero aumente d& El n;mero total de blo*ues utilizados por el sistema, para ubicar el $ic/ero en el disco, si los blo*ues >ndices est-n asociados mediante una lista doblemente enlazada
EJERCICIO N 1!.
+abiendo *ue cada blo*ue del disco tiene un tama1o de 512 bytes, calcular2
Un dispositi#o de disco ma!n.tico esta $ormado por " platos, 200 cilindros 5numerados de 0I299& y 10 sectores por pista de 512 bytes cada uno Los blo*ues del disco son de 1?b y la #elocidad de trans$erencia es de 3%C por minuto El tiempo de posicionamiento de las cabezas es de 12ms y la #elocidad de rotaci)n del disco es de 3 "00 r p m En un instante determinado, la tabla de blo*ues libres es la si!uiente2
: (E CLBDUE +<EU<E:@E+ L<C0E+ a& b& 1 250 " 3 832 5 8 931 2 11 120 1
'alcular el tiempo en !rabar un $ic/ero de 13 "21 bytes +i el disco se !estionase mediante asi!naci)n inde=ada de $orma *ue el blo*ue inicial tu#iese " >ndices, 4 para apuntar directamente a blo*ues de datos, el 59 *ue apunte a una tabla de >ndices de 1 ni#el y el "9 a una tabla de 2 ni#eles 'ada >ndice ocupa 128 bytes <ndi*ue razonadamente los >ndices *ue tendr>amos *ue se!uir, para localizar el byte 1" 250 de un $ic/ero
EJERCICIO N 11.
Un sistema operati#o !estiona sus $ic/eros con re!istros de lon!itud $iFa sin tramos Los sectores son de 512 bytes y el disco tiene 18 cabezas de 3000 cilindros y 9 sectores por pista En este sistema se estudian dos m.todos de asi!naci)n de espacio en disco2 5i& asi!naci)n inde=ada con blo*ues >ndice doblemente enlazados y 5ii& asi!naci)n inde=ada con dos ni#eles de blo*ues >ndice
Aara cada uno de los sistemas anteriores, calcular2 a& El tama1o m-=imo de $ic/ero en este disco b& El n;mero de accesos necesario para leer el re!istro l)!ico 1 100 del $ic/ero 61 *ue comienza en el blo*ue 1 800 del disco El tama1o de re!istro l)!ico para 61 es de 150 bytes c& La posici)n $>sica de comienzo de 61 y de su primer blo*ue de datos
EJERCICIO N 12.
Un sistema utiliza un #ector de n punteros en la entrada de directorio de cada arc/i#o, para acceder a los distintos blo*ues asi!nados al arc/i#o Los cuatro primeros punteros del #ector, apuntan directamente a blo*ues de datos, mientras *ue el resto de los punteros, se utiliza para inde=ar a distintos ni#eles 5el *uinto puntero tendr- un solo ni#el de blo*ues >ndice, el se=to puntero tendrdos ni#eles de blo*ues >ndice, el s.ptimo puntero tendr- tres ni#eles de blo*ues >ndice, etc & El tama1o de los punteros es tal, *ue permite tener 4 294 9"3 29" punteros distintos y en cada blo*ue se pueden almacenar un m-=imo de 25" punteros a& 'alcular cuantos punteros como m-=imo podr- tener el #ector en la entrada de directorio de cada arc/i#o
:B@4+2
El n;mero m-=imo de punteros en el #ector de punteros deber- ele!irse de tal $orma, *ue la suma del total de blo*ues de las estructuras *ue direccionan los punteros, no e=ceda del n;mero m-=imo de blo*ue direccionables Aara $acilitar las operaciones aritm.ticas se aportan los si!uientes datos2 28 , 25" 21" , "5 53" 224 , 1" 333 21" 232 , 4 294 9"3 29" b& (ado el n;mero m-=imo de punteros de la entrada de directorio de cada arc/i#o, calculado en el punto anterior, calcular el tama1o m-=imo de $ic/ero e=presado en %b c& En un sistema *ue si!ue el anterior m.todo de asi!naci)n de espacio en disco, una aplicaci)n procesa un arc/i#o con una lon!itud de re!istro l)!ico de 250 bytes y utilizando a!rupaci)n de re!istros por blo*ues, con re!istros de lon!itud $iFa sin tramos 5blo*ues $iFos& En un instante determinado, se re*uiere leer el re!istro l)!ico n;mero 33 525 5los re!istros l)!icos del arc/i#o comienzan a numerarse a partir de cero& +abiendo *ue el arc/i#o se encuentra ubicado en un disco con las si!uientes caracter>sticas $>sicas2 @iempo medio de posicionamiento 20 ms! Jelocidad de rotaci)n del disco 3 500 rpm Jelocidad de trans$erencia 500 ?bytes/s! @ama1o del blo*ue $>sico 5sector& 1 024 bytes 'alcular el tiempo *ue transcurre, desde el momento en *ue ya se /a leido la entrada de directorio correspondiente al arc/i#o, /asta *ue tiene car!ado en memoria el blo*ue *ue contiene dic/o re!istro
1& 'alcular la capacidad del disco en %b 'apacidad , :9cilindros = :9super$icies = :9sectores = :9Cytes por +ector 'apacidad , 300 = 4 = 18 = 512 , 11 059 200 Cytes +abiendo *ue un %b , 1 048 53" tendremos2 11 059 200 / 1 048 53" , 10,543 %b 2& 'alcular la direcci)n del Clo*ue en el disco, *ue corresponde al 'ilindro 20, +uper$icie 2 y +ector 10 Clo*ue , K L s5F L ip& , 10 L 1852 L 4 = 20& , 10 L 18 = 82 , 148" 3& 'alcular el tiempo *ue ser- necesario para leer 3540 bytes, distribuidos aleatoriamente en el disco :9 +ectores , 3540 / 512 , ",91 redondeando, 3 +ectores @ , :9 +ectores M 5tp L tl L tr& , 3530 L tl L tr& @ , 3530 L 8,333 L 0,122& , 3 = 38,455 , 2"9,185 mse! Aara calcular el @iempo de latencia 5tl& tendremos2 +i a 3"00 rpm N tl , "0 = 1000 tl
Aara calcular el tiempo de trans$erencia 5tr& tendremos2 4 M 2 20 Jt , 4 %b/se! , 4 = 220 Cytes/se! , = 4 M 2 11 sectores/se! 9 2 +i a 4 = 211 1000 mse! 1 tr 1000 1000 1000 = = 0,122 mse! = tr , 11 4 M 2048 8192 4M2
SOLUCIN AL EJERCICIO N 2.
1& 'alcular la 'apacidad del disco en %b 'apacidad , :9'ilindros = :9+uper$icies =:9+ectores=:9Cytes / +ector 'apacidad , 305 = 4 = 15 = 512 , 305 = "0 = 512 , 9 3"9 "00 Cytes +abiendo *ue 1 %b , 1 048 53" tendremos2 'ap ,
9 3"9 "00 , 8,935 %b 1 048 53"
2& 'alcular el tiempo necesario, para la lectura de 12 +ectores situados consecuti#amente en la misma pista @iempo de 4cceso @a , tp L tl L tr , 30 L 20 L 0,244 , 50,244 mse!
Aara calcular el tiempo de trans$erencia 5tr& tendremos2 2 21 tr , 2 %b/se! , 2 M 220 , bytes/se! , 9 , sect /se! 2 12 +i a 2 1000 mse! 1000 1000 tr , 12 , , 0,244 mse! 409" 2 1 tr Aara trans$erir sectores situados consecuti#amente el ;nico tiempo *ue se repetir- por sector, ser- el de trans$erencia, por lo tanto2 @a512 sect & , 30 mse! L 20 mse! L 12 = 0,244 mse! , 30 mse! L 20 mse! L 2,928 , 52,928 mse! Aara trans$erir 15 sectores distribuidos aleatoriamente2 @a515 sect & , 15 = 50,244 , 353,"" mse!
SOLUCIN AL EJERCICIO N 3.
@abla de bits2
000111100000000111100000000000000111100000000000001111 O4O OOOOOCOOOOO OOOOOOOOOO'OOOOOOOOOO OOOOOOOOO(OOOOOOOO 612 3000/512 , 5,8 622 "000/512 , 11," 61 62
SOLUCIN AL EJERCICIO N 4.
5K L sF&/s , F L K/s
"2/13 , 3 L 11/13 +uper$icie , 3 y +ector , 11 SOLUCIN AL EJERCICIO N5. 1 2 3 4 5
(4@B+
(4@B+
(4@B+
(4@B+
0 123
(4@B+
(4@B+
123 0
(4@B+
(4@B+
123
(4@B+
, ,
, 3 = 1024 L 128 = 1024 L 128 = 128 = 1024 , , 1" 911 3"0 bytes /1 048 53" , 1",123 %b
1024
SOLUCIN DEL EJERCICIO N 6. 64'@B0 (E CLBDUEB , 0(B(E6 ,2 512 61 , 0EE LBE /64'@B0 CLBDUEB , 12/2 , " CLBDUE+ 62 , 0(BEQ' 1024 4L A0<%E0 4PU+@E 61 2 " 15 18 40 "0 30 80 2 1 0 1 10 3 " 12 2 " 15 18 44 "0 30 80 62 2 1 0 1 " 3 " 12 2 " 15 18 40 "0 30 80
3400 , 4 CLBDUE+
4L AEB0 4PU+@E 61 2 1 " 1 10 3 " " 2 " 9 18 44 "0 30 8" 62 2 1 " 1 " 3 " "
61
1& 'alcular la capacidad la capacidad del disco en %b 'ap , :9cil = :9sup = :9sect = :9Cytes/sect 'ap , 25" = 1" = 9 = 512 , 18 834 3"8 Cytes 'ap , 18 834 3"8 / 1 048 53" , 18 %b 2& +uponiendo *ue los blo*ues son de un sector, para un $ic/ero 61 con un tama1o de 1280 bytes y re!istros l)!icos de 128 bytes2 a& E=prese mediante una lista de espacio libre por direcci)n base y desplazamiento, la disponibilidad de espacio en el disco tras ubicar 61 con la estrate!ia del meFor aFuste 6actor de blo*ueo , , 4 0e!istros l)!icos 128 :9 de blo*ues para 61 ,
1280 , 2,5 512
512
3 blo*ues
+e!;n el mapa de bits en el momento de la asi!naci)n del $ic/ero 61, utilizando la estrate!ia de meFor aFuste, *uedar- situado en los blo*ues 15, 1", y 13 La lista de espacio libre e=presada por la direcci)n base y desplazamiento *uedar- de la $orma si!uiente2
(<0E''<G: C4+E 3 3 20 (E+AL4H4%<E:@B 1 4 0
b&
Una #ez ubicado, indicar el tiempo in#ertido para leer el $ic/ero 61 El tiempo para leer 3 sectores del disco ser-2 @ , 5tp L tl L 3tr&, 200 mse! L Aara calcular tr tendremos2 Jt,5%b/se! , 5 M 2 20 Cytes/se! , +i a 5M2 11 1 10 3 mse! tr tr ,
5 M 2 20 , 5 M 2 11 +ect/se! 9 2
1 2 M "0 M 10 3 L 3tr , 3"00
, 200L8,33L3=0,093,200L8,33L0,29,208,"2 mse!
c&
1000 10 3 , , 0,093 mse! 11 10240 5M 2 El re!istro l)!ico n9 3, *uedar- ubicado en el blo*ue numero 1", por lo tanto su direcci)n ser-2 1" 1" 1" , ,0L 1" M 9 144 144 1" 3 ,1L (irecci)n , 5 0, 1, 3& 9 9
SOLUCIN AL EJERCICIO N 8.
@eniendo en cuenta *ue 1 blo*ue est- $ormado por 2 sectores del disco2 1 Clo*ue , 2 = 512 , 1024 bytes El $ic/ero 61 ocupa 5250/1024 , " blo*ues Aor lo tanto se !rabar- en los blo*ues "2,"3,"4,"5,"","3 El $ic/ero 62 ocupa 3000/1024 , 3 blo*ues Aor lo tanto se !rabar- en los blo*ues "8,"9,30 2 +i *ueremos leer 500 bytes a partir del byte 200 del $ic/ero 62, tendremos *ue leer2
0 1024 2000 2048 2500 3032
"8
"9
30
31
:ecesitamos leer los blo*ues "9 y 30 Aartiendo de la $ormula del al!oritmo de establecimiento de los blo*ues en el disco tendremos2 b , K L sF L ips 'omo 1 blo*ue es i!ual a dos sectores, los #alores de s y p ser-n los si!uientes2 s , 8 blo*ues por pista y p , 4 pistas por cilindro Aara el blo*ue n9"9 tendremos2
"9 "9 5 = =2+ lue!o el cilindro ser- el n9 2 8 M 4 32 32 5 5 =0+ lue!o la super$icie ser- la 0 y el blo*ue el 5 8 8
Aor lo tanto se leer-n el cilindro 2, super$icie 0 y los sectores 510,11& Aara el blo*ue 30 como es conti!uo, se leer-n el cilindro 2, super$icie 0 y los sectores 512,13& Aara dise1ar un sistema de arc/i#os en el disco, se!;n nos pide el enunciado, tendremos *ue realizar los si!uientes c-lculos2 Arimeramente calcularemos la capacidad del disco2 ' , 4 M 200 M 1" M 512 , " 553 "00 bytes 'on los dos primeros punteros se pueden controlar 2 048 bytes, por lo tanto nos *uedan toda#>a2 " 553 "00 I 2 048 , " 551 552 bytes Esto supone *ue2
" 551552 , " 398 blo*ues 1 024
Aara conse!uir direccionar todos esos blo*ues con el tercer puntero, utilizaremos un determinado ni#el de inde=aci)n @eniendo en cuenta *ue los punteros >ndices ocupan 8 bytes, por cada blo*ue se consi!uen2 1 024 / 8 , 128 >ndices Aor lo tanto con una inde=aci)n de un solo ni#el se pueden direccionar solamente 128 blo*ues Aara direccionar un total de " 398 blo*ues, ser- preciso pasar a un se!undo ni#el, con el *ue se podr-n direccionar2 128 M 128 , 1" 384 blo*ues 'on una inde=aci)n de dos ni#eles ser>a su$iciente para direccionar los " 398 blo*ues
10
SOLUCIN AL EJERCICIO N .
a&
@eniendo en cuenta *ue los punteros tienen una lon!itud de 1" bits, el numero m-=imo de blo*ues *ue se pueden !estionar ser- el si!uiente2 :9 %RQ<%B , 2 1" , 2 " M 2 10 , "4M1024 , "553" blo*ues 'omo el tama1o de blo*ue es de 512 bytes2
@4%4SB %RQ<%B
b& @eniendo en cuenta *ue los re!istros l)!icos son de una lon!itud de 80 bytes2 512/80, ",4 *ue redondeando por de$ecto, nos da " re!istros l)!icos por cada re!istro $>sico 33 523/" , " 254,5 *ue redondeando por e=ceso, nos da "255 blo*ues de datos ocupados por el $ic/ero (ado *ue un puntero de los blo*ues >ndices se utiliza para mantener la lista enlazada de blo*ues >ndice, el n9 de punteros a blo*ues de datos por blo*ue >ndice ser-2 1" bits por puntero e*ui#ale a 2 bytes por puntero 5512/2&I1 , 255 punteros a datos por blo*ue >ndice " 255/255 , 24,5 *ue redondeando por e=ceso nos da 25 blo*ues >ndices, *ue se necesitan para el $ic/ero @otal blo*ues , 25 L " 255 , " 280 blo*ues c& En el ;ltimo blo*ue de >ndices el n9 de punteros libres a blo*ues de datos es2 525 M 255& I " 255 , " 335 I " 255 , 120 punteros libres Aor lo tanto se podr>an utilizar 120 blo*ues de datos adicionales, manteniendo el mismo n9 de blo*ues >ndice, adem-s como el n9 de re!istros l)!icos por blo*ue es ", el n9 total de re!istros adicionales, *ue podr>a tener el $ic/ero, sin *ue el n9 de blo*ues >ndices aumente ser>a2
0EE<+@0B+ 4(<'<B:4LE+
d&
+i los blo*ues >ndices est-n asociados mediante una lista doblemente enlazada, se utilizar-n dos punteros para el enlace de cada uno de los blo*ues >ndices, por lo tanto el n9 total de blo*ues utilizados por el sistema, para ubicar el $ic/ero en el disco ser-2 5512/2&I2,25"I2,254 punteros a datos por blo*ue >ndice " 255/254, 24," *ue redondeando por e=ceso nos da 25 blo*ues >ndices, *ue se necesitan para el $ic/ero @otal blo*ues , 25 L " 255 , " 280 blo*ues El n9 total de blo*ues no #ar>a con respecto al c-lculo realizado para una lista enlazada
11
a&
@eniendo en cuenta *ue los blo*ues son de 1 Kb, es decir, 1 024 bytes, tendremos *ue el $ic/ero de 13 "21 bytes ocupar-2 13 "21 / 1 024 , 13,2 18 blo*ues Aara calcular el tiempo *ue se tardar- en !rabar el $ic/ero tendremos2 tl , 0,5M"0M1 000 / 3 "00 , 300 / 3" , 50/" ,8,33 ms! tr , 5"0M1 000& / 3M1 024 , "25 / 32 , 19,53 ms! El disco solo posee 18 blo*ues libres, por lo tanto, se !rabar- en ellos (ic/os blo*ues est-n $ormando 4 conFuntos separados por ello la cabeza !rabadora se tendr*ue colocar cuatro #eces, es decir, 4 posicionamientos y 4 latencias y adem-s tendr- *ue !rabar 18 blo*ues, es decir, 18 trans$erencias El tiempo total de la !rabaci)n ser-2 @iempo total , 45tpLtl&L18tr , 4512 +
50 "25 & + 18 M = 432,88msg " 32
b&
Aara calcular el blo*ue correspondiente al byte 1" 250 tendremos2 1" 250 / 1 024 , 15,8" blo*ue 1" 'omo cada >ndice ocupa 128 bytes el n9 de >ndices por blo*ue de uno o dos ni#eles ser-2 1 024 / 128 , 8 >ndices por blo*ue Los cuatro primeros >ndices del blo*ue inicial apuntan directamente a blo*ues de datos, es decir, del 0 al 3 El 59 >ndice apunta a un blo*ue con 8 >ndices, *ue se1alan a 8 blo*ues, es decir, del 4 al 11 El "9 apunta a un blo*ue de primer ni#el de 8 >ndices, cada uno de los cuales apunta a un blo*ue de >ndices de se!undo ni#el, como tenemos *ue lle!ar al blo*ue 1", tendremos *ue tomar el >ndice inicial ", el primer >ndice del primer ni#el y el cuarto del se!undo ni#el
En primer lu!ar calcularemos el tama1o del disco para poder saber como ser-n los blo*ues >ndice2 El disco tiene 18 cabezas M 3000 cilindros M 9 sectores lo *ue da un total de 48" 000 sectores +i suponemos blo*ues de un sector, son 48" 000 blo*ues El tama1o de un puntero del blo*ue >ndice debe poder incluir estos 48"000 blo*ues, para ello2 2n 48" 000, de donde se obtiene *ue n es 19 bits en el puntero, lo *ue e*ui#ale a unos 3 bytes Auesto *ue un blo*ue tiene 512 bytes, en cada blo*ue >ndice caben 512 / 3 , 130 punteros a& Aara calcular el tama1o m-=imo de $ic/ero i) En este tipo de asi!naci)n de espacio, el tama1o del $ic/ero est- condicionado por el tama1o del disco En este caso el disco es de 48" 000 blo*ues M 512 bytes/blo*ue , 233, 30 %b Aara poder direccionar 48" 000 blo*ues, son necesarios 2 893 blo*ues >ndice cada uno de los cuales apuntan a 1"8 blo*ues de datos, se pierden dos punteros por el enlazado doble 50ecuerde *ue se deben direccionar 48" 000 blo*ues de datos menos 2 893 blo*ues >ndice& Esto supone *ue *ueda un espacio para datos de 48" 000 blo*ues menos 2 893 blo*ues, lo *ue suponen 483 103 blo*ues M 512 bytes , 235$ M% &' ()*)+, &' -./0'1, ii) En el caso de asi!naci)n inde=ada en -rbol, el ni#el de inde=aci)n si supone un l>mite al tama1o de $ic/eroT por lo tanto, est- limitado por este ni#el y por el tama1o del disco
SISTEMA DE GESTIN DE FICHEROS
12
'on una inde=aci)n a dos ni#eles y blo*ues >ndice de 130 punteros, se pueden direccionar 1302 blo*ues de datos, lo *ue nos da 28 900 blo*ues de 512 bytes , 14$11 M% &' ()*)+, &' -./0'1, Esta ci$ra es muy in$erior al tama1o del disco, por lo *ue se corresponde con el tama1o de $ic/ero m-=imo b& 4 continuaci)n calcularemos al n;mero de accesos necesarios para acceder al re!istro 1 100 del $ic/ero2 +i el $ic/ero tiene re!istros de 150 bytes de lon!itud $iFa sin tramos, en cada blo*ue de 512 bytes caben 512 / 150 re!istros, lo *ue son 3 re!istros/blo*ue Aara acceder al re!istro 1100 del $ic/ero se debe acceder, por lo tanto, al blo*ue 1100 / 3 , 3"3 del $ic/ero i) 'omo cada blo*ue >ndice apunta a 1"8 blo*ues de datos, es necesario utilizar 3 blo*ues >ndice 5e*ui#ale a 504 blo*ues de datos& y el blo*ue de datos En total 4 )//'2,2 ii) En la asi!naci)n inde=ada, el n;mero de accesos es siempre constante, un blo*ue >ndice por cada ni#el de inde=aci)n y el blo*ue de datos En total 3 )//'2,2 c& La posici)n de comienzo del $ic/ero es la misma en los dos tipos de asi!naci)n, el blo*ue n;mero 1 800 del disco La posici)n $>sica de este blo*ue es2 1 800 / pMs 1 800 / 518 M 9& , 11, resto 18 18 / s 18 / 9 , 2, resto 0 Lo *ue e*ui#ale a la posici)n 511, 2, 0& En cuanto a la posici)n del primer blo*ue de datos, no se puede calcular con la in$ormaci)n disponible, por*ue ser>a necesario conocer el contenido del primer blo*ue >ndice para calcularla
SOLUCIN AL EJERCICIO N 12.
a& (ado *ue el tama1o de los punteros es tal *ue permite tener 4 294 9"3 29" punteros distintos2 4 294 9"3 29" , 232 lue!o el tama1o de los punteros es de 32 bits 54 bytes& @eniendo en cuenta *ue un puntero es una direcci)n de blo*ue, el n;mero m-=imo de blo*ues direccionables es 232 Los cuatro primeros punteros apuntan directamente a blo*ues de datos, por lo *ue el n;mero total de blo*ues direccionables con un #ector de 4 punteros es 4 U 232 El *uinto puntero apunta a un blo*ue >ndice de 1 ni#el, *ue almacena 25" punteros a blo*ues de datos El n;mero total de blo*ues direccionables con un #ector de 5 punteros es2 4 C( 5blo*ues de datos& L 1 C< 5blo*ue >ndice& L 25" C( 5blo*ues de datos& , 2"1 U 2 32 El se=to puntero apunta a un blo*ue >ndice de dos ni#eles, *ue almacena 25" punteros a blo*ues >ndice, cada uno de los cuales almacena 25" punteros a blo*ues de datos El n;mero total de blo*ues direccionables, con un #ector de " punteros es2 4 C( L 1 C< L 25" C( L 1 C< L 25" C< L 525"M25"& C( , "" 054 U 2 32
13
El s.ptimo puntero apunta a un blo*ue >ndice de tres ni#eles, *ue almacena 25" punteros a blo*ues >ndice, cada uno de los cuales, almacena 25" punteros a blo*ues >ndice y cada uno de los cuales almacena 25" punteros a blo*ues de datos El n;mero total de blo*ues direccionables, con un #ector de 3 punteros es2 "" 054 Clo*ues L 1 C< L 25" C< L 525"M25"& C< L 525"M25"M25"& C( , 1" 909 0"3 "" 054 L1 L 25" L "5 53" L 1" 333 21" , 1" 909 0"3 U 2 32 El octa#o puntero apunta a un blo*ue >ndice de cuatro ni#eles, *ue almacena 25" punteros a blo*ues >ndice, cada uno de los cuales almacena 25" punteros a blo*ues >ndice, cada uno de los cuales almacena 25" punteros a blo*ues >ndice y $inalmente cada uno de los cuales apunta a 25" punteros a blo*ues de datos El n;mero total de blo*ues direccionables con un #ector de 8 punteros es2
1" 909 0"3 Clo*ues L 1 C< L 25" C< L 525"M25"& C< L 525"M25"M25"& C< L 525"M25"M25"M25"& C( , ,4 328 319 3"8 1" 909 0"3 Clo*ues L 1 L 25" L "5 53" L 1" 333 21" L 4 294 9"3 29" , 4 328 319 3"8 V 2 32
Este n;mero e=cede a 232 ya *ue el ;ltimo sumando es i!ual a 232, lue!o el #ector de punteros podr- tener como m-=imo 3 punteros b& Los blo*ues de datos direccionables con 3 punteros en la entrada de directorio son2 4 L 25" L 525"M25"& L 525"M25"M25"& , 1" 843 012 blo*ues 4 L 25" L "5 53" L 1" 333 21" , 1" 843 012 blo*ues Aara calcular el tama1o del blo*ue2 4 5Cytes/puntero&M525" Aunteros/blo*ue& , 1 024 Cytes /Clo*ue 'on lo *ue el tama1o m-=imo de $ic/ero en %b es2 51" 843 012 Clo*uesM1 024 Cytes/Clo*ue& / 51 024M1 024Cytes/%b& , 1" 448 %b 1" 843 012M1 024 / 1 024M1 024 , 1" 843 012 / 1 024 , 1" 448,25 ,V 1" 448 %b c& Aara calcular el n;mero de re!istros l)!icos del arc/i#o2 1 024 / 250 , 4,09 ,V 4 re!istros l)!icos / Clo*ue 33 52" / 4 , 9 381,5 ,V 9 382 Clo*ues, para contener 33 52" re!istros l)!icos +e desea acceder al 33 525 y se indica, *ue se empieza a numerar por el cero, por lo tanto, se necesitan 9 382 Clo*ues (irectamente del directorio se puede acceder a los cuatro primeros blo*ues, 4 U 9 382 'on un ni#el de inde=aci)n, se puede acceder a los 54 L 25"& U 9 382 'on dos ni#eles de inde=aci)n, se puede acceder a los 54 L 25" L 25"M25"& V 9 382 Aor lo tanto, se necesitan dos ni#eles de inde=aci)n para localizar el blo*ue *ue contiene el re!istro l)!ico al *ue se *uiere acceder, con lo *ue ser- necesario realizar tres accesos a disco, 52 a blo*ues >ndice y uno a blo*ue de datos&
14
El tiempo de cada acceso ser- @acceso , @Aosicionamiento L @Latencia L @@rans$erencia @Aosicionamiento , 20 ms! 3 500 re#oluciones N 500 ?b 1 024 ?b "0 000 ms! @Latencia 1 000 ms! @@rans$erencia
@4cceso , 20 ms! L 4 ms! L 2 ms! , 2" ms! 'omo /ay *ue realizar tres accesos, tendremos 3M2" , 38 ms!
15