2010-04-30 9 views

Antwort

17

Dies erklärt es für Sie:

http://www.cis.temple.edu/~ingargio/cis307/readings/stable.html

"The maximum size of a file will be 8KB*(10 + 2**10 + 2**20 + 2**30), that is more than 8TB." 

Swap 8 KB für Ihren 2KB, und stellen Sie die Einträge für die kleinere Blockgröße.

2KB*(10 + 2**8 + 2**16 + 2**24) 

Es ist nicht ich aus Ihrer Frage klar, ob die 13 Einträge, die Einzel-, Doppel- und Dreibettzimmer sind, oder wenn sie getrennt sind, aber das sollte einfach zu justieren - nur die 10 ändert in dem Ausdruck a 13.

Ich denke, ich habe die ganze Mathematik richtig eingestellt ... double check it = | Hoffe, das ist keine Hausaufgabe, die ich für dich getan habe;)

+1

Sorry, Sie mit einer Frage 7 zu stören Jahre später, aber was bedeuten die beiden Variablen innerhalb der Gleichung? '2 ** 10' oder' 2 ** 20' - warum 2 und warum 10 oder 20 für jeden? – NateH06

1

Wie viele Zeiger in 1 Block?

 
    each block is 2kb = 2^11 
    1 disk address is 8b = 2^3 
    So, in 1 block there are 2^11/2^3 = 2^8 pointers" 

Wie viele Zeiger im Dateisystem?

 
    for 13 direct entries = (2^8)*13 = 3328 
    for single = (2^8)^2 = 2^16 
    for double = (2^8)^3 = 2^24 
    for triple = (2^8)^4 = 2^32 
    total pointer is :3328 + 2^16 + 2^24 + 2^32" 

Deshalb ist die Größe des Dateisystems ist:

size of the disk is : total of pointer*size of the pointer , which is around 34 GB " 

+4

Ich denke, das ist richtig für die ersten 13 Einträge, es sollte nur 13 Zeiger sein? –

+2

Ihre Mathematik ist hier nicht korrekt. – Greg

-1

Wir hv eine Verknüpfung, die für Auswahlprüfungen verwendet werden können, wie gegeben:

Max file size possible = [ block size/pointer size]^3 * block size