DE60210434T2 - Betriebssystemselektor und Datenplattenspeicher - Google Patents

Betriebssystemselektor und Datenplattenspeicher Download PDF

Info

Publication number
DE60210434T2
DE60210434T2 DE60210434T DE60210434T DE60210434T2 DE 60210434 T2 DE60210434 T2 DE 60210434T2 DE 60210434 T DE60210434 T DE 60210434T DE 60210434 T DE60210434 T DE 60210434T DE 60210434 T2 DE60210434 T2 DE 60210434T2
Authority
DE
Germany
Prior art keywords
partition
data storage
gpt
operating system
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE60210434T
Other languages
English (en)
Other versions
DE60210434D1 (de
Inventor
Jean Francois Larvoire
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE60210434D1 publication Critical patent/DE60210434D1/de
Application granted granted Critical
Publication of DE60210434T2 publication Critical patent/DE60210434T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • G06F9/441Multiboot arrangements, i.e. selecting an operating system to be loaded

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

  • Gebiet der Erfindung
  • Diese Erfindung bezieht sich auf einen Betriebssystem-Selektor und ein Datenspeicherlaufwerk, das mit einem Betriebssystemselektor versehen ist, einen Computer, der mit einem Betriebssystemselektor versehen ist, einen Computer, der mit einem Datenspeicherlaufwerk versehen ist und ein Verfahren zum Booten bzw. Hochladen eines Betriebssystems.
  • Hintergrund der Erfindung
  • Wenn ein Computer von einem Festplattenlaufwerk bootet, ist es notwendig, dass das BIOS des Computers in der Lage ist, eine bootbare oder aktive Partition zu identifizieren, von der ein Betriebssystem („BS") gebootet werden kann. Üblicherweise kann eine Festplatte in bis zu vier Hauptpartitionen unterteilt sein. Wenn von einer Festplatte gebootet wird, liest das BIOS eine Master-Boot-Aufzeichnung („MBR"; MBR = master boot record), die üblicherweise an dem ersten Sektor oder an der ersten Logikblockadresse (LBA 0) der Platte angeordnet ist. Die Master-Boot-Aufzeichnung enthält eine Tabelle, die Beschreibungen der Hauptpartitionen enthält. Eine der Hauptpartitionen ist üblicherweise als aktiv markiert, was anzeigt, dass dies eine „bootbare" Partition ist, die zum Booten verwendet werden sollte. Der Bootcodeabschnitt enthält ein Codestück, das als eine „BS-Ladeeinrichtung" bezeichnet wird, die die Betriebssystemkerndateien des Betriebssystems in einem Speicher von der bootbaren Partition lädt. Wo jedoch zwei oder mehr potentiell bootbare Hauptpartitionen vorgesehen sind, z.B. wo zwei unterschiedliche Betriebssysteme in separaten Partitionen gespeichert sind, ist es bekannt, einen Bootcode bereitzustellen, der auf der Platte gespeichert ist und der wirksam ist, um ein Bootmenü zu erzeugen, das es dem Benutzer ermöglicht, ein bevorzugtes Betriebssystem auszuwählen.
  • Um die Beschränkung auf vier primäre Partitionen zu überwinden, wurden Spezifikationen, wie z.B. die Spezifikation der Intel Extensible Firmware Interface (EFI) definiert. Gemäß der EFI-Spezifikation kann eine sehr große Anzahl von Partitionen definiert sein, jede identifiziert durch einen global eindeutigen Identifizierer (GUID = globally unique identifier), eine 128-Bit-Zahl. Eine Partitionstabelle, bezeichnet als eine GPT oder GUID-Partitionstabelle, listet jede der Partitionen auf, einschließlich ihrer Anfangs- und End-Adressen, und Informationen, die die Inhalte oder Funktion der Partition falls erwünscht identifizieren. Es ist möglich, dass eine MBR-Partitionstabelle und die (bis zu) vier Hauptpartitionen gemeinsam auf derselben Platte existieren, mit EFI-Partitionen und einer GPT, durch Definieren von einer der Hauptpartitionen als den GPT-verwalteten Bereich und Anordnen der GPT-Partitionen in dem GPT-verwalteten Bereich. Wenn ein BIOS, das nicht kompatibel mit der EFI-Spezifikation ist, versucht, von der Festplatte zu booten, liest es die Master-Boot-Aufzeichnung und die bootbaren Hauptpositionen auf herkömmliche Weise, während es die Hauptpartition ignoriert, die die EFI-konfigurierte GPT und die GPT-Partitionen enthält. Die GPT-Spezifikation ist insofern vorteilhaft, dass sie ermöglicht, dass bis zu 264 Sektoren einer Platte adressiert werden.
  • Wo ein BIOS kompatibel mit der EFI-Spezifikation ist, ist es wirksam, um sowohl GPTs als auch die MBR-Partitionstabelle zu lesen, hierin nachfolgend bezeichnet als eine alte MBR-Partitionstabelle, um sowohl bootbare GPT-Partitionen als auch bootbare Primärpartitionen zu identifizieren, hierin nachfolgend bezeichnet als „alte" bzw. „Legacy"-Partitionen, und erzeugt ein Bootmenü. Gemäß der EFI-Spezifikation wird der Bootcode, der in der alten MBR enthalten ist, nicht betrieben, sondern stattdessen wird ein spezifisches Wurzelverzeichnis spezifiziert, wo Betriebssystem-Ladeeinrichtungsprogramme angetroffen werden.
  • Es ist wünschenswert, dass die Vorteile von GPT-Partitionen verfügbar werden, sobald wie möglich, sogar auf Computern, wo das BIOS und Betriebssystem nicht kompatibel mit der EFI-Spezifikation sind. Wo jedoch Dateien eines Betriebssystems in einer GPT-Partition gespeichert sind, werden beim Booten die Betriebssystem-Ladeeinrichtung und der Betriebssystem-Kern nicht in der Lage sein, die erwarteten Dateien zu finden, aufgrund der unterschiedlichen Plattenstruktur und des Plattenadressierungssystems.
  • Ein Ziel der Erfindung ist es, ein neues oder verbessertes Verfahren zu schaffen, durch das ein nicht-EFI-kompatibles Betriebssystem von einer GPT-Partition gebootet werden kann.
  • Zusammenfassung der Erfindung
  • Gemäß einem ersten Aspekt der Erfindung wird in Betriebssystemselektor geschaffen, der wirksam ist, um ein nicht-EFI-kompatibles Betriebssystem zu booten, wo die nicht-EFI-kompatiblen Betriebssystemdateien in einer Partition eines Datenspeicherlaufwerks gespeichert sind, wobei das Datenspeicherlaufwerk zumindest eine alte Partition aufweist, wobei das Datenspeicherlaufwerk einen ersten Adresssatz aufweist, dadurch gekennzeichnet, dass die Partition eine GPT-Partition ist, und ein GPT-verwalteter Bereich, der die GPT-Partition aufweist, in der alten Partition verschachtelt ist, wobei der Betriebssystemselektor wirksam ist zum: Lesen einer GUID-Partitionstabelle, um Adressinformationen zu identifizieren, die sich auf die GPT-Partition beziehen, Definieren der GPT-Partition als ein virtuelles Datenspeicherlaufwerk, das einen zweiten Adresssatz aufweist, Rufen einer Adressabbildungseinrichtung und Weiterleiten der Adressinformationen zu der Adressabbildungseinrichtung, um zu ermöglichen, dass die Adressabbildungseinrichtung Befehle zwischen dem ersten Adresssatz und dem zweiten Adresssatz abbildet, Lesen einer weiteren alten Master-Boot-Aufzeichnung, die in der GPT-Partition gespeichert ist, und Ausführen eines Ladeschrittes, um das nicht-EFI-kompatible Betriebssystem zu booten.
  • Der Betriebssystemselektor kann wirksam sein, um das Datenspeicherlaufwerk zu lesen, um bootbare alte Partitionen und bootbare GPT-Partitionen zu identifizieren, und um ein Bootmenü gemäß den identifizierten bootbaren Partitionen zu erzeugen.
  • Die OS-Auswahleinrichtung kann einen Bootcode aufweisen, der in einer alten Master-Boot-Aufzeichnung des Datenspeicherlaufwerks gespeichert ist.
  • Der Ladeschritt kann den Schritt des Lesens einer weiteren alten Master-Boot-Aufzeichnung der GPT-Partition, das Laden des alten Bootcodes in einen Speicher und das Weiterleiten der Steuerung zu dem alten Bootcode aufweisen.
  • Die Adressabbildungseinrichtung kann wirksam sein, um Befehle zu verhaken, um auf das Datenspeicherlaufwerk zuzugreifen, und wo der Befehl eine Adresse in dem zweiten Adresssatz aufweist, um die Adresse auf die entsprechende Adresse des ersten Adresssatzes abzubilden.
  • Die Adressabbildungseinrichtung kann ein Programm sein, das resident bleibt wenn es abgebrochen wird.
  • Der GPT-Partitionstyp kann einen Partitionstyp aufweisen, der das Bild eines alten Festplattenlaufwerks ist, und bei dem der Schritt des Definierens der GPT-Partition als ein Datenspeicherlaufwerk den Schritt des Einstellens einer BIOS-Laufwerknummer gemäß der GPT-Partition auf 80H aufweist.
  • Alternativ kann die GPT-Partition einen Partitionstyp aufweisen, der das Bild einer alten Diskette ist, und bei dem der Schritt des Definierens der GPT-Partition als ein Datenspeicherlaufwerk den Schritt des Einstellens einer BIOS-Laufwerknummer gemäß der GPT-Partition auf OH aufweist.
  • Der Schritt zum Definieren der GPT-Partition als ein virtuelles Datenspeicherlaufwerk kann durch die Adressabbildungseinrichtung ausgeführt werden.
  • Gemäß einem zweiten Aspekt der Erfindung wird ein Datenspeicherlaufwerk geschaffen, das einen Datenspeicherbereich aufweist, wobei der Datenspeicherbereich eine alte Master-Boot-Aufzeichnung aufweist, die einen Betriebssystemselektor gemäß dem ersten Aspekt der Erfindung aufweist.
  • Die Datenspeicherlaufwerk-GPT-Partition kann eine weitere alte Master-Boot-Aufzeichnung aufweisen.
  • Das Datenspeicherlaufwerk kann zumindest eine alte Partition aufweisen.
  • Das Datenspeicherlaufwerk kann ein Festplattenlaufwerk aufweisen.
  • Die vorliegende Erfindung ermöglicht somit, dass ein nicht-EFI-kompatibles Betriebssystem von einer GPT-Partition gebootet wird ohne eine Modifikation an dem Betriebssystem selbst oder an dem BIOS des Computers. Die Vorteile können jetzt verfügbar gemacht werden, sogar wenn das Betriebssystem oder das BIOS selbst nicht EFI-kompatibel sind.
  • Gemäß einem dritten Aspekt der Erfindung wird ein Computer geschaffen, der ein Datenspeicherlaufwerk gemäß dem zweiten Aspekt der Erfindung und ein BIOS aufweist, das wirksam ist, um die alte Master-Boot-Aufzeichnung zu lesen und den Betriebssystemselektor zu laden.
  • Gemäß einem vierten Aspekt der Erfindung wird ein Verfahren geschaffen zum Booten eines nicht-EFI-kompatiblen Betriebssystems, wenn die Betriebssystemdateien in einer GPT-Partition eines Datenspeicherlaufwerks gespeichert sind, wobei das Verfahren folgende Schritte aufweist: Lesen einer GUID-Partitionstabelle, um Adressinformationen zu identifizieren, die sich auf die GPT-Partition beziehen, Definieren der GPT-Partition als ein virtuelles Datenspeicherlaufwerk, Rufen einer Adressabbildungseinrichtung und Weiterleiten der Adressinformationen zu der Adressabbildungseinrichtung, und Ausführen eines Ladeschrittes, um das Betriebssystem zu booten.
  • Kurze Beschreibung der Zeichnungen
  • Ein Ausführungsbeispiel der Erfindung wird nur beispielhaft ausschließlich Bezug nehmend auf die beiliegenden Zeichnungen beschrieben, in denen:
  • 1 eine diagrammartige Darstellung eines Computers ist, der ein Datenspeicherlaufwerk aufweist.
  • 2 eine diagrammartige Darstellung eines Datenspeicherlaufwerks ist, das die vorliegende Erfindung verkörpert,
  • 3 ein Flussdiagramm ist, das ein Verfahren darstellt, das die vorliegende Erfindung verkörpert, und
  • 4 eine weitere diagrammartige Darstellung des Datenspeicherlaufwerks aus 2 ist.
  • Detaillierte Beschreibung der bevorzugten Ausführungsbeispiele
  • Wie in 1 gezeigt ist, ist ein Computer diagrammartig bei 42 dargestellt. Der Computer weist eine Hauptplatine 43, die auf herkömmliche Weise mit einem BIOS versehen ist, und ein Datenspeicherlaufwerk, bei dem vorliegenden Beispiel ein Festplattenlaufwerk 45, das durch den Interrupt 13h des BIOS 44 auf herkömmliche adressiert wird, und einen Speicher 46 auf.
  • Bezug nehmend nun auf 2 ist eine diagrammartige Darstellung eines Datenspeicherbereichs eines Datenspeicherlaufwerks gezeigt, bei dem vorliegenden Beispiel ein Festplattenlaufwerk 45 aus 1. Der erste Sektor oder jeder Block des Datenspeicherbereichs 10 weist eine Master-Boot-Aufzeichnung 11 auf herkömmliche Weise auf, hierin nachfolgend bezeichnet als eine alte MBR 11. Die alte MBR weist einen ersten Teil auf, der einen Bootcode aufweist, der einen Betriebsselektor 11a umfasst, hierin nachfolgend bezeichnet als ein „BS-Selektor", der in den Speicher 46 durch das BIOS geladen wird und während jedes Bootprozesses betrieben wird, und eine Partitionstabelle, hierin nachfolgend bezeichnet als eine alte Partitionstabelle 11b. Der Datenspeicherbereich 11 ist auf herkömmliche Weise in drei Partitionen 12, 13, 14 unterteilt, hierin nachfolgend bezeichnet als alte Partitionen. Die Partitionen 13, 14 sind mit Volumen-Boot-Aufzeichnungen 13a, 14a auf herkömmliche Weise versehen. Die Partition 12 weist einen verwalteten GUID-Partitionstabellenbereich 15 („GPT"-verwalteten Bereich; GPT = GUID partition table) auf, der innerhalb der alten Partition 12 auf bekannte Weise verschachtelt ist. Die alte Partitionstabelle 11b weist Einträge 12b, 13b, 14b auf, die jeder alten Partition 12, 13, 14 entsprechen, einschließlich der Startadresse jeder alten Partition 12, 13, 14.
  • Bezug nehmend nun auf den GPT-verwalteten Bereich 15 ist eine Partitionstabelle, die eine GUID-Partitionstabelle (GPT) 16 aufweist, am Anfang des GPT-verwalteten Bereichs 15 vorgesehen, der einen GPT-Anfangsblock 16a aufweist. Der GPT-verwaltete Bereich 15 weist eine Mehrzahl von GPT-Partitionen 17, 18, 19 auf, wobei jede derselben einen entsprechenden Eintrag 17a, 18a, 19a in der GPT 16 aufweist. Jeder GPT-Partitions-Eintrag 17a, 18a, 19a weist Informationen auf, die sich auf die entsprechende Partition beziehen, einschließlich eines Partitionstyp-GUID, einer eindeutigen GUID, die diese Partition identifiziert, der Start- und End-Adresse, die bei der EFI Logikblockadressen aufweisen, EFI-Attributinformationen und einem Partitionsnamen aus bis zu 36 Zeichen. Die Partitionstyp-GUID ist eine GUID, die die Dateistruktur anzeigt, die bei dieser Partition verwendet wird. Am Ende des GPT-verwalteten Bereichs 15 ist eine Sicherungs-GPT 20 auf herkömmliche Weise vorgesehen, die die Inhalte der GPT 16 derart dupliziert, dass, wenn die GPT 16 abgefälscht oder ungültig ist, der GPT-verwaltete Bereich 15 weiterhin unter Verwendung von Informationen in der Sicherungs-GPT 20 adressiert werden kann.
  • Bei dem vorliegenden Beispiel enthält eine der GPT-Partitionen, Partition 19, die Dateien für ein nicht-EFI-kompatibles Betriebssystem 21. Die Partition 19 ist ferner mit einer weiteren alten Master-Boot-Aufzeichnung 22 und einer Volumen-Boot-Aufzeichnung 23 versehen, auf ähnliche Weise zu den Boot-Aufzeichnungen 13a, 14a. Die weitere alte MBR 22 enthält einen alten Boot-Code, der eine BS-Ladeeinrichtung 22a aufweist. Die GPT-Partition 19 ist von einem geeigneten Partitionstyp, geeignet für den Typ des Platten-Bildes, das in demselben gespeichert ist. Bei dem vorliegenden Beispiel weist das Betriebssystem 21 MS-DOS (TM) installiert auf einem alten Festplattenbild auf, und der Partitionstyp ist vorteilhafterweise von dem standardmäßigen EFI-GPT-Partitionstyp 024DEE41-33E7-11D3-9D69-0008C781F39F. Dieser Partitionstyp ist die exakte Abbildung einer alten Festplatte und zeigt das Vorhandensein eines alten MBR in der Partition an.
  • Bezug nehmend nun auf 3 und 4 wird das vorliegende Ausführungsbeispiel wie folgt betrieben. Bei Schritt 30 liest das BIOS als Teil des Bootprozesses das alte MBR 11 auf herkömmliche Weise, und lädt und betreibt bei Schritt 31 den Betriebssystemselektor 11a wie es dies für jeglichen Bootcode ausführen würde, der in dem alten MBR 11 gespeichert ist. Der BS-Selektor 11a ist bei Schritt 32 wirksam, um den Datenspeicherbereich 11 nach bootbaren alten Partitionen und bootbaren GPT-Partitionen zu durchsuchen. Bootbare alte Partitionen können aus dem entsprechenden Eintrag in der alten MBR-Partitionstabelle 11b identifiziert werden, wo ein Boot-Indikatorbyte auf 80h auf herkömmliche Weise eingestellt ist, während bootbare Partitionen in dem GPT-verwalteten Bereich 15 identifiziert werden durch Lesen der GPT 16, um GPT-Partitionen des richtigen Partitionstyps zu identifizieren. Bei Schritt 33 wird ein Boot-Menü angezeigt, das sowohl GPT- als auch alte bootbare Partitionen anzeigt, die durch den BS-Selektor 11a identifiziert wurden. Ein Benutzer kann eine Option aus dem Bootmenü auswählen. In dem Fall, dass der Benutzer z.B. ein Betriebssystem auswählt, das in einem alten Abschnitt 13, 14 angeordnet ist, fährt der Rest des BS-Bootprozesses auf herkömmliche Weise fort, wie bei Schritt 35 gezeigt ist.
  • Wenn der Benutzer entscheidet, ein Nicht-EFI-Betriebssystem zu verwenden, gespeichert in einer GPT-Partition, wird bei diesem Beispiel des Betriebssystems 21, das in der GPT-Partition 19 gehalten wird, der BS-Selektor 11a Adressinformationen wiedergewinnen, z.B. die Startadresse und Partitionslänge, ausgedrückt in Logikblockadressen, aus der GPT 16 bei Schritt 36. Bei Schritt 37 startet der BS-Selektor 11a ein Adress-Abbilder-Programmelement, gezeigt bei 41 in 4, und leitet die Adressinformationen zu der Adressabbildungseinrichtung weiter. Die Adressabbildungseinrichtung 41 ist in diesem Fall ein Programm, das resi dent bleibt wenn es abgebrochen wird (TSR; terminate and stay resident), das in der Lage ist, Rufe zu dem BIOS-Interrupt 13h auf herkömmliche Weise zu verhaken. Bei Schritt 38 identifiziert die Adressabbildungseinrichtung 41 die Partition 19 als ein separates, virtuelles Plattenlaufwerk. Der BIOS-Laufwerk-Identifizierer ist auf den entsprechenden Wert eingestellt, z.B. 80h für einen Partitionstyp, der das Bild einer alten Festplatte ist. Wenn nötig, sollte der Laufwerkidentifizierer für das Datenspeicherlaufwerk 45 neu abgebildet werden, z.B. von 80h auf 81h, und jegliche andere physische Datenspeicherlaufwerke sollten entsprechend neu abgebildet werden. Der Datenspeicherbereich 10 weist eine erste eingestellte Adresse auf, die bei Logikblockadresse 0 beginnt, und erstreckt sich bei diesem Beispiel zu der Endlogikblockadresse der Partition 14. Das virtuelle Datenspeicherlaufwerk, äquivalent zu Partition 19, weist einen zweiten Adresssatz auf, ebenfalls beginnend bei der Logikblockadresse 0 und sich erstreckend bis zu der Adresse, äquivalent zu der Länge der Partition 19. Es ist offensichtlich, dass Schritt 38 alternativ durch den BS-Selektor 11a ausgeführt werden kann.
  • Bei Schritt 39 liest der BS-Selektor 11a die weitere alte Master-Boot-Aufzeichnung 22 des Partitionsbereichs 19, lädt den alten Bootcode, der die alte BS-Ladeeinrichtung 22a aufweist, in die Standardadresse, z.B. 0:7C008, und überträgt bei Schritt 40 die Steuerung zu der alten BS-Ladeeinrichtung 22a.
  • Bezug nehmend auf 4 weist das Betriebssystem 21, das den Computer bootet, offensichtlich zwei Laufwerke auf, bei diesem Beispiel HDD0 und HDD1. Das Hauptlaufwerk, HDD0, ist das virtuelle Datenspeicherlaufwerk, das der GPT-Partition 19 entspricht. Das physische Laufwerk erscheint bei HDD1. Das Betriebssystem 21 bootet von dem virtuellen Laufwerk HDD0 auf herkömmliche Weise. Das heißt, die alte BS-Ladeeinrichtung 22a liest die alte Partitionstabelle 22b und identifiziert das virtuelle Laufwerk HDD0 derart, dass es auf eine herkömmliche Weise eine bootbare Partition aufweist. Das Betriebssystem 21 ist in der Lage, zumindest die Partitionen 13 und 14 von HDD1 zu lesen, da das alte MBR 11 durch das Betriebssystem 21 auf herkömmliche Weise lesbar ist.
  • Wenn das Betriebssystem 21 oder eine Anwendung versucht, auf HDD0 zu schreiben, fängt das Adressabbildungseinrichtungsprogramm 41 alle entsprechenden Interrupt-13h-Befehle, die zu dem virtuellen Laufwerk HDD0 adressiert sind, die eine Adresse in dem zweiten Adresssatz aufweisen, und bildet dieselben auf die entsprechende Adresse in dem ersten Adresssatz des physischen Laufwerks 45 ab. Die Abbildung zwischen dem ersten Adresssatz und dem zweiten Adresssatz kann auf geeignete Weise nach Wunsch ausgeführt werden. Zum Beispiel kennt der BS-Selektor 11a den relativen Versatz der Partition 19 von LBA0 von HDD1. Wenn ein Befehl auf einer Adresse auf HDD0 gerichtet ist, kann das Adressabbildungseinrichtungsprogramm 41 einfach den Versatz zu der Adresse in dem zweiten Adresssatz hinzufügen, um die entsprechende Adresse des ersten Adresssatzes zu erhalten.
  • Es ist offensichtlich, dass mehrere Partitionen als separate virtuelle Laufwerke identifiziert werden können. Es kann angenommen werden, dass ein altes Betriebssystem in einer GPT-Partition installiert ist, Diagnosetools in einer anderen GPT-Partition und die Ergebnisse eines Diagnoseprozesses in eine dritte GPT-Partition geschrieben werden, alle definiert als separate virtuelle Laufwerke. Obwohl die vorliegende Erfindung Bezug nehmend auf herkömmliche Festplattenlaufwerke erörtert wurde, wird darauf hingewiesen, dass die Erfindung an jeglichen Datenspeicherlaufwerkstyp anwendbar ist, wo es erwünscht ist, ein nichtkompatibles altes Betriebssystem zu booten. Es ist ebenfalls offensichtlich, dass der Partitionstyp jeglicher andere Typ sein kann, wie er z.B. für den vorgeschlagenen GPT-Partitionstyp 3C0A9D61-3FOA-11D5-9326-3833C4CA9838 geeignet ist, der das Bild eines alten Diskettenlaufwerks ist. Wenn die GPT-Partition von diesem Partitionstyp ist, wird eine virtuelle Diskette 00H erzeugt, und der BIOS-Identifizierer für ein physisches Diskettenlaufwerk sollte erneut auf 01H und folgende abgebildet werden.
  • Obwohl die vorliegende Erfindung für nicht modifizierte, nicht-EFI-kompatible BIOS-Systeme gedacht ist, ist offensichtlich, dass, wenn das BIOS EFI-kompatibel ist, die vorliegende Erfindung trotzdem verwendet werden kann und ermöglicht, dass nicht-EFI-kompatible Betriebssysteme laufen, wie hierin vorangehend beschrieben wurde. Gleichzeitig funktionieren die EFI-kompatiblen Betriebssysteme auf demselben Laufwerk oder der Platte normal unter Verwendung von standardmäßigen EFI-Ladeeinrichtungen, gespeichert in der GPT-Systempartition.
  • Die vorliegende Erfindung erzeugt somit ein virtuelles Laufwerk auf der BIOS-Schnittstellenebene, wobei der Inhalt des virtuellen Laufwerks die Inhalte der GPT-Partition sind, aus der gebootet werden soll. Das virtuelle Laufwerk erfordert keine Änderung an dem Betriebssystemkern oder dem BIOS und ist tatsächlich unabhängig von dem Betriebssystem. Dies ermöglicht, dass alte Systeme gemeinsam mit EFI-kompatiblen Datenspeicherlaufwerken existieren und den Übergang zu EFI-kompatiblen Systemen erleichtert.
  • Bei der vorliegenden Spezifikation bedeutet „aufweisen" „umfassen oder bestehend aus" und „aufweisend" bedeutet „umfassend oder bestehend aus".
  • Die Merkmale, die in der vorangehenden Beschreibung oder den nachfolgenden Ansprüchen oder den beiliegenden Zeichnungen offenbart sind, ausgedrückt in ihren spezifischen Formen oder im Hinblick auf eine Einrichtung zum Ausführen der offenbarten Funktion, oder eines Verfahrens oder Prozesses zum Erreichen des offenbarten Ergebnisses, nach Bedarf, können getrennt oder in jeglicher Kombination solcher Merkmale zum Realisieren der Erfindung in unterschiedlichen Formen derselben verwendet werden.

Claims (15)

  1. Ein Betriebssystemselektor (11a), der wirksam ist, um ein nicht-EFI-kompatibles Betriebssystem zu booten, wo die nicht-EFI-kompatiblen Betriebssystemdateien in einer Partition eines Datenspeicherlaufwerks (45) gespeichert sind, wobei das Datenspeicherlaufwerk (45) zumindest eine alte Partition (12) aufweist, wobei das Datenspeicherlaufwerk (45) einen ersten Adresssatz aufweist, dadurch gekennzeichnet, dass die Partition eine GPT-Partition (19) ist, und ein GPT-verwalteter Bereich (15), der die GPT-Partition (19) aufweist, in der alten Partition (12) verschachtelt ist, wobei der Betriebssystemselektor (11a) wirksam ist zum; Lesen einer GUID-Partitionstabelle (16), um Adressinformationen zu identifizieren, die sich auf die GPT-Partition (19) beziehen, Definieren der GPT-Partition (19) als ein virtuelles Datenspeicherlaufwerk auf der BIOS-Schnittstellenebene, das einen zweiten Adresssatz aufweist, Rufen einer Adressabbildungseinrichtung (41) und Weiterleiten der Adressinformationen zu der Adressabbildungseinrichtung (41), um zu ermöglichen, dass die Adressabbildungseinrichtung (41) Befehle zwischen dem ersten Adresssatz und dem zweiten Adresssatz abbildet, Lesen einer weiteren alten Master-Boot-Aufzeichnung (22), die in der GPT-Partition (19) gespeichert ist, und Ausführen eines Ladeschrittes, um das nicht-EFI-kompatible Betriebssystem zu booten.
  2. Ein Betriebssystemselektor (11a) gemäß Anspruch 1, der wirksam ist, um das Datenspeicherlaufwerk (45) zu lesen, um bootbare alte Partitionen und bootbare GPT-Partitionen zu identifizieren, und um ein Bootmenü gemäß den identifizierten bootbaren Partitionen zu erzeugen.
  3. Ein Betriebssystemselektor (11a) gemäß Anspruch 1 oder Anspruch 2, wobei der Betriebssystemselektor (11a) einen Bootcode aufweist, der in einer alten Master-Boot-Aufzeichnung (11) des Datenspeicherlaufwerks (45) gespeichert ist.
  4. Ein Betriebssystemselektor (11a) gemäß einem der vorangehenden Ansprüche, bei dem der Ladeschritt (39) das Laden des alten Bootcodes in einen Speicher und das Weiterleiten der Steuerung zu dem alten Bootcode aufweist.
  5. Ein Betriebssystemselektor (11a) gemäß einem der vorangehenden Ansprüche, bei dem die Adressabbildungseinrichtung (41) wirksam ist, um Befehle zu verhaken, um auf das Datenspeicherlaufwerk (45) zuzugreifen, und bei dem der Befehl eine Adresse in dem zweiten Adresssatz aufweist, um die Adresse auf die entsprechende Adresse des ersten Adresssatzes abzubilden.
  6. Ein Betriebssystemselektor (11a) gemäß Anspruch 5, bei dem die Adressabbildungseinrichtung (41) ein Programm ist, das resident bleibt wenn es abgebrochen wird.
  7. Ein Betriebssystemselektor (11a) gemäß einem der vorangehenden Ansprüche, bei dem der GPT-Partitionstyp einen Partitionstyp aufweist, der das Bild eines alten Festplattenlaufwerks ist, und bei dem der Schritt des Definierens der GPT-Partition (19) als ein Datenspeicherlaufwerk den Schritt des Einstellens einer BIOS-Laufwerk-Identifikationsnummer gemäß der GPT-Partition auf 80h aufweist.
  8. Ein Betriebssystemselektor (11a) gemäß einem der Ansprüche 1 bis 7, bei dem die GPT-Partition (19) einen Partitionstyp aufweist, der das Bild einer alten Diskette ist, und bei dem der Schritt des Definierens der GPT-Partition (19) als ein Datenspeicherlaufwerk den Schritt des Einstellens einer BIOS-Laufwerk-Identifikationsnummer gemäß der GPT-Partition auf Oh aufweist.
  9. Ein Betriebssystemselektor (11a) gemäß Anspruch 7 oder Anspruch 8, bei dem die Adressabbildungseinrichtung (41) wirksam ist, um den Schritt des Definierens der GPT-Partition als eine virtuelle Datenspeichervorrichtung auf der BIOS-Schnittstellenebene auszuführen.
  10. Ein Datenspeicherlaufwerk (45), das einen Datenspeicherbereich (10) aufweist, wobei der Datenspeicherbereich (10) eine Master-Boot-Aufzeichnung (11), die einen Betriebssystemselektor (11a) gemäß einem der vorangegangenen, Ansprüche aufweist, und einen GPT-verwalteten Bereich (15) aufweist, der zumindest eine GPT-Partition (19) aufweist, die Dateien eines nicht-EFI-kompatiblen Betriebssystems aufweist.
  11. Ein Datenspeicherlaufwerk gemäß Anspruch 10, bei dem die GPT-Partition (19) eine weitere alte Master-Boot-Aufzeichnung (22) aufweist.
  12. Ein Datenspeicherlaufwerk gemäß Anspruch 10 oder Anspruch 11, bei dem der Datenspeicherbereich (10) zumindest eine alte Partition (12) aufweist.
  13. Ein Datenspeicherlaufwerk (45) gemäß einem der Ansprüche 10 bis 12, das ein Festplattenlaufwerk aufweist.
  14. Ein Computer, der ein Datenspeicherlaufwerk gemäß einem der Ansprüche 10 bis 13 und ein BIOS aufweist, das wirksam ist, um die alte Master-Boot-Aufzeichnung (11) zu lesen und den Betriebssystemselektor (11a) zu laden.
  15. Ein Verfahren zum Booten eines nicht-EFI-kompatiblen Betriebssystems, wo die nicht-EFI-kompatiblen Betriebssystemdateien in einer Partition eines Datenspeicherlaufwerks (45) gespeichert sind, wobei das Datenspeicherlaufwerk (45) zumindest eine alte Partition (12) aufweist, wobei das Datenspeicherlaufwerk (45) einen ersten Adresssatz aufweist, dadurch gekennzeichnet, dass die Partition eine GPT-Partition (19) ist, und ein GPT-verwalteter Bereich (15), der die GPT-Partition (19) aufweist, in dem alten Abschnitt (12) verschachtelt ist, wobei das Verfahren folgende Schritte aufweist; Lesen einer GUID-Partitionstabelle (16), um Adressinformationen zu identifizieren, die sich auf die GPT-Partition (19) beziehen, Definieren der GPT-Partition (19) als ein virtuelles Datenspeicherlaufwerk auf der BIOS-Schnittstellenebene, das einen zweiten Adresssatz aufweist, Rufen einer Adressabbildungseinrichtung (41) und Weiterleiten der Adressinformationen zu der Adressabbildungseinrichtung (41), um zu ermöglichen, dass die Adressabbildungseinrichtung (41) Befehle zwischen dem ersten Adresssatz und dem zweiten Adresssatz abbildet, Lesen einer weiteren alten Master-Boot-Aufzeichnung (22), die in der GPT-Partition (19) gespeichert ist, und Ausführen eines Ladeschrittes, um das nicht-EFI-kompatible Betriebssystem zu booten.
DE60210434T 2002-06-28 2002-06-28 Betriebssystemselektor und Datenplattenspeicher Expired - Fee Related DE60210434T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP02354103A EP1378830B1 (de) 2002-06-28 2002-06-28 Betriebssystemselecktor und Datenplattenspeicher

Publications (2)

Publication Number Publication Date
DE60210434D1 DE60210434D1 (de) 2006-05-18
DE60210434T2 true DE60210434T2 (de) 2006-09-28

Family

ID=29719787

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60210434T Expired - Fee Related DE60210434T2 (de) 2002-06-28 2002-06-28 Betriebssystemselektor und Datenplattenspeicher

Country Status (4)

Country Link
US (1) US6934833B2 (de)
EP (1) EP1378830B1 (de)
AT (1) ATE322717T1 (de)
DE (1) DE60210434T2 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030172228A1 (en) * 2002-03-07 2003-09-11 International Business Machines Corporation Method and system for extending a hardfile partition table
US7065627B2 (en) * 2002-03-25 2006-06-20 International Business Machines Corporation Method and system for providing an event driven image for a boot record
US7032107B2 (en) * 2002-10-30 2006-04-18 Symantec Corporation Virtual partition for recording and restoring computer data files
EP1503284A1 (de) * 2003-08-01 2005-02-02 Hewlett-Packard Development Company, L.P. Datenverarbeitungssystem und Verfahren
US7143280B2 (en) * 2003-09-30 2006-11-28 Intel Corporation Methods and apparatus to provide conditional legacy support through a compatibility support module stored on a secure area or network
WO2006069538A1 (fr) * 2004-12-31 2006-07-06 Juhang Zhong Systeme de traitement de donnees avec pluralite de sous-systemes et procede correspondant
TWI264673B (en) * 2005-06-27 2006-10-21 Lite On Technology Corp Methods and computers for presenting graphical user interface during a boot operation
TWI277905B (en) * 2005-08-03 2007-04-01 Via Tech Inc Boot method and computer utilizing the same
US7716465B2 (en) * 2005-11-14 2010-05-11 Intel Corporation Method and apparatus for maintaining a partition when booting another partition while an address line is disabled
US7418586B2 (en) * 2005-12-05 2008-08-26 Intel Corporation Method and apparatus for assigning devices to a partition
US7693811B2 (en) 2006-02-28 2010-04-06 International Business Machines Corporation Generating unique identifiers for logical partitions
US7610481B2 (en) 2006-04-19 2009-10-27 Intel Corporation Method and apparatus to support independent systems in partitions of a processing system
US7797555B2 (en) * 2006-05-12 2010-09-14 Intel Corporation Method and apparatus for managing power from a sequestered partition of a processing system
US20080147933A1 (en) * 2006-12-19 2008-06-19 Kwok-Yan Leung Dual-Channel Network Storage Management Device And Method
US20080162916A1 (en) * 2006-12-31 2008-07-03 Sandisk Corp. Portable Multi-Platform Booting
KR101120956B1 (ko) 2006-12-31 2012-03-05 쌘디스크 코포레이션 휴대용 멀티-플랫폼 부팅시스템과 아키텍쳐
US7925875B2 (en) * 2006-12-31 2011-04-12 Sandisk Corporation Systems and methods for identifying and booting a computer architecture
JP5048526B2 (ja) * 2008-01-10 2012-10-17 株式会社日立製作所 計算機システム及びその計算機システムへのレガシーブート方法
JP5316432B2 (ja) * 2010-01-19 2013-10-16 富士通株式会社 ネットワークコントローラの制御方法、プログラム及び情報処理装置
US8499142B1 (en) * 2010-07-22 2013-07-30 American Megatrends, Inc. UEFI boot loader for loading non-UEFI compliant operating systems
US8468334B1 (en) 2011-01-28 2013-06-18 American Megatrends, Inc. Efficient initial RAM disk creation
KR101805627B1 (ko) * 2011-11-28 2017-12-08 삼성전자주식회사 컴퓨터 시스템의 부팅 제어 방법 및 이를 수행하는 부팅 제어 장치
WO2014091629A1 (ja) * 2012-12-14 2014-06-19 富士通株式会社 記憶装置の管理プログラム、電子装置及び記憶装置の管理方法
US9411605B2 (en) * 2013-08-29 2016-08-09 Samsung Electronics Co., Ltd. Device-less and system agnostic unified extensible firmware interface (UEFI) driver
CN105446758A (zh) * 2014-08-29 2016-03-30 昆达电脑科技(昆山)有限公司 安装操作系统的方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5887163A (en) * 1997-04-04 1999-03-23 Compaq Computer Corporation Method and apparatus for providing dual booting capabilities to a computer system
WO2000016193A1 (en) * 1998-09-11 2000-03-23 Powerquest Corporation Managing multiple operating systems on a single computer
US6615365B1 (en) * 2000-03-11 2003-09-02 Powerquest Corporation Storing a computer disk image within an imaged partition
US6711591B1 (en) * 2000-07-13 2004-03-23 International Business Machines Corporation Top-down control of multiple layer aggregation logical volume management data and boot record
US6862681B2 (en) * 2001-07-16 2005-03-01 International Business Machines Corporation Method and system for master boot record recovery
EP1329800A1 (de) * 2002-01-22 2003-07-23 Hewlett-Packard Company Datenspeichermedium
US7320052B2 (en) * 2003-02-10 2008-01-15 Intel Corporation Methods and apparatus for providing seamless file system encryption and redundant array of independent disks from a pre-boot environment into a firmware interface aware operating system
US20040255106A1 (en) * 2003-06-10 2004-12-16 Rothman Michael A. Recovery of operating system configuration data by firmware of computer system

Also Published As

Publication number Publication date
US20040068645A1 (en) 2004-04-08
DE60210434D1 (de) 2006-05-18
EP1378830B1 (de) 2006-04-05
ATE322717T1 (de) 2006-04-15
US6934833B2 (en) 2005-08-23
EP1378830A1 (de) 2004-01-07

Similar Documents

Publication Publication Date Title
DE60210434T2 (de) Betriebssystemselektor und Datenplattenspeicher
DE69534867T2 (de) Verfahren und System zur Lieferung geschützter Gerätetreiber
DE69627814T2 (de) System zum bereitstellen eines bios für den hauptrechner
DE10297281B4 (de) Verfahren zum elementaren Aktualisieren einer Vielzahl von Dateien
DE60037606T2 (de) Rechner mit urladungsfähigem sicherem Programm
DE10003108B4 (de) Verfahren und Computersystem zum Durchführen einer Softwareinstallation
DE10393920B4 (de) Verfahren und Systeme zur Steuerung virtueller Maschinen
DE4026912A1 (de) Computersystem
KR101121641B1 (ko) 시스템 동작 제어 장치 및 방법
DE60018807T2 (de) Verfahren und vorrichtung zur wiederherstellung der konfiguration eines rechners
DE4214184C2 (de) Computersystem mit einem nicht-flüchtigen Speicher und Verfahren zu dessen Aktualisierung
DE60006779T2 (de) Verfahren zum schreiben eines geänderten bios codes in den rompeicherchip einer hostschnittstelle
DE102007048920B4 (de) System und Verfahren zum Kommunizieren von Informationen zwischen einer Mehrzahl von Informationsverarbeitungssystemen
DE102005019842B4 (de) System und Verfahren zum sequentiellen Schreiben von Daten in einen Flash-Speicher
DE10393859B4 (de) Entkoppelter Hardwarekonfigurationsmanager
DE4026911A1 (de) Computersystem
DE102005022893B3 (de) Verfahren zum Zugreifen auf Speicherbereiche einer Speicherkarte durch eine anfordernde Anwendung und Speicherkarte
DE102004049454B4 (de) Verfahren zur Benutzung von Featuremarkern zur Bestimmung der Kompatibilität zwischen Bios-Revisionen und installierter Hardware bei der Flash-Aktualisierung
DE19852250A1 (de) System und Verfahren zum Ändern der Zuordnung einer Partition zu einem logischen Laufwerk in einem Computerspeicher
DE112012006665T5 (de) Wählbare Grafik-Controller zur Ausgabenanzeige
DE102005037855A1 (de) System und Verfahren zum Speichern von Benutzerdaten in einer Partitionsdatei oder zum Verwenden einer Partitionsdatei, die Benutzerdaten enthält
DE112012004893T5 (de) Implementieren eines Software-Abbildes auf mehreren Zielen unter Verwendung einer Datenstromtechnik
DE102004061597A1 (de) Betriebssystem, das den Lauf von Echtzeitprogrammen ermöglicht, Steuerungsverfahren hierfür sowie Verfahren zum Laden von DLLs
DE19956525B4 (de) Computersystem und Verfahren zum Vorbereiten eines computerlesbaren Mediums
DE102008015272B4 (de) Speichervorrichtung und Verfahren zum Schützen ihrer Partition

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee