Is there a way to boot a computer without a CPU?
Einige Leute, die diese Frage beantworten, sind einfach viel zu jung... oder ich bin zu alt.
Der Begriff Boot ist die Abkürzung für Bootstrap Loader. Der Bootstrap-Loader ist das allererste Programm, das ein Computer ausführen muss. Es hat nur einen einzigen Zweck: das nächste Programm in den Speicher zu laden.
Vor langer Zeit...
hatten Computer keinen nichtflüchtigen Speicher. Wenn man den Computer ausschaltete, verlor er den gesamten Inhalt seines Speichers.
Wenn man den Computer einschaltete, war er ein großer dummer Briefbeschwerer. Der Prozessor war "angehalten".
Auf der Vorderseite befanden sich eine Reihe von Schaltern und manchmal eine Taste. Mit diesen Schaltern konnte man Adressen und Assembler-Operationscodes in binärer Form einstellen. Dann drückte man den "Lade"-Knopf - manchmal war es auch ein anderer Schalter mit einer Feder, um ihn zurückzuholen.
Mit den Schaltern programmierte man den Bootstrap-Loader in den Speicher. Es lag in der Natur der Sache, dass der Bootstrap-Loader klein sein musste. Ihn mit diesen Schaltern zu programmieren, war ein mühsamer Prozess.
Die Schalter wurden schließlich bei großen Großrechnern ersetzt, aber als die ersten "Personal"-Computer auf den Markt kamen, hatten sie Schalter auf der Vorderseite.
Sie konnten also den Bootstrap-Loader ohne die CPU laden. Tatsächlich mussten Sie den Bootstrap-Loader ohne die CPU laden, da die CPU keine Anweisungen hatte.
Nach dem Laden des Bootstrap-Loaders musste ein weiterer Schalter von "halt" auf "run" umgestellt werden, und erst dann begann die CPU mit der Ausführung des soeben mit den Schaltern geladenen Programms.
In der Regel bestand der Bootstrap-Loader aus einem sehr einfachen IO-Treibercode und ein paar Anweisungen, um das erste echte, nützliche Programm in den Speicher zu laden. Oft war das nächste Programm der "Monitor". Dabei handelte es sich um ein kleines Programm, das Tastatur-Eingaben und eine Art von Ausgabe bereitstellte - oft eine serielle RS232-C-Schnittstelle. Damit konnte man den Speicher verändern, Programme laden und der CPU sagen, dass sie das Programm ausführen soll. Es konnte immer nur ein Programm gleichzeitig ausgeführt werden. In den ersten Personalcomputersystemen gab es kein Betriebssystem.
Danach lud man einen BASIC-Interpreter und konnte dann BASIC-Programme ausführen. Das war ein Riesenspaß!
Es war üblich, den Begriff "booten" zu verwenden, um den Vorgang zu beschreiben, bei dem der Start-/Halt-Schalter betätigt wird, nachdem der Bootstrap-Lader programmiert wurde. Streng genommen braucht man also keine CPU, um den Computer tatsächlich zu starten, aber man kann den Bootstrap-Loader auch ohne CPU in den Speicher laden.