FAT Größe,Cluster, etc < Technische Inform. < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 20:41 So 16.12.2007 | Autor: | HoloDoc |
Aufgabe | Eine Festplatte hat eine Kapazität von ca. 130GByte. Sie hat 2^37 Sektoren und es wird FAT32 (d.h. 32 Bit Einträge in der FAT) verwendet. Die Clustergröße ist 4k-Byte.
a) Wieviele Bytes hat ein Sektor?
b) Wieviele Cluster (genaue Angabe im Dezimalsystem) hat die Festplatte?
c) Wieviele Bytes Kapazität (genaue Angabe im Dezimalsystem) hat die Festplatte?
d) Wieviele Cluster belegt eine FAT?
e) Welche Informationen werden üblicherweise in einem Bootsektor gespeichert. |
Also ich schreib mal was ich so habe:
a)
[mm] \bruch{130 * 1024^3}{2^27 * 4} [/mm] = 260 [Bytes/Sektor]
also 256 Bytes pro Sektor
[mm] b)\bruch{130*1024^3}{4*1024} [/mm] = 34078720 Cluster
c) 130 * [mm] 1024^3 [/mm] = 139586437120
d) 2^32 mögliche Cluster
[mm] \bruch{130 * 1024^3}{2^32}=32,5 [/mm] Bytes
und genau da hänge ich, das ergebnis gibt keinenSinn.
DANKE IM VORAUS!
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 10:59 Di 18.12.2007 | Autor: | rainerS |
Hallo!
> Eine Festplatte hat eine Kapazität von ca. 130GByte. Sie
> hat 2^37 Sektoren und es wird FAT32 (d.h. 32 Bit Einträge
> in der FAT) verwendet. Die Clustergröße ist 4k-Byte.
> a) Wieviele Bytes hat ein Sektor?
> b) Wieviele Cluster (genaue Angabe im Dezimalsystem) hat
> die Festplatte?
> c) Wieviele Bytes Kapazität (genaue Angabe im
> Dezimalsystem) hat die Festplatte?
> d) Wieviele Cluster belegt eine FAT?
> e) Welche Informationen werden üblicherweise in einem
> Bootsektor gespeichert.
> Also ich schreib mal was ich so habe:
>
> a)
>
> [mm]\bruch{130 * 1024^3}{2^27 * 4}[/mm] = 260 [Bytes/Sektor]
> also 256 Bytes pro Sektor
Verstehe ich nicht. Wieso teilst du hier nicht einfach durch die Anzahl der Sektoren, also [mm]\bruch{130 * 1024^3}{2^37 } [/mm] (was wenig Sinn ergibt, wegen 1Byte/Sektor).
> [mm]b)\bruch{130*1024^3}{4*1024}[/mm] = 34078720 Cluster
(Anzahl der CLuster) * CLustergröße = (Anzahl der Sektoren) * Sektorgröße
> c) 130 * [mm]1024^3[/mm] = 139586437120
Da wird aber nicht nach der ungefähren Kapazität, sondern der genauen Kapazität gefragt, also (Anzahl der Sektoren) * Sektorgröße.
> d) 2^32 mögliche Cluster
Das ist aber was ganz anderes als die 34078720, die du oben ausgerechnet hast...
Viele Grüße
Rainer
|
|
|
|
|
> Da wird aber nicht nach der ungefähren Kapazität, sondern
> der genauen Kapazität gefragt, also (Anzahl der Sektoren) *
> Sektorgröße.
Was? "Ungefähre Kapazität"?? :-D
Es gibt im IT-Bereich nichts ungefähres, und Ergebnisse müssen immer gleich sein, ansonsten hat man einen Fehler gemacht. Wenn man richtig rechnet bekommt man _immer_ exakte Ergebnisse, wie mir gerade in diesem Augenblick auch mein Windows bestätigt.
Halbe Bits existieren nicht (ausser man betrachtet alles auf quantenphysikalischer Ebene), wenn man so etwas tatsächlich einmal herausbekommt _und_ richtig gerechnet wurde, dann ist das als Gedankenkonstrukt anzusehen
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 08:37 Mi 19.12.2007 | Autor: | rainerS |
Hallo!
> > Da wird aber nicht nach der ungefähren Kapazität, sondern
> > der genauen Kapazität gefragt, also (Anzahl der Sektoren) *
> > Sektorgröße.
> Was? "Ungefähre Kapazität"?? :-D
> Es gibt im IT-Bereich nichts ungefähres,
Schön wär's...
Außerdem war "ca. 130 GB die Aufgabenstellung". Ob 1024 oder 1000 gemeint ist, kann man nicht wissen.
Viele Grüße
Rainer
|
|
|
|
|
> Schön wär's...
Na jetzt bin ich aber gespannt! Also ich und meine bisherigen Lehrer waren ja der Auffassung, dass das einzig ungenaue und ungefähre vor dem Monitor sitzt. Ein Mikroprozessor kann beliebig lange iterieren bzw. logisch verknüpfen, man muss sich also fragen:
"Wie genau will ich es denn haben? Unendlich genau, oder reichen mir 27 Stellen nach dem Komma?"
Ich bitte um Aufklärung
|
|
|
|
|
Hallo,
ein Mikroprozessor, und sei er noch so "Makro", hat aber auch nur endlich viele endlich große Register und Zugriff auf nur endlichen Speicher. Das bedeutet, wenn du ihn unendlich lange rechnen lässt, wird er sich unendlich oft wiederholen (unendlich / groß = unendlich) und trotzdem nicht genauer werden. Der Rechner schafft es doch nicht einmal, eine ordentliche reelle Zahl darzustellen, wenn man sie nur lang (nicht groß) genug macht.
Und die Sache mit den "ca." würde ich auch unterstreichen. Man sagt für große Zahlen ca. und schaut dann, wieviele Bits man dafür braucht. Dann kann man etwas 1024 laufen lassen, wenn es auf die genaue Zahl von 1000 Durchläufen ankommt. Meist zerschlägt es sich eben an den Zweierpotenzen.
Wir können natürlich auch wieder Haare spalten...
Gruß
Martin
|
|
|
|
|
Was du mit Makro hast verstehe ich nicht ... es wird dir wohl kaum möglich sein, einen Prozessor zu finden, der so gross ist dass die Verschaltung sichtbar ist. Ausser, der Zuse und seine Glaubenszeitgenossen stehen noch in irgendeinem Museum.
> Das bedeutet, wenn du ihn
> unendlich lange rechnen lässt, wird er sich unendlich oft
> wiederholen (unendlich / groß = unendlich) und trotzdem
> nicht genauer werden.
Falsch. Volladdierer rechnen schrittweise, jeder Takt korrigiert das Ergebnis. Nachkommastellen werden ebenso berechnet, nach einer Anzahl Zyklen/Takte kommt eine neue dazu und erweitert das Ergebnis. Kann man sehr gut an sehr kleinen ALU´s sehen, ein 4-Bit-Addierer im 8051 benötigt (soweit ich noch weiss) exakt 4 Takte um das _korrekte_ Ergebnis parat zu haben, neuere µController sind auch nicht unbedingt schneller (wohl aber umfangreicher)
Das was du dort beschrieben hast (Ergebnis ohne zyklische Berechnung) ist ein Phänomen der Quantenphysik, bezieht sich auf den Zustand von 2 quantenverschränkten Teilchen und ist Gegenstand der Foorschung für/an Quantencomputern ... derzeit noch nicht rentabel auszunutzen
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 21:57 Mi 19.12.2007 | Autor: | Martin243 |
Hallo,
mit "Makro" meinte ich eher die verfügbaren Ressourcen.
Meinst du einen Volladierer oder ein Addierwerk? Denn ein Volladdierer ist etwas Anderes.
Ich bleibe dabei: Zeig mir den Mikroprozessor, der mit [mm] $\wurzel{2}$ [/mm] berechnet und zwar genau, wie es ja nach deiner Meinung möglich ist.
Gruß
Martin
|
|
|
|
|
Volladdierer.
einen µController, der etwas genau berechnen kann hättens gern? Türlich! Man starte ein entsprechendes Mathematik-Programm, statte es immer wieder mit neuen Festplatten aus und bestaune das fortwährend genauer werdende Ergebnis.
Nur weil die Anzahl der Nachkommastellen gegen unendlich geht heisst das noch lange nicht, dass die errechnende Instanz falsch / schlecht rechnet, einzig die RechenGESCHWINDIGKEIT wäre evtl. zu bemängeln!
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 23:31 Mi 19.12.2007 | Autor: | Martin243 |
OK,
es behauptet ja keiner, dass man nicht genau rechnen kann. Es geht eher darum, dass man in der Informatik mit beschränkten Ressourcen zu tun hat und sich auch keiner hinsetzt und Jahre auf ein Ergebnis wartet.
Das ist auch der Unterschied zur Mathematik. Dort schreibst du eine Reihe als unendliche Summe und es ist ok. In der Informatik wirst du davon immer nur eine endliche Anzahl von Gliedern ausrechnen können.
Wenn du einen Rechner unendlich lange laufen lassen willst, dann schau dir die Definition von "Algorithmus" an und sag mir dann, wie du [mm] $\wurzel{2}$ [/mm] genau berechnen willst.
|
|
|
|
|
> a)
>
> [mm]\bruch{130 * 1024^3}{2^27 * 4}[/mm] = 260 [Bytes/Sektor]
> also 256 Bytes pro Sektor
Fundamentaler Fehler, der Faktor bei HDD´s ist 1000 und nicht 1024, das ist ein beliebter Trick um grössere Kapazitäten vorzutäuschen (darum hat eine 160 GB-Platte auch nie 160 GB, sondern [mm] 160\*1000^{3} [/mm] Byte, also ca. 149 GB).
Wie mein Vorredner schon bemerkte, muss man danach nur durch die Anzahl der Sektoren teilen. Das Ergebnis lautet bei mir:
[mm]0,945874489[/mm] Byte
> [mm]b)\bruch{130*1024^3}{4*1024}[/mm] = 34078720 Cluster
Folgefehler, mein Rechner sagt das Ergebnis wäre:
32500000 Cluster
> c) 130 * [mm]1024^3[/mm] = 139586437120
Folgefehler, siehe a)
Die Frage d) ist fehlerhaft gestellt, es gibt kein "eine FAT", es gibt höchstens "FAT-Einträge", die Frage müsste also lauten:
"Wieviele Cluster passen in einen FAT32-Eintrag?"
Laut der (mehr als seltsamen) Angabe "4k-byte" schliesse ich: ein Cluster hat 4000 Byte, andernfalls wäre die Angabe falsch.
Antwort:
[mm] \bruch{32}{4000\*8}
[/mm]
Vermutlich aber sind 4kb gemeint, und als Frage "Wieviele FAT32-Einträge passen in einen Cluster" ... das Ergebnis liesse sich dann ähnlich berechnen:
[mm] \bruch{4\*1024\*8}{32} [/mm] = 1024, wunderbares Ergebnis und auch sehr logisch wie ich finde
Die Lösung zu e) lautet natürlich: "Pfad zum Bootloader & Bootparameter"
|
|
|
|
|
Status: |
(Korrektur) kleiner Fehler | Datum: | 08:50 Mi 19.12.2007 | Autor: | rainerS |
Hallo!
> > a)
> >
> > [mm]\bruch{130 * 1024^3}{2^27 * 4}[/mm] = 260 [Bytes/Sektor]
> > also 256 Bytes pro Sektor
>
> Fundamentaler Fehler, der Faktor bei HDD´s ist 1000 und
> nicht 1024, das ist ein beliebter Trick um grössere
> Kapazitäten vorzutäuschen (darum hat eine 160 GB-Platte
> auch nie 160 GB, sondern [mm]160\*1000^{3}[/mm] Byte, also ca. 149
> GB).
Das ist zwar richtig, aber hier steht eindeutig 130GB in der Aufgabe, nicht 130GiB. Also kann man argumentieren, dass nicht der Aufdruck auf der Verpackung gemeint ist.
> Wie mein Vorredner schon bemerkte, muss man danach nur
> durch die Anzahl der Sektoren teilen. Das Ergebnis lautet
> bei mir:
> [mm]0,945874489[/mm] Byte
Also 1Byte, da von "ca. 130GB Kapazität" die Rede ist.
> > [mm]b)\bruch{130*1024^3}{4*1024}[/mm] = 34078720 Cluster
>
> Folgefehler, mein Rechner sagt das Ergebnis wäre:
> 32500000 Cluster
gleicher Fehler wie in der ursprünglichen Frage. Ein Cluster hat 4kB also 4096 Sektoren, daher:
[mm] \bruch{2^{37}}{2^{12}} = 2^{25}= 33554432 [/mm].
> > c) 130 * [mm]1024^3[/mm] = 139586437120
>
> Folgefehler, siehe a)
>
> Die Frage d) ist fehlerhaft gestellt, es gibt kein "eine
> FAT", es gibt höchstens "FAT-Einträge",
Das ist Wortklauberei. "Fat-Eintrag" kann auch den 32Bit langen Indexeintrag für einen Cluster bedeuten.
Ein FAT32-Filesystem hat zwei FATs gleicher Länge. Gefragt ist nach dieser Länge, die gegeben ist durch die Anzahl der Cluster, für die jeweils 32Bits=4Bytes benötigt werden, also [mm]33554432*4[/mm].
Viele Grüße
Rainer
|
|
|
|