Booten

Ein Flussdiagramm eines Computerboots

Im Computer, Booten ist der Prozess des Startens a Computer wie initiiert über Hardware- wie ein Knopf oder durch a Software Befehl. Nach dem Einschalten eines Computers Zentrale Verarbeitungseinheit (CPU) hat keine Software in seiner HaupterinnerungDaher muss ein Vorgang Software in den Speicher laden, bevor sie ausgeführt werden kann. Dies kann durch Hardware oder erfolgen Firmware in der CPU oder durch einen separaten Prozessor im Computersystem.

Ein Computer neu zu starten wird auch genannt Neustart, was "hart" sein kann, z. Nachdem die elektrische Leistung an die CPU von AUS auf eingeschaltet ist, oder "weich", wobei die Leistung nicht geschnitten wird. Auf einigen Systemen kann ein Soft -Stiefel optional klargestellt werden RAM bis Null. Sowohl Hard- als auch Softbooting können von Hardware wie einer Taste gedrückt oder mit einem Softwarebefehl initiiert werden. Booten ist abgeschlossen, wenn der Operative Laufzeitsystem, normalerweise die Betriebssystem und einige Anwendungen,[NB 1] wird erreicht.

Der Prozess der Rückgabe eines Computers aus einem Zustand von schlafen (Suspension) beinhaltet nicht das Booten; restaurieren es jedoch aus einem Zustand von Winterschlaf tut. Minimal, einige eingebettete Systeme Erfordern Sie keine merkliche Startsequenz, um mit der Funktion zu beginnen, und kann bei Einschalten einfach Betriebsprogramme ausführen, die in ROM gespeichert sind. Alle Computersysteme sind Staatsmaschinenund ein Neustart kann die einzige Methode sein, die aus einem unbeabsichtigten, gesperrten Zustand zu einem bestimmten Nullstaat zurückkehrt.

Zusätzlich zum Laden eines Betriebssystems oder eines eigenständigen Dienstprogramms kann der Boot-Prozess auch ein Speicher-Dump-Programm für die Diagnose von Problemen in einem Betriebssystem laden.

Stiefel ist kurz für Bootstrap[1][2] oder Bootstrap -Last und leitet sich aus dem Ausdruck ab sich durch die Bootstraps hochzuziehen.[3][4] Die Nutzung macht auf die Anforderung aufmerksam, dass, wenn die meisten Software von anderen auf dem Computer bereits ausgeführten Software auf einen Computer geladen wird, ein Mechanismus vorhanden ist, um die anfängliche Software auf den Computer zu laden.[5] Frühe Computer verwendeten eine Vielzahl von Ad-hoc-Methoden, um ein kleines Programm in den Speicher zu bringen, um dieses Problem zu lösen. Die Erfindung von Nur-Lese-Speicher (ROM) verschiedener Typen lösten dieses Paradoxon, indem Computer mit einem Startprogramm versendet werden konnten, das nicht gelöscht werden konnte. Das Wachstum der Kapazität von ROM hat es immer aufwändigerer Startverfahren ermöglicht.

Geschichte

Switches und Kabel, die zum Programmieren verwendet werden Eniac (1946)

Es stehen viele verschiedene Methoden zur Verfügung, um ein kurzes Erstprogramm in einen Computer zu laden. Diese Methoden reichen von einfachen, physischen Eingaben bis hin zu abnehmbaren Medien, die komplexere Programme aufnehmen können.

Beispiele vor integrierter Kreislauf

Frühe Computer

Frühe Computer in den 1940er und 1950er Jahren waren einzigartige Ingenieurbemühungen, die Wochen dauern konnten, und das Programmieren war eines von vielen Problemen, die gelöst werden mussten. Ein früher Computer, Eniac, hatte kein Programm im Speicher gespeichert, wurde jedoch für jedes Problem durch eine Konfiguration von Verbindungskabeln eingerichtet. Bootstrapping galt nicht für Eniac, dessen Hardwarekonfiguration zur Lösung von Problemen bereit war, sobald die Stromversorgung angewendet wurde.

Das Edsac System, der zu erstellung zu erbaute zweite Speicherprogramm-Computer Schrittschalter Um ein festes Programm in den Speicher zu übertragen, wenn die Starttaste gedrückt wurde. Das auf diesem Gerät gespeicherte Programm, das David Wheeler Ende 1948 abgeschlossen, weitere Anweisungen von geladen von Stempelband Und dann hingerichtete sie.[6][7]

Erste kommerzielle Computer

Die ersten programmierbaren Computer für den kommerziellen Verkauf, wie die Univac i und die IBM 701[8] Zu den enthaltenen Funktionen, um ihren Betrieb zu vereinfachen. Sie enthielten in der Regel Anweisungen, die einen vollständigen Eingangs- oder Ausgangsvorgang durchführten. Die gleiche Hardware -Logik könnte verwendet werden, um den Inhalt von a zu laden Lochkarte (die typischsten) oder andere Input -Medien wie a magnetische Trommel oder MagnetbandDas enthielt ein Bootstrap -Programm durch Drücken einer einzelnen Taste. Dieses Booting -Konzept wurde für eine Vielzahl von Namen als Namen bezeichnet IBM Computer der 1950er und frühen 1960er Jahre, aber IBM verwendete den Begriff "Anfangsprogrammlast" mit dem IBM 7030 Stretch[9] und benutzte es später für ihre Mainframe -Linien, beginnend mit dem System/360 1964.

Erstprogrammlast -Ladungskarte für die IBM 1130 (1965)

Das IBM 701 Computer (1952–1956) hatte eine "Last" -Taste, die das Lesen des ersten Lesens initiierte 36-Bit Wort hinein Haupterinnerung von einer geschlagenen Karte in einem Kartenleser, ein Magnetband in a Kassettenlaufwerkoder eine magnetische Trommeleinheit, abhängig von der Position des Lastauswahlschalters. Das linke 18-Bit-Halbwort wurde dann als Anweisung ausgeführt, die normalerweise zusätzliche Wörter in das Gedächtnis einleitete.[10][11] Das geladene Boot -Programm wurde dann ausgeführt, was wiederum ein größeres Programm aus diesem Medium in den Speicher lud, ohne dass der menschliche Bediener weiterhilfe weiterhielt. Das IBM 704,[12] IBM 7090,[13] und IBM 7094[14] hatte ähnliche Mechanismen, aber mit unterschiedlichen Lasttasten für verschiedene Geräte. Der Begriff "Boot" wird seit mindestens 1958 in diesem Sinne verwendet.[15]

IBM System/3 Konsole aus den 1970er Jahren. Der Programmlastauswahlschalter ist links unten; Der Programmlastschalter ist unten rechts.

Andere IBM -Computer dieser Zeit hatten ähnliche Funktionen. Zum Beispiel die IBM 1401 System (ca. 1958) verwendete einen Kartenleser, um ein Programm von einer geschlagenen Karte zu laden. Die 80 Zeichen, die in der Lochkarte gespeichert wurden, wurden in die Speicherorte 001 bis 080 gelesen, dann würde der Computer an den Speicherort 001 verzweigen, um seine erste gespeicherte Anweisung zu lesen. Diese Anweisung war immer gleich: Verschieben Sie die Informationen in diesen ersten 80 Speicherorten in einen Montagebereich, in dem die Informationen in den Stanzkarten 2, 3, 4 und so weiter kombiniert werden konnten, um das gespeicherte Programm zu bilden. Sobald diese Informationen in den Montagebereich verschoben wurden, verzweigt sich die Maschine in eine Anweisung in Position 080 (eine Karte lesen) und die nächste Karte wurde gelesen und ihre Informationen verarbeitet.

Ein anderes Beispiel war das IBM 650 (1953), eine Dezimalmaschine, die eine Gruppe von zehn 10-Position-Schalter auf dem Bedienfeld hatte, die als Speicherwort adressierbar waren (Adresse 8000) und als Anweisung ausgeführt werden konnten. Durch das Einstellen der Schalter auf 7004000400 und das Drücken der entsprechenden Taste wird die erste Karte im Kartenleser in den Speicher (OP -Code 70) gelesen, beginnend bei der Adresse 400 und dann zu 400, um das Programm auf dieser Karte auszuführen.[16] Das IBM 7040 und 7044 Haben Sie einen ähnlichen Mechanismus, bei dem die Lastknaste die in den Eingangstasten im Vorderseite eingereichte Anweisungen ausgestellt wird, und der Kanal, der eingerichtet ist, erhält einen Befehl zum Übertragen von Daten in den Speicher ab 00100. Wenn diese Übertragung endet, springt die CPU zu 00101 an die Adresse 00101.[17]

Die Wettbewerber von IBM boten auch eine Last von Single Button -Programm an.

  • Das CDC 6600 (c. 1964) hatte a Tote Start Panel mit 144 Kippschalter; Der tote Startschalter eingegeben 12 12-Bit-Wörter aus den Kippschalter zum Speicher von peripherer Prozessor (Pp) 0 und initiierte die Lastsequenz, indem pp 0 den in den Speicher geladenen Code ausführt.[18] PP 0 lud den erforderlichen Code in seinen eigenen Speicher und initialisierte dann die anderen PPS.
  • Das GE 645 (ca. 1965) hatte eine "System-Bootload" -Taste, die beim Drücken eines der E/A-Controller dazu führte Nur-Lese-Speicher und liefern Sie einen Interrupt, um das Programm zu laufen.[19]
  • Das erste Modell der PDP-10 Hatte eine "Read in" -taste, die beim Drücken den Prozessor zurücksetzte und einen E/A-Betrieb auf einem von Switches im Bedienfeld angegebenen Gerät startete, das in einem 36-Bit ; Nach Abschluss des Lesens begann der Prozessor mit der Ausführung des Code -Leser, indem er zum letzten Wort gelesen wurde.[20]

Eine bemerkenswerte Variation davon findet sich auf dem Burroughs B1700 wo es weder einen Bootstrap -ROM noch eine fest verdrahtete IPL -Operation gibt. Nach dem Zurücksetzen des Systems liest es und führt Mikroinstruktionen nacheinander aus einem Kassettenbandantrieb aus, das auf der Frontplatte montiert ist. Dadurch wird ein Bootloader im RAM eingerichtet, der dann ausgeführt wird.[21] Da dies jedoch nur wenige Annahmen über das System macht, kann es gleich gut zum Laden diagnostischer Bänder (Wartungstestroutine) verwendet werden, wodurch ein verständlicher Code auf dem angezeigt wird Frontblende Auch bei groben CPU -Versagen.[21]

IBM System/360 und Nachfolger

In dem IBM System/360 und seine Nachfolger, einschließlich des Stroms Z/Architektur Maschinen, der Startvorgang ist als bekannt als Erstprogrammlast (IPL).

IBM prägte diesen Begriff für die 7030 (Stretch),[9] Wiederbelebte es für das Design des Systems/360 und nutzt es heute in diesen Umgebungen.[22] Im System/360 -Prozessoren wird vom Computerbetreiber ein IPL durch Auswahl der drei hexadezimalen Ziffern -Geräteadresse (CUU; C = E/A -Kanaladresse, UU = Steuereinheit und Geräteadresse ausgelöst (CUU; C = E/A -Kanaladresse[NB 2]) gefolgt von drücken BELASTUNG Taste. Im oberen Ende System/360 Models, die meisten[NB 3] System/370 und einige spätere Systeme, die Funktionen der Switches und die Lastknaste werden häufig auf dem Bildschirm einer Grafikkonsole simuliert, oft[NB 4] ein IBM 2250-ähnliches Gerät oder ein IBM 3270-ähnliches Gerät. Zum Beispiel führt die Tastatursequenz 0-7-X (Null, sieben und x, in dieser Reihenfolge) auf dem System/370-Modell 158 zu einem IPL der Geräteadresse, das in den Eingabebereich eingeführt wurde. Das Amdahl 470 V/6 und verwandte CPUs unterstützten vier hexadezimale Ziffern auf jenen CPUs, bei denen die optionale zweite Kanaleinheit für insgesamt 32 Kanäle installiert war. Später würde IBM auch mehr als 16 Kanäle unterstützen.

Die IPL -Funktion im System/360 und seine Nachfolger zuvor Ibm zund seine Kompatibeln wie Amdahls lesen 24 Bytes eines von einem Bediener festgelegten Geräts in den Hauptspeicher, beginnend bei der realen Adresse Null. Die zweite und dritte Gruppen von acht Bytes werden als behandelt Kanalbefehlswörter (CCWS), um das Startprogramm fortzusetzen (der erste CCW wird immer von der CPU simuliert und besteht aus einem Lese -IPL -Befehl. 02H, mit Befehlsketten und Unterdrückung der falschen Länge, die angezeigt wird). Wenn die E/A -Kanalbefehle abgeschlossen sind, wird die erste Gruppe von acht Bytes in den Prozessor geladen Programmstatuswort (PSW) und das Startup -Programm beginnt die Ausführung an dem von dieser PSW bezeichneten Ort.[22] Das IPL -Gerät ist normalerweise ein Festplattenlaufwerk, daher die besondere Bedeutung des 02H Der Befehl vom Read-Typ, aber genau dieselbe Prozedur wird auch verwendet, um IPL von anderen Eingabe-Typen wie Bandantrieb oder sogar Kartenlesern auf Gerätsunabhängige Weise zu iPL-Typen verwendet, wobei beispielsweise die Installation eines Betriebssystems ermöglicht werden kann Auf einem brandneuen Computer aus einem OS-anfänglichen Verteilungsmagnetband. Für Festplattencontroller die 02H Der Befehl veranlasst auch das ausgewählte Gerät zum Zylinder 0000H, Kopf 0000HSimulation eines Suchzylinders und Kopfbefehls, 07Hund um nach Datensatz zu suchen 01HSimulation eines Such -ID -Befehls, 31H; Suchen und Suchvorgänge werden nicht von Band- und Kartencontrollern simuliert, da für diese Geräteklassen ein gelesener IPL -Befehl einfach ein sequentieller Lesungsbefehl ist.

Die Festplatte, das Band oder das Kartendeck müssen ein spezielles Programm zum Laden des tatsächlichen Betriebssystems oder des eigenständigen Dienstprogramms in den Hauptspeicher enthalten. Für diesen speziellen Zweck wird der "IPL-Text" vom eigenständigen DASDI auf der Festplatte platziert (Direktzugriffsspeichergerät Initialisierung) Programm oder ein äquivalentes Programm, das unter einem Betriebssystem ausgeführt wird, z. B. Ickdsf, aber IPL-möglicher Bänder und Kartendecks werden normalerweise bereits mit diesem "IPL-Text" verteilt.

IBM führte einige evolutionäre Änderungen im IPL-Prozess ein, änderte einige Details für System/370 Extended Architecture (S/370-XA) und später und fügte eine neue Art von IPL für Z/Architektur hinzu.

Minicomputer

PDP-8/E Frontplatte zeigt die Switches, die zum Laden des Bootstrap-Programms verwendet werden

MinicomputerBeginnend mit dem Digital Equipment Corporation (Dez.) PDP-5 und PDP-8 (1965) vereinfachtes Design mithilfe der CPU zur Unterstützung der Eingabe- und Ausgangsvorgänge. Dies spart den Kosten, machte das Booten jedoch komplizierter als das Drücken einer einzelnen Taste. Minicomputer hatten normalerweise einen Weg dazu einschalten kurze Programme durch Manipulation einer Reihe von Schalter auf dem Frontblende. Seit der frühen Minicomputer verwendeten Magnetkerngedächtnis, was seine Informationen nicht verlor, als die Macht ausgeschaltet war, würden diese Bootstrap -Lader bestehen, wenn sie nicht gelöscht würden. Das Löschen ereignete sich manchmal versehentlich, wenn ein Programmfehler eine Schleife verursachte, die den gesamten Speicher überschrieben hat.

Andere Minicomputer mit einer solchen einfachen Form des Bootens sind Hewlett-Packard's HP 2100 Serie (Mitte der 1960er Jahre), das Original Daten General Nova (1969) und Dec's PDP-4 (1962) und PDP-11 (1970).

Da die E/A -Vorgänge für einen Lesevorgang auf einem Minicomputer -E/A -Gerät für verschiedene Gerätecontroller in der Regel unterschiedlich waren, wurden für verschiedene Geräte verschiedene Bootstrap -Programme benötigt.

Dec später fügte später 1971 ein optional hinzu Diodenmatrix Nur-Lese-Speicher für den PDP-11, der ein Bootstrap-Programm von bis zu 32 Wörtern (64 Bytes) speichert. Es bestand aus einer gedruckten Schaltungskarte, der M792, die in die angeschlossen war Unibus und hielt einen 32 -mal 16 -Array von Halbleiterdioden. Bei allen 512 Dioden enthielt das Gedächtnis alle "Eins" -Bits; Die Karte wurde programmiert, indem jede Diode abgeschnitten wurde, deren Bit "Null" sein sollte. DEC verkaufte auch Versionen der Karte, der BM792-YX-Serie, die für viele Standardeingangsgeräte vorprogrammiert wurde, indem sie einfach die nicht benötigten Dioden weglassen.[23][24]

Nach dem älteren Ansatz umso früher PDP-1 hat einen Hardware -Lader, so dass ein Bediener nur den "Lastschalter" drücken muss, um die zu unterweisen Papier Klebeband Leser laden ein Programm direkt in den Kernspeicher. Das PDP-7,[25] PDP-9,[26] und PDP-15[27] Nachfolger des PDP-4 verfügen über eine zusätzliche Lese-In-Taste, um ein Programm aus Papierband zu lesen und darauf zu springen. Die Daten allgemein Supernova Verwendete Frontplattenschalter, damit der Computer Anweisungen automatisch in den Speicher aus einem von den Datenschaltern des Frontfelds angegebenen Gerät lädt und dann zu geladenem Code springt.[28]

Frühe Beispiele für Minicomputer -Bootloader

In einem Minicomputer mit einem Papierbandleser wurde das erste Programm, das im Startvorgang ausgeführt wird, der Bootloader, entweder im Startelader der zweiten Stufe (oft als a genannt Binärlader) das könnte Papierband mit lesen Überprüfung oder das Betriebssystem von einem Außenspeichermedium. Pseudocode Für den Bootloader ist möglicherweise so einfach wie die folgenden acht Anweisungen:

  1. Stellen Sie das P -Register auf 9 ein
  2. Überprüfen Sie die Papierbandleser bereit
  3. Wenn nicht bereit, springen Sie zu 2
  4. Lesen Sie ein Byte vom Papierbandleser zum Akkumulator
  5. Speichern der Akkumulator, um in P -Register zu adressieren
  6. Wenn Ende des Bandes auf 9 springen
  7. Inkrementieren Sie das P -Register
  8. Springen zu 2

Ein verwandtes Beispiel basiert auf einem Lader für einen Minicomputer der Nicolet Instrument Corporation aus den 1970er Jahren unter Verwendung der Papierklebeband-Leser-Punch-Einheit auf einem Teletyp -Modell 33 ASR Fernschreiber. Die Bytes seines Laders der zweiten Stufe werden in umgekehrter Reihenfolge aus Papierband gelesen.

  1. Stellen Sie das P -Register auf 106 ein
  2. Überprüfen Sie die Papierbandleser bereit
  3. Wenn nicht bereit, springen Sie zu 2
  4. Lesen Sie ein Byte vom Papierbandleser zum Akkumulator
  5. Speichern der Akkumulator, um in P -Register zu adressieren
  6. Verringern Sie das P -Register
  7. Springen zu 2

Die Länge des Laders der zweiten Stufe ist so, dass der endgültige Byte Standort 7 überschreibt. Nach der Ausführung der Anweisung in Position 6 startet der Standort 7 die Ausführung des Laders der zweiten Stufe. Der Lader der zweiten Stufe wartet dann darauf, dass das viel längere Klebeband, das das Betriebssystem enthält, in den Klebebandleser platziert wird. Der Unterschied zwischen dem Bootloader und dem Loader der zweiten Stufe besteht darin, Fehler bei der Überprüfung des Codes zum Lesen von Papierklebeband zu fangen, ein häufiges Auftreten mit relativ kostengünstigen, "Teil-Time-Duty" -Hardware, wie z. B. das Teletype-Modell 33 ASR. (Friden Flexowriters waren weitaus zuverlässiger, aber auch vergleichsweise kostspielig.)

Booten der ersten Mikrocomputer

Die frühesten Mikrocomputer wie die Altair 8800 (1975 zuerst veröffentlicht) und eine noch frühere, ähnliche Maschine (basierend auf der Intel 8008 -CPU) hatte keine Bootstrapping -Hardware als solche.[29] Als die CPU gestartet wurde, sah der Speicher, der ausführbarer Code enthielt, der nur binäre Nullen enthielt - das Memory wurde durch Zurücksetzen beim Auftrieb gelöscht. Die vorderen Felder dieser Maschinen trugen zum Eingeben von Adressen und Daten, einem Schalter pro Bit des Computerspeicherworts und Adressbussen. Einfache Ergänzungen zur Hardware ermöglichten es, dass ein Speicherort zu einem Zeitpunkt von diesen Schalter geladen wird, um Bootstrap -Code zu speichern. In der Zwischenzeit wurde der CPU davon abgehalten, Speicherinhalt auszuführen. Nach dem richtigen Laden wurde die CPU aktiviert, um den Bootstrapping -Code auszuführen. Dieser Prozess, ähnlich wie bei mehreren früheren Minicomputern, war mühsam und musste fehlerfrei sein.[30]

Schreibgeschützte integrierter Speicher-Speicher-Ära

Ein Intel 2708 Eprom "Chip" auf einer Leiterplatte

Die Einführung der integrierten Schaltung Nur-Lese-Speicher (ROM) mit seinen vielen Varianten, einschließlich Maskenprogrammierte ROMs, Programmierbare ROMs (ABSCHLUSSBALL), löschbare programmierbare ROMs (Eprom) und Flash-Speicher, reduzierte die physische Größe und die Kosten von ROM. Dies erlaubte Firmware Bootsprogramme, die als Teil des Computers aufgenommen werden sollen.

Minicomputer

Die Daten allgemein Nova 1200 (1970) und Nova 800 (1971) hatte einen Programmlastschalter, der in Kombination mit Optionen, die zwei ROM -Chips lieferten, ein Programm in den Hauptspeicher aus diesen ROM -Chips lud und darauf sprang.[28] Die Digital Equipment Corporation führte den integrierten Kreislauf-ROM-basierte BM873 (1974) ein.[31] M9301 (1977),[32] M9312 (1978),[33] Rev11-A und Rev11-C,[34] MRV11-C,[35] und MRV11-D[36] ROM Memories, alles nutzbar als Bootstrap ROMS. Die PDP-11/34 (1976),[37] PDP-11/60 (1977),[38] PDP-11/24 (1979),[39] Die meisten späteren Modelle enthalten Boot -ROM -Module.

Ein italienischer Telefon -Schaltcomputer namens "Gruppi Speciali", der 1975 von 1975 patentiert wurde Alberto Ciaramella, ein Forscher bei Cselt,[40] enthalten ein (externes) ROM. Gruppi Speciali war ab 1975 ein vollständig einzelner Button-Maschinenmaschinen, der in das Betriebssystem aus einem ROM-Speicher aus Halbleitern, nicht aus Ferritkernen, in den ROM-Speicher bot. Obwohl das ROM-Gerät aufgrund des Designs der Maschine nicht nativ in den Computer von Gruppi Speciali eingebettet war ), z.B. Die PDP-11. Das Speichern des Zustands der Maschine nach dem Ausschalten war ebenfalls vorhanden, was ein weiteres kritisches Merkmal des Telefonwettbewerbs war.[41]

Einige Minicomputer und Superminicomputer Fügen Sie einen separaten Konsolenprozessor hinzu, der den Hauptprozessor startet. Der PDP-11/44 hatte eine Intel 8085 als Konsolenprozessor;[42] das VAX-11/780, das erste Mitglied von Digital's Vax Linie von 32-Bit-Superminicomputern hatte eine LSI-11-basierten Konsolenprozessor,[43] und der VAX-11/730 hatte einen 8085-basierten Konsolenprozessor.[44] Diese Konsolenprozessoren könnten den Hauptprozessor aus verschiedenen Speichergeräten starten.

Einige andere SuperMinicomputer, wie die VAX-11/750, implementieren Konsolenfunktionen, einschließlich der ersten Stufe des Bootens, in CPU-Mikrocode.[45]

Mikroprozessoren und Mikrocomputer

Normalerweise führt ein Mikroprozessor nach einem Rücksetz- oder Einschaltungszustand einen Startprozess durch, der normalerweise in Form von "Ausführung des Code beginnen, der an einer bestimmten Adresse beginnt" oder "nach einem Multibyte-Code bei suchen eine bestimmte Adresse und springen zum angegebenen Ort, um mit der Ausführung zu beginnen. " Ein System, das mit diesem Mikroprozessor erstellt wurde, hat das permanente ROM, das diese speziellen Standorte besetzt, so dass das System immer ohne Unterstützung bei der Betreiberin mit dem Betrieb beginnt. Zum Beispiel, Intel x86 Die Prozessoren beginnen immer damit, die Anweisungen ab F000: FFF0 auszuführen.[46][47] während für die MOS 6502 Der Prozessor, Initialisierung beginnt mit dem Lesen einer Zwei-Byte-Vektoradresse bei $ FFFD (MS BYTE) und $ FFFC (LS BYTE) und springt zu diesem Ort, um den Bootstrap-Code auszuführen.[48]

Apple Inc.Der erste Computer, der Apfel 1 1976 eingeführt, enthielt Prom -Chips, die die Notwendigkeit einer Frontplatte für den Kartonprozess (wie bei der Altair 8800) in einem kommerziellen Computer beseitigten. Laut Apples Anzeige verkündet es "keine Switches mehr, keine Lichter mehr ... Mit der Firmware in PROMS können Sie Programme eingeben, Anzeigen und Debuggen (alle in Hex) von der Tastatur eingeben, anzeigen und debuggen."[49]

Aufgrund der Kosten des zu der Zeit nur schreibgeschützten Speicher, die, die Apple II -Serie Startete seine Festplattenbetriebssysteme mit einer Reihe sehr kleiner inkrementeller Schritte, wobei jeder die Kontrolle über die nächste Phase des allmählich komplexeren Boot -Prozesses weitergeht. (Sehen Apple DOS: Bootloader). Da sich so wenig von dem Betriebssystem auf ROM beruhte, war die Hardware auch äußerst flexibel und unterstützte eine breite Palette von maßgeschneiderten Scheiben Kopierschutz Mechanismen. (Sehen Software Cracking: Geschichte.))

Einige Betriebssysteme, insbesondere vor 1995 Macintosh Systeme von Apfel, sind so eng mit ihrer Hardware verwoben, dass es unmöglich ist, ein anderes Betriebssystem als den Standard nativ zu starten. Dies ist das entgegengesetzte Extrem des Szenarios unter Verwendung der oben genannten Switches. Es ist sehr unflexibel, aber relativ fehlerhaft und narrensicher, solange die gesamte Hardware normal funktioniert. Eine häufige Lösung in solchen Situationen besteht darin, einen Bootlader zu entwerfen, der als Programm zum Standard -Betriebssystem gehört, das das System entführt und das alternative Betriebssystem lädt. Diese Technik wurde von Apple für seine verwendet A/UX UNIX -Implementierung und kopiert von verschiedenen Freeware -Betriebssystemen und Beos Personal Edition 5.

Einige Maschinen wie die Atari st Mikrocomputer, waren "sofortig", wobei das Betriebssystem von a ausgeführt wurde Rom. Das Abrufen des Betriebssystems aus dem Sekundär- oder Tertiärgeschäft wurde somit als eine der charakteristischen Operationen für das Bootstrapping beseitigt. Um Systemanpassungen, Zubehör und andere Support -Software automatisch geladen zu werden, wurde das Floppy -Laufwerk des Atari während des Boot -Prozesses für zusätzliche Komponenten gelesen. Es gab eine Zeitüberschreitungsverzögerung, die Zeit zum manuellen Einfügen eines Floppy -Einsatzes lieferte, während das System nach den zusätzlichen Komponenten suchte. Dies könnte durch Einfügen einer leeren Festplatte vermieden werden. Die Atari St -Hardware wurde ebenfalls entworfen, sodass der Patronensteckplatz eine native Programmausführung für Spielzwecke als Überbleibsel aus Ataris Legacy Making Electronic Games bieten konnte. durch Einfügen des Gespenst GCR Patrone mit dem Macintosh -System -ROM im Spielslot und dem Einschalten des Atari könnte das Macintosh -Betriebssystem "nativ" booten "und nicht das eigene ATARIs Tos.

Das IBM PC enthalten ROM-basierte Firmware namens the BIOS; Eine der Funktionen dieser Firmware war die Ausführung eines Einschalttest Wenn der Computer versorgt wurde, und dann Software von einem Boot -Gerät auszulesen und auszuführen. Firmware -kompatibel mit dem BIOS auf dem IBM -PC -Computer wird in verwendet IBM PC kompatibel Computers. Das Uefi wurde von Intel entwickelt, ursprünglich für Itanium-basierte Maschinen und später auch als Alternative zum BIOS in verwendet x86-basierte Maschinen, einschließlich Apple -Macs mit Intel -Prozessoren.

Unix Workstations Ursprünglich hatte firmenspezifische ROM-basierte Firmware. Sun Microsystems später entwickelt Openboot, später bekannt als offene Firmware, die a enthielt Weiter Interpreter, wobei ein Großteil der Firmware in Forth geschrieben wird. Es wurde durch die standardisiert IEEE als IEEE Standard 1275-1994; Firmware, die impliziert, dass Standard in verwendet wurde in Powerpc-basierend Macs und einige andere Powerpc-basierte Maschinen sowie Suns eigene Sparc-basierte Computer. Das Advanced RISC Computing Die Spezifikation definierte einen weiteren Firmware -Standard, der auf einigen implementiert wurde MIPS-baut und Alpha-basierte Maschinen und die SGI Visual Workstation X86-basierte Workstations.

Moderne Bootlader

Wenn ein Computer deaktiviert ist Nichtflüchtiger Gedächtnis. Wenn der Computer eingeschaltet ist, verfügt er normalerweise über kein Betriebssystem oder seinen Lader in Arbeitsspeicher (RAM). Der Computer führt zuerst ein relativ kleines Programm aus, das in gespeicherter Programm gespeichert ist Nur-Lese-Speicher (ROM und später Eeprom, Noch Blitz) zusammen mit einigen benötigten Daten, um CPU und Motherboard zu initialisieren, um zu initialisieren RAM (insbesondere auf X86 -Systemen), um auf das nichtflüchtige Gerät zuzugreifen (normalerweise Blockgerät, z.B. NAND Flash) oder Geräte, aus denen die Betriebssystemprogramme und Daten in RAM geladen werden können.

Das kleine Programm, das diese Sequenz startet Bootstrap Loader, Bootstrap oder Bootlader. Oft werden mehrstufige Bootlader verwendet, bei denen mehrere Programme zur Erhöhung der Komplexität nacheinander in einem Prozess von Kettenbelastung.

Einige frühere Computersysteme können nach Empfang eines Startsignals von einem menschlichen Bediener oder einem peripheren Gerät eine sehr kleine Anzahl fester Anweisungen an einem bestimmten Ort in den Speicher laden, mindestens eine CPU initialisieren und dann die CPU auf die Anweisungen und die Anweisungen und an die Anweisungen und die Anweisungen verweisen und angeben Starten Sie ihre Ausführung. Diese Anweisungen starten typischerweise einen Eingangsvorgang von einem peripheren Gerät (das vom Bediener ausgewählt werden kann). Andere Systeme können Hardwarebefehle direkt an periphere Geräte oder E/A -Controller senden, die einen extrem einfachen Eingangsvorgang verursachen (z. Anzahl der Bootloaderanweisungen in Speicher; Ein Abschlusssignal aus dem E/A -Gerät kann dann verwendet werden, um die Ausführung der Anweisungen durch die CPU zu starten.

Kleinere Computer verwenden häufig weniger flexible, aber automatischeren Bootladermechanismen, um sicherzustellen, dass der Computer schnell und mit einer vorbestimmten Softwarekonfiguration startet. In vielen Desktop -Computern beginnt beispielsweise der Bootstrapping -Prozess mit der in ROM enthaltenen CPU -Software (z. B. der BIOS von einem IBM PC) an einer vordefinierten Adresse (einige CPUs, einschließlich der Intel X86 -Serie sind so konzipiert, dass diese Software nach dem Zurücksetzen ohne äußere Hilfe ausgeführt werden. Diese Software enthält rudimentäre Funktionen, um nach Geräten zu suchen, Bootsektor) des vielversprechendsten Gerät Einstiegspunkt wie der Beginn des Sektors.

Bootlader können besondere Einschränkungen haben, insbesondere in der Größe; Zum Beispiel muss der Startcode auf dem IBM -PC und den Kopien in die Startcode passen Master Boot Record (Mbr) und die Partition Boot Record (PBR), was wiederum auf einen einzelnen Sektor beschränkt ist; auf der IBM System/360, die Größe ist durch das IPL -Medium begrenzt, z. B., Karte Größe, Spurgröße.

Bei Systemen mit diesen Einschränkungen ist das erste in RAM geladene Programm möglicherweise nicht ausreichend groß, um das Betriebssystem zu laden, und muss stattdessen ein weiteres, größeres Programm laden. Das erste in den RAM geladene Programm wird als Bootloader der ersten Stufe bezeichnet und das Programm, das es lädt, wird als Bootslader der zweiten Stufe bezeichnet.

Startlader der ersten Stufe

Beispiele für Bootloader der ersten Stufe (Hardware-Initialisierungsstufe) enthalten BIOS, Uefi, CORBOOT, Libreboot und Das U-Boot. Auf dem IBM PC der Bootloader in der Master Boot Record (Mbr) und die Partition Boot Record (PBR) wurde codiert, um mindestens 32 kb zu benötigen[50][51] (später auf 64 KB erweitert[52]) des Systemspeichers und verwenden Sie nur Anweisungen, die vom Original unterstützt werden 8088/8086 Prozessoren.

Bootlader der zweiten Stufe

Bootlader der zweiten Stufe (Betriebssysteminitialisierung), wie z. Gnu grub, Refind, Bootmgr, Syslinux, Ntdrl oder iboot, sind nicht selbst Betriebssysteme, sondern in der Lage, ein Betriebssystem ordnungsgemäß zu laden und die Ausführung auf sie zu übertragen. Das Betriebssystem initialisiert sich anschließend sich selbst und kann zusätzlich geladen werden Gerätetreiber. Der Bootlader der zweiten Stufe benötigt keine Treiber für seinen eigenen Betrieb, sondern kann stattdessen generische Speicherzugriffsmethoden verwenden, die von Systemfirmware wie BIOS, UEFI oder bereitgestellt werden Offene Firmware, obwohl in der Regel mit eingeschränkter Hardwarefunktionalität und niedrigerer Leistung.[53]

Viele Bootlader (wie GNU Grub, Refind, Windows's Bootmgr, Syslinux und Windows NT/2000/XPs NTLDR) können so konfiguriert werden, dass der Benutzer mehrere Startauswahlmöglichkeiten bietet. Diese Auswahlmöglichkeiten können verschiedene Betriebssysteme umfassen (für Dual oder Multi-Booting aus verschiedenen Partitionen oder Laufwerken), unterschiedliche Versionen desselben Betriebssystems (falls eine neue Version unerwartete Probleme hat), unterschiedliche Betriebssystemlastoptionen (z. Sicherheitsmodus) und einige eigenständige Programme, die ohne Betriebssystem funktionieren können, wie z. B. Speichertester (z. B.,, memTest86+), eine einfache Schale (wie in GNU Grub) oder sogar Spiele (siehe Liste der PC -Bootsspiele).[54] Einige Bootlader können auch andere Bootlader laden. Zum Beispiel lädt GRUB BOOTMGR, anstatt Windows direkt zu laden. Normalerweise wird eine Standardauswahl mit einer Zeitverzögerung vorgewählt, bei der ein Benutzer eine Taste drücken kann, um die Auswahl zu ändern. Nach dieser Verzögerung wird die Standardauswahl automatisch ausgeführt, sodass ein normaler Booten ohne Wechselwirkung auftreten kann.

Der Boot -Prozess kann als vollständig angesehen werden, wenn der Computer mit dem Benutzer interagieren kann oder das Betriebssystem in der Lage ist, Systemprogramme oder Anwendungsprogramme auszuführen.

Viele eingebettete Systeme muss sofort booten. Zum Beispiel eine Minute auf a warten digitaler Fernseher oder ein GPS -Navigationsgerät Zu Beginn ist im Allgemeinen inakzeptabel. Daher haben solche Geräte Softwaresysteme in ROM oder Flash-Speicher So kann das Gerät sofort funktionieren. Es ist wenig oder gar kein Beladung erforderlich, da die Belastung beim Herstellen des Geräts auf dem ROM vorberechnet und gespeichert werden kann.

Große und komplexe Systeme können KOTO -Verfahren haben, die in mehreren Phasen fortgesetzt werden, bis schließlich das Betriebssystem und andere Programme geladen und ausgeführt werden. Da Betriebssysteme so ausgelegt sind, als ob sie niemals starten oder anhalten würden, lädt ein Bootlader das Betriebssystem, konfigurieren sich selbst als bloßer Prozess innerhalb dieses Systems und übertragen Sie dann die Steuerung in das Betriebssystem unwiderruflich. Der Bootlader endet dann normal wie jeder andere Prozess.

Netzwerkbooting

Die meisten Computer sind auch in der Lage, über a zu booten Computernetzwerk. In diesem Szenario wird das Betriebssystem auf der Festplatte von a gespeichert Serverund bestimmte Teile davon werden mit einem einfachen Protokoll wie dem an den Client übertragen Triviales Dateiübertragungsprotokoll (TFTP). Nachdem diese Teile übertragen wurden, übernimmt das Betriebssystem die Steuerung des Booting -Vorgangs.

Wie beim Bootloader der zweiten Stufe beginnt das Netzwerk Booting mit der Verwendung generischer Netzwerkzugriffsmethoden, Ausführungsumgebung vor dem Start (PXE) Bild. Es sind keine Treiber erforderlich, aber die Systemfunktionalität ist begrenzt, bis der Betriebssystemkern und die Treiber übertragen und gestartet werden. Sobald der ROM-basierte Booting abgeschlossen ist, ist es durchaus möglich, den Start in ein Betriebssystem zu vernetzen, das selbst nicht die Netzwerkschnittstelle verwenden kann.

Personalcomputer (PC)

Boot -Geräte

Windows zu gehen bootfähiges Flash -Laufwerk, a Live USB Beispiel

Das Boot -Gerät ist das Gerät, aus dem das Betriebssystem geladen wird. Ein moderner PC Uefi oder BIOS Firmware unterstützt das Booten von verschiedenen Geräten, normalerweise ein lokaler Solid State Drive oder Festplatte über die Gpt oder Master Boot Record (MBR) auf einer solchen Fahrt oder einer Festplatte, an optisches Laufwerk (Verwendung El Torito), a USB Massenspeicher Gerät (Ftl-basierter Flash -Laufwerk, SD-Karte oder Multimedia-Kartensteckplatz, USB -Festplatten -Laufwerk, USB -optisches Disc -Laufwerk usw.) oder eine Netzwerkschnittstellenkarte (mithilfe Pxe). Zu den älteren, weniger häufigen BIOS-stiefbaren Geräten gehören Diskettenfahrten, Zip -Laufwerke, und LS-120 fährt.

In der Regel ermöglicht die Systemfirmware (UEFI oder BIOS) dem Benutzer a Startreihenfolge. Wenn die Startreihenfolge auf "zuerst das DVD -Laufwerk; zweitens das Festplattenlaufwerk" festgelegt ist, versucht die Firmware, vom DVD -Laufwerk aus zu starten, und wenn dies fehlschlägt (z. B. weil es keine DVD im Laufwerk gibt), gibt es keine DVD). Es wird versuchen, vom lokalen Festplattenlaufwerk aus zu starten.

Zum Beispiel auf einem PC mit Fenster Auf der Festplatte installiert, konnte der Benutzer die Startreihenfolge auf die oben angegebene festlegen und dann a einfügen Linux Live -CD um auszuprobieren Linux ohne ein Betriebssystem auf der Festplatte installieren zu müssen. Dies ist ein Beispiel für Dual Booten, in dem der Benutzer auswählt, welches Betriebssystem er starten soll, nachdem der Computer seine ausgeführt hat STO-On-Selbsttest (POST). In diesem Beispiel des Dual -Bootens wählt der Benutzer aus, indem er die DVD vom Computer einfügt oder entzieht Boot Manager Menü auf dem ausgewählten Gerät über die Computertastatur, um aus a zu wählen BIOS oder Uefi Boot -Menü oder beides; Das Startmenü wird normalerweise durch Drücken eingegeben F8 oder F12 Schlüssel während des Pfostens; das BIOS-Setup wird normalerweise durch Drücken eingegeben F2 oder Del Schlüssel während des Pfostens.[55][56]

Es stehen mehrere Geräte zur Verfügung, die dem Benutzer ermöglichen Schnellstiefel In eine Variante von Linux für verschiedene einfache Aufgaben wie den Internetzugang; Beispiele sind Splashtop und Breitengrad auf.[57][58][59]

Startvorgang

A Hex -Dump von Freebsd's boot0 mbr
Auszeichnung Software BIOS von 2000 während des Bootens

Zu Beginn ein IBM-kompatibler Personal Computer x86 CPU, ausgeführt in Realer Modusdie Anweisung bei Vektor zurücksetzen (die physische Speicheradresse Ffff0h auf 16-Bit-X86-Prozessoren[60] und Fffffff0h auf 32-Bit- und 64-Bit-X86-Prozessoren[61][62]), in der Regel auf die Firmware (Uefi oder BIOS) Einstiegspunkt im ROM. Dieser Speicherort enthält typischerweise einen Sprunganweis, der die Ausführung an den Ort der Firmware überträgt (Uefi oder BIOS) Startprogramm. Dieses Programm läuft a STO-On-Selbsttest (Post), um die erforderlichen Geräte wie z. B. zu überprüfen und zu initialisieren Haupterinnerung (Dram), der PCI -Bus und die PCI -Geräte (einschließlich der eingebetteten Laufen Option ROMS). Einer der am stärksten beteiligten Schritte besteht darin SPD, weiter kompliziert durch die Tatsache, dass an diesem Punkt die Erinnerung sehr begrenzt ist.

Nach der Initialisierung der erforderlichen Hardware die Firmware (Uefi oder BIOS) durchläuft eine vorkonfigurierte Liste von Nichtflüchtige Speichergeräte ("Boot -Gerätesequenz"), bis eine bootfähige findet. Ein bootfähiges MBR -Gerät ist definiert als eines, aus dem gelesen werden kann und wo die letzten beiden Bytes des ersten Sektors die enthalten Little-Endian Wort AA55H,[NB 5] als Byte -Sequenz gefunden 55H, Aah auf der Scheibe (auch als die bekannt als die MBR -Startsignatur) oder wo ansonsten festgestellt wird, dass der Code im Sektor auf x86 PCs ausführbar ist.

Sobald das BIOS ein bootfähiges Gerät gefunden hat, wird der Bootsektor in eine lineare Adresse geladen 7c00h (normalerweise Segment:Offset 0000H:7c00h,[50][52]: 29 Aber einige Biose verwenden fälschlicherweise fälschlicherweise 07c0h:0000H) und überträgt die Ausführung in den Startcode. Bei einer Festplatte wird dies als die bezeichnet Master Boot Record (MBR). Der herkömmliche MBR -Code überprüft die Partitionstabelle des MBR auf eine Partition als Partition als bootfähig[NB 6] (Der eine mit aktiv Flagge). Wenn ein Aktive Aufteilung wird gefunden, der MBR -Code lädt die Bootsektor Code aus dieser Partition, bekannt als als Lautstärkendatensatz (VBR) und führt es aus. Der MBR-Startcode ist häufig operatives Systemspezifisch.

Der Bootsektorcode ist der Startloader der ersten Stufe. Es befindet sich auf Festplatten und Abnehmbare Laufwerkeund muss in die ersten 446 passen Bytes des Master Boot Record Um Platz für den Standard 64-Byte zu lassen Partitionstabelle mit vier Partitionseinträgen und dem Zwei-Byte Boot -Signatur, was das BIOS für einen richtigen Bootlader benötigt - oder noch weniger, wenn zusätzliche Funktionen wie mehr als vier Partitionseinträge (bis zu 16 mit jeweils 16 Bytes), a Disksignatur (6 Bytes), a Scheibenzeitstempel (6 Bytes), a Fortgeschrittene aktive Partition (18 Bytes) oder speziell Multi-Boot Lader müssen auch in einigen Umgebungen unterstützt werden. Im Floppy und superfloppig Lautstärkeaufzeichnungen, bis zu 59 Bytes sind für die besetzt Erweiterter BIOS -Parameterblock an FAT12 und FAT16 Bände seit DOS 4.0, während die FAT32 Mit DOS 7.1 eingeführte EBPB benötigt sogar 87 Bytes, wobei nur 423 Bytes für den Bootlader bei der Annahme einer Sektorgröße von 512 Bytes übrig bleiben. Microsoft -Bootsektoren haben daher traditionell bestimmte Einschränkungen für den Boot -Prozess auferlegt, beispielsweise musste sich die Boot -Datei an einer festen Position im Stammverzeichnis des Dateisystems befinden und als aufeinanderfolgende Sektoren gespeichert werden.[63][64] Bedingungen, die von der betreut werden Sys Befehl und leicht entspannt in späteren Versionen von DOS.[64][NB 7] Der Bootloader konnte dann die ersten drei Sektoren der Datei in Speicher laden, die zufällig einen anderen eingebetteten Bootloader enthielten, der den Rest der Datei in den Speicher laden konnte.[64] Wenn Microsoft hinzugefügt wurde LBA und FAT32 -Unterstützung, sie wechselten sogar zu einem Stiefellader, der übergab zwei physische Sektoren und Verwendung von 386 Anweisungen aus Größengründen. Gleichzeitig gelang es anderen Anbietern, viel mehr Funktionen in einen einzelnen Bootsektor zu drücken, ohne die ursprünglichen Einschränkungen für nur minimale verfügbare Speicher (32 KB) und Prozessorunterstützung (8088/8086) zu entspannen.[NB 8] Zum Beispiel können DR-DOS-Bootssektoren die Startdatei im Dateisystem FAT12, FAT16 und FAT32 finden und sie als Ganzes in den Speicher laden Chs oder LBA, auch wenn die Datei nicht an einem festen Ort und in aufeinanderfolgenden Sektoren gespeichert ist.[65][50][66][67][68][NB 9][NB 8]

Der VBR ist oft OS-spezifisch; Die Hauptfunktion besteht jedoch darin, die Startladedatei des Betriebssystems zu laden und auszuführen (z. B. Bootmgr oder Ntdrl), das ist der Bootslader der zweiten Stufe aus einer aktiven Partition. Dann lädt der Startlader die OS -Kernel vom Speichergerät.

Wenn es keine aktive Partition gibt oder der Bootsektor der aktiven Partition ungültig ist, kann der MBR einen sekundären Bootlader laden, der eine Partition (häufig über Benutzereingaben) auswählt und seinen Startsektor lädt, der normalerweise den entsprechenden Betriebssystemkern lädt. In einigen Fällen kann der MBR auch versuchen, sekundäre Bootlader zu laden, bevor er versucht, die aktive Partition zu starten. Wenn alles andere fehlschlägt, sollte es eine ausstellen Int 18h[52][50] BIOS Interrupt Call (gefolgt von einem int 19h, nur für den Fall int 18h zurückkehren würde), um dem BIOS die Kontrolle zurückzugeben, was dann versuchen würde, andere Geräte abzusteuern, versuchen Remote -Stiefel über Netzwerk.[50]

Viele moderne Systeme (Intel Macs und neuer Stck) verwenden Uefi.[69][70]

Im Gegensatz zu BIOS, UEFI (nicht Legacy Boot über CSM) lädt das UEFI -System nicht auf Startsektoren, lädt den Startlader (EFI -Anwendung Datei in USB -Scheibe oder in der EFI -Systempartition) direkt,[71] und der OS -Kernel wird vom Bootlader geladen.

Andere Arten von Bootsequenzen

Ein Entsperrter Bootloader von einem Android Gerät, Anzeigen zusätzlicher verfügbarer Optionen

Viele moderne CPUs, SOCS und Mikrocontroller (zum Beispiel, Ti Omap) oder manchmal sogar Digitale Signalprozessoren (DSPs) kann Start -ROM direkt in sein Silizium integriert sein, sodass ein solcher Prozessor eine einfache Bootsequenz für sich selbst ausführen kann und Bootsprogramme (Firmware oder Software) aus Startquellen wie NAND Flash oder EMMC laden kann. Es ist schwierig, alle erforderlichen Logik für den Umgang mit solchen Geräten zu harten, daher wird stattdessen ein integriertes Boot -ROM in solchen Szenarien verwendet. Außerdem kann ein Boot -ROM möglicherweise ein Bootloader oder ein diagnostisches Programm über serielle Schnittstellen wie möglich laden Uart, Spi, USB usw. Diese Funktion wird häufig für die Systemwiederherstellungszwecke verwendet oder kann auch für die anfängliche nichtflüchtige Speicherprogrammierung verwendet werden, wenn im nichtflüchtigen Speicher noch keine Software verfügbar ist. Viele moderne Mikrocontroller (z. B. Flash -Speichercontroller auf einigen USB -Flash -Laufwerke) Firmware ROM direkt in ihr Silizium integriert.

Etwas Eingebettetes System Designs können auch einen Zwischenstart -Sequenzschritt enthalten. Zum Beispiel, Das U-Boot kann in zwei Stufen aufgeteilt werden: Die Plattform würde einen kleinen SPL (Sekundärprogrammlader) laden, einer abgespeckten Version von U-Boot, und die SPL würde eine anfängliche Hardwarekonfiguration durchführen (z. Dram Initialisierung mit CPU-Cache als RAM) und laden Sie die größere, vollständig vorgestellte Version von U-Boot.[72]

Es ist auch möglich, die Kontrolle über ein System zu übernehmen, indem Sie eine Hardware -Debug -Schnittstelle verwenden wie z. Jtag. Eine solche Schnittstelle kann verwendet werden, um das Bootloaderprogramm in bootfähigen nicht flüchtigen Speicher (z. B. Flash) zu schreiben, indem der Prozessorkern angewiesen wird, die erforderlichen Aktionen für die Programmierung des nichtflüchtigen Speichers auszuführen. Alternativ kann die Debug -Schnittstelle verwendet werden, um einen Diagnose- oder Startcode in den RAM hochzuladen und dann den Prozessorkern zu starten und ihn anzuweisen, den hochgeladenen Code auszuführen. Dies ermöglicht beispielsweise die Wiederherstellung eingebetteter Systeme, bei denen keine Software auf einem unterstützten Startgerät verbleibt und bei dem der Prozessor kein integriertes Boot -ROM hat. JTAG ist eine Standard- und beliebte Schnittstelle; Viele CPUs, Mikrocontroller und andere Geräte werden mit JTAG -Schnittstellen hergestellt (ab 2009).

Einige Mikrocontroller bieten spezielle Hardware-Schnittstellen an, die nicht zur willkürlichen Kontrolle eines Systems oder direkter Code verwendet werden können. Stattdessen ermöglichen sie das Einfügen des Startcodes in bootfähigen, nicht flüchtigen Speicher (wie Flash-Speicher) über einfache Protokolle. In der Herstellungsphase werden solche Schnittstellen verwendet, um den Startcode (und möglicherweise einen anderen Code) in den nichtflüchtigen Speicher zu injizieren. Nach dem Zurücksetzen des Systems beginnt der Mikrocontroller, Code in seinem nichtflüchtigen Speicher auszuführen, genau wie die üblichen Prozessoren ROMs zum Booten verwenden. Vor allem diese Technik wird von verwendet Atmel Avr Mikrocontroller und auch von anderen. In vielen Fällen werden solche Schnittstellen durch festverdrahtete Logik implementiert. In anderen Fällen könnten solche Schnittstellen durch Software erstellt werden Gpio Stifte.

Die meisten DSPs verfügen über einen seriellen Modus -Boot und einen Parallelmodus -Boot wie die Host -Port -Schnittstelle (HPI -Start).

Im Falle von DSPs gibt es häufig einen zweiten Mikroprozessor oder Mikrocontroller im Systemdesign, und dies ist für das Gesamtsystemverhalten, die Interrupt -Handhabung, den Umgang mit externen Ereignissen, Benutzeroberfläche usw. verantwortlich . In solchen Systemen könnte der DSP von einem anderen Prozessor gebootet werden, der manchmal als der bezeichnet wird Hostprozessor (Einen Host -Port nennen). Ein solcher Prozessor wird manchmal auch als der bezeichnet Meister, da es normalerweise zuerst aus seinen eigenen Erinnerungen startet und dann das Gesamtsystemverhalten, einschließlich des Bootens der DSP, und dann das Verhalten des DSP weiter steuert. Dem DSP fehlen oft seine eigenen Stiefelerinnerungen und stützt sich auf den Host -Prozessor, um stattdessen den erforderlichen Code zu liefern. Die bemerkenswertesten Systeme mit einem solchen Design sind Mobiltelefone, Modems, Audio- und Video-Player usw., bei denen ein DSP und ein CPU/Mikrocontroller nebeneinander existieren.

Viele FPGA Chips laden ihre Konfiguration aus einer externen Serie Eeprom ("Konfigurations-ROM") Über das Power-up.

Siehe auch

Anmerkungen

  1. ^ Einschließlich Daemons.
  2. ^ UU war häufig von der Form UU, U = Steuereinheit, U = Geräteadresse, aber einige Steuereinheiten haben nur 8 Geräte angehängt; Einige haben mehr als 16 angehängt. In der Tat bot der 3830 DASD-Controller als Option 32-Drive-Adressierung an.
  3. ^ Ohne die 370/145 und 370/155, die eine Konsole -Schreibmaschine von 3210 oder 3215 verwendeten.
  4. ^ Nur die S/360 verwendeten die 2250; das 360/85, 370/165 und 370/168 verwendete eine Tastatur/Anzeigegerät, die mit nichts anderem kompatibel ist.
  5. ^ Die Signatur zum Offset +1Feh In den Bootsektoren ist 55H aah, das ist 55H bei Offset +1Feh und Aah bei Offset +1ffh. Seit Little-Endian Darstellung muss im Kontext von angenommen werden IBM PC Kompatible Maschinen können als 16-Bit-Wort geschrieben werden AA55H in Programmen für x86 Prozessoren (beachten Sie die ausgetauschte Bestellung), während sie als geschrieben werden müsste 55aah in Programmen für andere CPU -Architekturen mit a Big-Endian Darstellung. Da dies in Büchern und sogar in Original-Microsoft-Referenzdokumenten mehrfach durcheinander gebracht wurde, verwendet dieser Artikel die offset-basierte Byte-Weise On-Disk-Darstellung, um mögliche Fehlinterpretationen zu vermeiden.
  6. ^ Das Aktive Aufteilung Kann a enthalten Bootlader der zweiten Stufe, z. B. OS/2 -Boot -Manager und nicht ein Betriebssystem.
  7. ^ Das PC DOS 5.0 Manuell heißt es fälschlicherweise, dass die Systemdateien nicht mehr zusammenhängend sein müssen. Damit der Startprozess zur Arbeit der Systemdateien jedoch die ersten beiden Verzeichniseinträge und die ersten drei Sektoren von belegen müssen Ibmbio.com muss noch zusammenhängend gespeichert werden. Sys kümmert sich weiterhin um diese Anforderungen.
  8. ^ a b Als Beispiel, während die erweiterte Funktionalität von DR-DOS MBRs und Bootsektoren im Vergleich zu ihren MS-DOS/PC dos Gegenstücke könnten immer noch mit konventionellem Nutzen erreicht werden Codeoptimierung Techniken in Montagesprache bis zu 7.05für die Zugabe von LBA, FAT32 und Lader unterstütz die 7.07 Sektoren mussten zurückgreifen selbstmodifizierender Code, Opcode-Gevel -Programmierung in Maschinensprache, kontrollierte Nutzung von (dokumentiert) Nebenwirkungen, mehrstufige Daten/Code überlappend und algorithmisch Falten Techniken, um alles in einen einzelnen physischen Sektor zu drücken, wie es eine Voraussetzung für rückwärts- und Kreuzkompatibilität mit anderen Betriebssystemen in Multi-Boot und Kettenbelastung Szenarien.
  9. ^ Es gibt eine Ausnahme von der Regel, die DR-DOS VBRs lädt das Ganze Ibmbio.com Datei in den Speicher: Wenn die Datei ibmbio.com größer als 29 KB ist, würde der Versuch, die gesamte Datei in den Speicher zu laden überschreiben das Stapel und umgesiedelt Disk Parametertabelle (DPT/FDPB). Daher a DR-DOS 7.07 VBR würde nur die ersten 29 KB der Datei in den Speicher laden und sich auf einen anderen Loader verlassen, der in den ersten Teil von ibmbio.com eingebettet ist, um nach diesem Zustand zu überprüfen und den Rest der Datei bei Bedarf in den Speicher zu laden. Dies verursacht keine Kompatibilitätsprobleme, da die Größe von IBMBIO.com diese Grenze in früheren Versionen ohne diesen Lader nie überschritten hat. In Kombination mit einer Dual -Eingabestruktur ermöglicht dies auch, dass das System von a geladen wird PC dos VBR, das nur die ersten drei Sektoren der Datei in den Speicher laden würde.

Verweise

  1. ^ "Bootstrap". Computerwörterbuch der Informationstechnologie.
  2. ^ "Bootstrap". Das freie Wörterbuch.
  3. ^ "Ziehen Sie sich durch Bootstraps hoch". Redewendungen durch das freie Wörterbuch. Abgerufen 2019-10-07.
  4. ^ "Bootstrap Definition". Technische Begriffe. Abgerufen 2019-10-02.
  5. ^ "Zieh dich an deinen Bootstraps hoch". Der Ausdruck Finder.
  6. ^ Campbell-Kelly, Martin (1980). "Programmieren des EDSAC". IEEE Annals of the History of Computing. 2 (1): 7–36. doi:10.1109/mahc.1980.10009.
  7. ^ Wilkes, Maurice V.; Wheeler, David J.; Gill, Stanley (1951). Die Vorbereitung von Programmen für einen elektronischen digitalen Computer. Addison-Wesley.
  8. ^ Buchholz, Werner (1953). "Das Systemdesign des IBM Typ 701 -Computers" (PDF). Verfahren der I.R.E.. 41 (10): 1273.
  9. ^ a b "IBM 7619 Exchange". Referenzhandbuch 7030 Datenverarbeitungssystem (PDF). IBM. August 1961. S. 125–127. A22-6530-2.
  10. ^ Prinzipien des Betriebstyps 701 und der damit verbundenen Ausrüstung (PDF). IBM. 1953. p. 26. Abgerufen 2012-11-09.
  11. ^ Von Gutenberg zum Internet, Jeremy M. Norman, 2005, Seite 436, ISBN0-930405-87-0
  12. ^ 704 Elektronik-Datenverarbeitungsmaschinenhandbuch des Betriebs (PDF). IBM. S. 14–15.
  13. ^ Bedienerhandbuch für IBM 7090 Datenverarbeitungssystem (PDF). IBM. p. 34.
  14. ^ IBM 7094 Operationsprinzipien (PDF). IBM. p. 146.
  15. ^ Oxford Englisch Wörterbuch. Universität Oxford. 1939.
  16. ^ 650 Magnetic Drum Datenverarbeitungsmaschine Handbuch des Betriebs (PDF). IBM. 1955. S. 49, 53–54.
  17. ^ Bedienerhandbuch für IBM 7040-7044 Systeme (PDF). IBM. p. 10. A22-6741-1.
  18. ^ Steuerungsdaten 6600 Computersystemreferenzhandbuch (PDF) (Zweite Ausgabe). Steuerungsdatengesellschaft. August 1963. p. 53.
  19. ^ GE-645 Systemhandbuch (PDF). General Electric. Januar 1968. Abgerufen 2019-10-30.
  20. ^ PDP-10-Systemreferenzhandbuch, Teil 1 (PDF). Digital Equipment Corporation. 1969. S. 2–72. Abgerufen 2012-11-09.
  21. ^ a b Burroughs B 1700 Systemreferenzhandbuch (PDF). Burroughs Corporation. November 1973. p. 1-14.
  22. ^ a b Z/Architekturprinzipien des Betriebs (PDF). IBM. September 2005. S. Kapitel 17. Abgerufen 2007-04-14.
  23. ^ BM792 Nur-Memory- und MR11 ~ DB Bootstrap Loader (PDF). Digital Equipment Corporation. Januar 1974. Dec-II-Hbmaa-e-d.
  24. ^ PDP-11-Peripheriegerätehandbuch (PDF). Digital Equipment Corporation. 1976. p. 4-25.
  25. ^ Programmiertes Datenprozessor-7-Benutzerhandbuch (PDF). Digital Equipment Corporation. 1965. p. 143.
  26. ^ PDP-9-Benutzerhandbuch (PDF). Digital Equipment Corporation. Januar 1968. p. 10-3.
  27. ^ PDP-15-Systemreferenzhandbuch (PDF). Digital Equipment Corporation. August 1969. p. 10-3.
  28. ^ a b So verwenden Sie die Nova -Computer (PDF). Daten allgemein. April 1971. p. 2-30.
  29. ^ "OldComputer: Altair 8800b". Abgerufen 2019-12-10.
  30. ^ Holmer, Glenn. Altair 8800 Ladungen 4K Basic aus Papierband.
  31. ^ BM873 Neustart/Lader (PDF). Digital Equipment Corporation. April 1974. Dez.-11-H873A-B-D.
  32. ^ M9301 Bootstrap/Terminator -Modulwartung und Bedienungsanleitung (PDF). Digital Equipment Corporation. Juni 1977. EK-M9301-TM-OO1.
  33. ^ M9312 Bootstrap/Terminator -Modul Technisches Handbuch (PDF). Digital Equipment Corporation. März 1981. EK-M9312-TM-OO3.
  34. ^ Mikrocomputer -Schnittstellenhandbuch (PDF). Digital Equipment Corporation. 1981. p. 17.
  35. ^ "10 MRV11-C-schreibgeschützte Speichermodul". Handbuch für Mikrocomputerprodukte (PDF). Digital Equipment Corporation. 1985.
  36. ^ "11 Mrvll · D Universal Programable Read.Unly Memory". Handbuch für Mikrocomputerprodukte (PDF). Digital Equipment Corporation. 1985.
  37. ^ PDP-11/34-Systembenutzerhandbuch (PDF). Digital Equipment Corporation. Juli 1977. S. 1–5, 2-1–2-12. EK-11034-ug-001.
  38. ^ PDP-11/60 Installations- und Betriebshandbuch (PDF). Digital Equipment Corporation. Februar 1979. S. 1–10, 29.2014, 3-1–3-6. EK-11060-OP-003.
  39. ^ PDP-11/24 System Technisches Handbuch (PDF). Digital Equipment Corporation. Juni 1981. p. 1-6. EK-11024-TM-001.
  40. ^ Ciaramella, Alberto. "Gerät zum automatischen Laden des zentralen Speichers elektronischer Prozessoren."US-Patent Nr. 4,117.974. 1978-10-03. (Eingereicht 1975)
  41. ^ Alberto Ciaramella Racconta IL Brevetto del Boostrap dei Computer Concepito in CSELT [Alberto Ciaramella diskutiert das Patent für Bootstrapping -Computer, die bei CSETT konzipiert sind] (auf Italienisch). Archiviert vom Original am 2021-11-13.
  42. ^ PDP-11/44 System Technisches Handbuch (PDF). Digital Equipment Corporation. Februar 1979. p. 6-57. EK-KD11Z-TM-001.
  43. ^ VAX-11/780 Hardware-Benutzerhandbuch (PDF). Digital Equipment Corporation. Februar 1979. 2.3 Bootstrapping und 3.6.1 Boot -Befehl (B). EK-11780-ug-001.
  44. ^ VAX-11/730 Zentrale Verarbeitungseinheit Technische Beschreibung (PDF). Digital Equipment Corporation. Mai 1982. p. 1-9. EK-KA730-TD-001.
  45. ^ VAX-11/750-Software-Installationshandbuch (PDF). Digital Equipment Corporation. Dezember 1982. S. 1-2–1-4, B-1-B-8, C-1-C-2. AA-K410C-TE.
  46. ^ Osborne, Adam; Kane, Gerry (1981). Osborne 16-Bit-Mikroprozessorhandbuch (PDF). S. 5–27. ISBN 0-931988-43-8. Abgerufen 2019-08-23.
  47. ^ Intel 64- und IA-32 Architekturen-Softwareentwicklerhandbuch Volume 3 (3A, 3B, 3C & 3D): Systemprogrammierhandbuch (PDF).
  48. ^ Osborne, Adam; Kane, Gerry. Osborne 4 & 8-Bit-Mikroprozessorhandbuch. S. 10–20. ISBN 0-931988-42-x.
  49. ^ Apple AD, Schnittstellenalter, Oktober 1976
  50. ^ a b c d e Paul, Matthias R. (1997-10-02) [1997-09-29]. "Caldera Opendos 7.01/7.02 UPDATE ALPHA 3 IBMBIO.com - Readme.txt und Boot.txt - Eine kurze Beschreibung, wie Opendos gebootet ist". Archiviert von das Original Am 2003-10-04. Abgerufen 2009-03-29. [1]
  51. ^ Sakamoto, Masahiko (2010-05-13). "Warum lädt BIOS MBR in x86 in 7c00h?". Glamenv-septzen.net. Abgerufen 2012-08-22.
  52. ^ a b c Compaq Computer Corporation; Phoenix Technologies Ltd; Intel Corporation (1996-01-11). "BIOS -Bootspezifikation 1.01" (PDF). Abgerufen 2017-12-21.
  53. ^ "Kapitel 6 - Probleme mit der Fehlerbehebung von Start- und Festplattenproblemen". Windows NT Server Resource Kit. Microsoft. Archiviert von das Original am 2007-05-15.
  54. ^ "Farbton". CORBOOT. Abgerufen 2010-11-20.
  55. ^ "Liste der PC-Marken mit ihren entsprechenden Hot-Keys". www.disk-image.com. Abgerufen 2020-09-26.
  56. ^ "So betreten Sie das BIOS auf einem beliebigen PC: Zugriff auf Tasten nach Hersteller | Tom's Hardware". www.tomshardware.com. Abgerufen 2020-09-26.
  57. ^ Brown, Eric (2008-10-02). "Montavista Linux treibt Dells Quick-Boot-Funktion". LinuxDevices.com. Abgerufen 2010-11-20.
  58. ^ Larabel, Michael (2008-06-14). "Splashtop Linux auf HP, Dell Notebooks?". Phoronix. Abgerufen 2010-11-20.
  59. ^ "Voodoo Envy's Instant-on iOS (angetrieben von Splashtop)". Youtube. Archiviert vom Original am 2021-11-13. Abgerufen 2010-11-20.
  60. ^ "IAPX 286 Programmierer Referenzhandbuch" (PDF). Intel. 1983. Abschnitt 5.3 Systeminitialisierung, p. 5-7. Abgerufen 2019-08-23. Da das CS -Register F000 enthält (somit ein Codesegment beginnt mit der physischen Adresse F0000) und der Befehlszeiger FFF0 enthält, führt der Prozessor seine erste Anweisung unter physischer Adresse FFFF0H aus.
  61. ^ "80386 Programmierer Referenzhandbuch" (PDF). Intel. 1986. Abschnitt 10.2.3 Erste Anweisungen, p. 10-3. Abgerufen 2013-11-03. Nach dem Zurücksetzen werden die Adresszeilen A31-20 automatisch für Anweisungen abgeholt. Diese Tatsache führt zusammen mit den Anfangswerten von CS: IP dazu, dass die Ausführung der Anweisungen an der physischen Adresse fffffff0h beginnt.
  62. ^ "Intel 64 und IA-32 Architekturen-Softwareentwicklerhandbuch" (PDF). Intel Corporation. Mai 2012. Abschnitt 9.1.4 Erstanweisung ausgeführt, p. 2611. Abgerufen 2012-08-23. Die erste Anweisung, die nach einem Hardware -Reset abgerufen und ausgeführt wird, befindet sich bei der physischen Adresse fffffff0h. Diese Adresse liegt 16 Bytes unterhalb der obersten physischen Adresse des Prozessors. Der EPROM, der den Software-Initialisierungscode enthält, muss sich an dieser Adresse befinden.
  63. ^ Zbikowski, Mark; Allen, Paul; Ballmer, Steve; Borman, Reuben; Borman, Rob; Butler, John; Carroll, Chuck; Chamberlain, Mark; Chell, David; Colee, Mike; Courtney, Mike; Dryfoos, Mike; Duncan, Rachel; Eckhardt, Kurt; Evans, Eric; Bauer, Rick; Tore, Bill; Geary, Michael; Griffin, Bob; Hogarth, Doug; Johnson, James W.; Kermaani, Kaamel; König, Adrian; Koch, Reed; Landowski, James; Larson, Chris; Lennon, Thomas; Lipkie, Dan; McDonald, Marc; McKinney, Bruce; Martin, Pascal; Mathers, Estelle; Matthews, Bob; Melin, David; Mergentime, Charles; Nevin, Randy; Newell, Dan; Newell, Tani; Norris, David; O'Leary, Mike; O'Rear, Bob; Olsson, Mike; Osterman, Larry; Ostling, Ridge; Pai, Sunil; Paterson, Tim; Perez, Gary; Peters, Chris; Petzold, Charles; Pollock, John; Reynolds, Aaron; Rubin, Darryl; Ryan, Ralph; Schulmeisters, Karl; Shah, Rajen; Shaw, Barry; Kurz, Anthony; Slivka, Ben; Smirl, Jon; Stillmaker, Betty; Stoddard, John; Tillman, Dennis; Whitten, Greg; Yount, Natalie; Zeck, Steve (1988). "Technische Berater". Die MS-DOS-Enzyklopädie: Versionen 1.0 bis 3.2. Von Duncan, Ray; Bostwick, Steve; Burgoyne, Keith; Byers, Robert A.; Hogan, Thom; Kyle, Jim; Letwin, Gordon; Petzold, Charles; Rabinowitz, Chip; Tomlin, Jim; Wilton, Richard; Wolverton, Van; Wong, William; Woodcock, Joanne (komplett überarbeitet auf Hrsg.). Redmond, Washington, USA: Microsoft Press. ISBN 1-55615-049-0. Lccn 87-21452. OCLC 16581341. (XIX+1570 Seiten; 26 cm) (nb. Diese Ausgabe wurde 1988 nach umfassender Überarbeitung der entzogenen Erstausgabe von 1986 von einem anderen Autorenteam veröffentlicht. [2])
  64. ^ a b c Chappell, Geoff (Januar 1994). "Kapitel 2: Der System -Fußabdruck". In Schulman, Andrew; Pedersen, Amorette (Hrsg.). DOS -Interna. Die Andrew Schulman -Programmierserie (1. Druck, 1. Aufl.). Addison Wesley Publishing Company. ISBN 978-0-201-60835-9. (xxvi+738+iv Seiten, 3,5 "-Floppy [3][4]) Errata: [5][6][7]
  65. ^ Rosch, Winn L. (1991-02-12). "Dr. DOS 5.0 - Das bessere Betriebssystem?". PC Magazine. Vol. 10, nein. 3. p. 241-246, 257, 264, 266. Archiviert vom Original am 2019-07-25. Abgerufen 2019-07-26. […] Sys wurde unter verbessert unter Dr. DOS 5.0 Sie müssen sich also keine Sorgen machen, dass Sie den ersten Cluster auf einer Festplatte frei lassen, die Sie bootfähig machen möchten. Die Dr. DOS -Systemdateien können überall auf der Festplatte lokalisiert werden, sodass jede Festplatte mit genügend freiem Speicherplatz so eingestellt werden kann, dass Sie Ihr System starten. […] (NB. Die Quelle schreibt dies dem SYS -Dienstprogramm zu, während dies tatsächlich eine Funktion des erweiterten Bootstrap -Laders im Startsektor ist. SYS plant nur diesen Sektor auf die Festplatte.)
  66. ^ Paul, Matthias R. (2001-01-17). "FAT32 in DR-DOS". Opendos@Delorie. Archiviert vom Original am 2017-10-06. Abgerufen 2017-10-06. […] Das DR-DOS Bootsektor […] sucht nach dem Ibmbio.com (Drbios.sys) Datei und lädt die * ganze * -Datei dann in den Speicher, bevor sie die Steuerung an sie übergibt. […]
  67. ^ Paul, Matthias R. (2002-02-20). "Kann nicht kopieren". Opendos@Delorie. Archiviert vom Original am 2017-10-06. Abgerufen 2017-10-06. […] Das DR-DOS Der Bootsektor lädt das Ganze Ibmbio.com Datei in den Speicher, bevor er ausgeführt wird. Es interessiert sich überhaupt nicht um die Ibmdos.com Datei, die von ibmbio.com geladen wird. […] Der DR-DOS-Bootsektor […] findet die […] Kernel-Dateien, solange sie logisch im Stammverzeichnis gespeichert sind. Ihr physischer Ort auf der Festplatte und wenn sie fragmentiert sind oder nicht, ist der DR-DOS-Stiefelsektor egal. Daher können Sie die Kernel -Dateien einfach auf die Festplatte kopieren (auch mit einem einfach KOPIEREN), und sobald der Bootsektor ein DR-DOS-Sektor ist, wird und laden sie sie. Natürlich ist es schwierig, all dies in nur 512 Bytes zu setzen, die Größe eines einzelnen Sektors, aber dies ist eine wichtige Komfortverbesserung, wenn Sie ein DR-DOS-System einrichten müssen, und es ist auch der Schlüssel für das Dr. -Dos Multi-Os Lader Nützlichkeit zu arbeiten. Das MS-DOS Kernel-Dateien müssen sich an bestimmten Orten befinden, aber die DR-DOS-Dateien können überall erfolgen, sodass Sie sie nicht jedes Mal, wenn Sie das andere Betriebssystem starten, physisch wechseln müssen. Außerdem können Sie ein DR-DOS-System aktualisieren, indem Sie die Kernel-Dateien über die alten kopieren, keine Notwendigkeit Sys, keine schwierigen Einrichtungsverfahren, wie für MS-DOS/ erforderlichPC dos. Sie können sogar mehrere DR-DOS-Kernel-Dateien unter verschiedenen Dateinamen auf demselben Laufwerk haben, und Loader wechselt nach den in der aufgeführten Dateinamen Boot.lst Datei. […]
  68. ^ Paul, Matthias R. (2017-08-14) [2017-08-07]. "Die fortlaufende Saga von Windows 3.1 im erweiterten Modus auf Omnibook 300". MOHPC - Das Museum der HP -Taschenrechner. Archiviert vom Original am 2017-10-06. Abgerufen 2017-10-06. […] das DR-DOS Fdisk Verteilt nicht nur eine Festplatte, sondern kann auch die frisch erstellten Volumina formatieren und ihre Kofferraumsektoren auf einmal initialisieren. Es besteht also kein Risiko, das falsche Volumen versehentlich durcheinander zu bringen und nicht erforderlich ist FORMAT /S oder Sys. Anschließend können Sie einfach die verbleibenden DR-DOS-Dateien, einschließlich der Systemdateien, kopieren. Es ist wichtig zu wissen, dass im Gegensatz zu MS-DOS/PC dos, DR-DOS verfügt über "intelligente" Bootssektoren, die das Dateisystem tatsächlich "montieren", um die Systemdateien im Stammverzeichnis zu suchen und zu laden, anstatt zu erwarten, dass sie an einem bestimmten Ort platziert werden. Physikalisch können die Systemdateien überall lokalisiert und auch fragmentiert werden. […]
  69. ^ "Intel Plattform Innovation Framework für EFI". Intel. Abgerufen 2008-01-07.
  70. ^ "OpenBIOS - CORBOOT". CORBOOT.org. Abgerufen 2013-03-20.
  71. ^ "Uefi - Osdev Wiki". Wiki.osdev.org. Abgerufen 2020-09-26.
  72. ^ "Übersicht - die vier Bootloaderstufen". ti.com. Texas Instrumente. 2013-12-05. Abgerufen 2015-01-25.