Autor Thema: Festplattenpartionierung und -bootsektoren  (Gelesen 5340 mal)

Homix

  • Beiträge: 138
    • Profil anzeigen
Gespeichert
« am: 18. February 2005, 15:07 »
hi,
ich will auch mal versuchen mein OS bootfähig auf eine alte Festplatte zu kopieren.
Soweit ich weiss steht im ersten Sektor von einer Festplatte der Bootsektor (wie bei Disketten halt auch) und eine Partionstabelle von 4 Einträgen (4 oder ? sind dann max. 4 Partionen auf einer Festplatte mglich ?).
Aber die verschiedenen Partionen haben ja auch alle nochmal einen ersten Sektor.
Steht da nochmal ein anderer Bootsektor drin ? z.B. auch noch Dateisysteminformationen ?
oder wie ist da der genaue Aufbau ?
und wie funktioniert das, wenn man mehrere Betriebssysteme pararell auf seinem System laufen lassen will ?

ich hoffe ihr könnt mir bisschen was zu diesen Fragen erklären oder mir auch gute Links geben !
bin für jede Hilfe dankbar !

cu,
stefan2005

BigOlly

  • Beiträge: 88
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 18. February 2005, 15:55 »
Also ich boote mein OS von Festplatte, ich denke ich kann deshalb darüber ein par Worte verlieren. :-)


Also:

Zitat
Soweit ich weiss steht im ersten Sektor von einer Festplatte der Bootsektor (wie bei Disketten halt auch) und eine Partionstabelle von 4 Einträgen (4 oder ? sind dann max. 4 Partionen auf einer Festplatte mglich ?).


Ja, kann man so sagen. Nur nennt man 1. diesen ersten Sector nicht Bootsector sondern MasterBootRecord und 2. steht hier nicht ein Bootcode für das Betribssystem sondern Bootcode der die Partition-Table ausliest und dann den Bootcode des OS läd und startet.
Und: Ja, die Part-Table hat 4 Einträge, mann kann also 4 Partitionen erstellen. Es gibt aber einen Partitions-Typ wo die Partition wiederum eine Partition-Table enthalten kann. Diesen Partitions-Typ nennt man "Erweiterte Partition" wärend alle anderen Typen (korregiert mich wenn ich lüge) Primäre Partitionen sind.


Zitat
Aber die verschiedenen Partionen haben ja auch alle nochmal einen ersten Sektor.
Steht da nochmal ein anderer Bootsektor drin ? z.B. auch noch Dateisysteminformationen ?
oder wie ist da der genaue Aufbau ?


Der Ablauf ist so:
- Das BIOS läd den ersten Sector der Platte (also den MasterBootRecord) in den Speicher und startet diesen (Aber nur wenn die letzten 2 Bytes AA55h sind, klar!)
- Der gestartete Bootcode liest die Partition-Table und sucht nach der ort als "aktiv" eingetragenen Partition.
- Wenn eine aktive Partition gefunden wurde kopiert sich der Bootcode selber von 0:7C00h wo anders hin (meisst 0:7600h wenn ich mich richtig erinnere) und läd dann den ersten Sector nach 0:7C00h und startet diesen.
- Dies ist nun der "richtige" Bootsector des OS auf der aktiven Partition und ab diesem Punkt läuft (fast) alles so wie beim booten von Floppy.


Zitat
und wie funktioniert das, wenn man mehrere Betriebssysteme pararell auf seinem System laufen lassen will ?


Es gibt viele Möglichkeiten, eine ist die:
- Auf jeder Partition liegt ein anderes OS
- Im MBR (MasterBootRecord) steht ein Bootcode der Dich fragt welches System Du booten willst.
- Dann läd dieser "Bootmanager" den ersten Sector der Partition und startet diesen dessen System Du ausgewählt hast.
(also mal ganz simpel geschrieben)


noch Fragen?  :roll:

Gruß BigOlly
====================================================
Zitat: "Es ist schwierig zu antworten, wenn man die Frage nicht versteht."
(würde mich ja mal interessieren ob jemand weiß woher dieser Satz stammt...)

Homix

  • Beiträge: 138
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 18. February 2005, 16:04 »
hi,
danke hat mir sehr weitergeholfen !

Kennst du irgendeinen Link oder irgendein Tutorial über Partitionstabellen und erweiterten Partitionen ?

cu,
stefan2005

Roshl

  • Beiträge: 1 128
    • Profil anzeigen
    • http://www.lowlevel.net.tc
Gespeichert
« Antwort #3 am: 18. February 2005, 16:11 »
Über Partitionstabellen habe ich etwas in der letzten ausgabe geschrieben^^
erweiterte partitionen sind da allerdings nicht dabei.
[schild=1]Wieder ein wertvoller(?) Beitrag von Roshl[/schild]

BigOlly

  • Beiträge: 88
    • Profil anzeigen
Gespeichert
« Antwort #4 am: 18. February 2005, 16:22 »
Hmmm.. aus dem Ärmel kann ich keinen Link schütteln, aber sieh mal in der LowLevel-Linkliste, da ist glaub ich einer dabei auf dessen Seiten was über Partitionen steht.

Was die erweiterten Partitionen angeht:
Erweiterte Partitionen sind sozusagen wie eine separate Festplatte, der erste Sector enthällt wieder eine Partition-Table und teilt die Partition in weitere Partitionen auf.
Einziger Unterschied:
1. es gibt kein Bootprogramm im ersten Sector der Erweiterten (das Bootprogramm ist ja schon geladen) und..
2. darf die Partition-Table der Erweiterten (und hier bin ich mir aber aus dem Kopf heraus nicht ganz sicher) nur max. 1 "primäre" und eine weitere Erweiterte enthalten. (aber diesen Punkt bitte nachprüfen)

:-)
====================================================
Zitat: "Es ist schwierig zu antworten, wenn man die Frage nicht versteht."
(würde mich ja mal interessieren ob jemand weiß woher dieser Satz stammt...)

Homix

  • Beiträge: 138
    • Profil anzeigen
Gespeichert
« Antwort #5 am: 18. February 2005, 17:24 »
hi,
ich lese öfters was von aktiven und primären Partitionen.
was genau sind aktive und primäre und welche Eigenschaften haben sie ?

bedeutet aktiv nur dass die Partitionen vorhanden sind oder auch, dass da ein Betriebssystem drauf ist ?

cu,
stefan2005

stultus

  • Beiträge: 486
    • Profil anzeigen
Gespeichert
« Antwort #6 am: 18. February 2005, 20:07 »
wie es sich damit genau verhält weiß ich nich, soweit ich weiß deaktiviert windows aber alle für ihn unbekannten partitionen bei der installation, d.h. es dürfte etwas damit zu tun haben ob ein system mit ihnen etwas anfangen kann oder nicht
MSN: planetconquestdm@hotmail.de
ICQ: 190-084-185

... Wayne?

BigOlly

  • Beiträge: 88
    • Profil anzeigen
Gespeichert
« Antwort #7 am: 18. February 2005, 21:26 »
Nein, nein, nein Leute.... :-)

Also um es einfacher zu machen lassen wir mal die erweiterten Partitionen weg für den Moment. So, dann gibt es nur noch primäre Partitionen.

Wir haben also eine Partitionstabelle in die 4 (primäre) Partitionen eingetragen werden können.
Nehmen wir an es sind auch tatsächlich 4 Partitionen vorhanden (es kann auch sein das einer oder mehrere Einträge in der Table leer sind, dann gibt es eben nur 3, 2 oder 1 Partition), und jede Partition hat ein anderes OS.

So weit so gut!

Das Bootprogramm im MBR (erinnert Euch: MBR=MasterBootRecord, also erster phys. Sector der Platte) muss aber beim Start nun wissen welchen Bootsector welcher Partition es nun laden soll... klar? Also? Welchen? :-)

EBEN! Das Bootprogramm weiß es nicht! Also, aus, vorbei, booten ist zu Ende, PC läuft nicht!
...Doch halt, es gibt einen Trick: Man markiert einfach die Partition die geootet werden soll. Also, gesagt, getan: Jeder Partitionseintrag hat im ersten Byte eine 00h. So, jetzt markieren wir die Partition die gebootet werden soll mit 80h. Und schon weiss das Bootprogramm welchen Bootsector es laden und starten muß.

Also das Bootprogramm im MBR macht (grob) folgendes:
- Partituions-Tabelle nach einer Partition durchsuchen die als Boot-Partition markiert ist (man sagt auch dies ist die aktive Partition)
- Bootsector dieser Partition laden und starten.


Und nun zu
Zitat
soweit ich weiß deaktiviert windows aber alle für ihn unbekannten partitionen bei der installation, d.h. es dürfte etwas damit zu tun haben ob ein system mit ihnen etwas anfangen kann oder nicht


Nein, nicht so ganz.
Windows sorgt nur dafür (wenn ich mal alles was mit Bootmanager zusammenhängt außer acht lasse) das es selber auf der aktiven Partition steht damit es beim Start gebootet wird. Also markiert es die eigene Partition als "aktiv" (80h), und da es nur eine aktive Partition geben kann (sonst würde das MBR-Programm ja wieder vor dem gleichen oben genannten Problem stehen), deaktiviert Windows natürlich die bis zu diesem Zeitpunkt aktive Partition.

Hmmm.. ich hoffe ich hab das einigermassen rüber gebracht.
Haut mich wenn ich was vergessen hab! :lol:

Gruß BigOlly
====================================================
Zitat: "Es ist schwierig zu antworten, wenn man die Frage nicht versteht."
(würde mich ja mal interessieren ob jemand weiß woher dieser Satz stammt...)

 

Einloggen