Warum braucht das BIOS solange zum starten?

Ralfioni

Ensign
Registriert
Juli 2007
Beiträge
129
Hallo,

weiß jemand von Euch warum ein PC trotz leistungsfähigerer Hardware erst 15-30 Sekunden nach dem Einschalten bereit für seine Aufgaben ist, Fernseher, SAT-Receiver, DVD-Player, Autoradios und andere Embedded Devices jedoch bereits nach weniger als 5 Sekunden (hier sogar inkl. Laden von Betriebs- und Anwendungssoftware!)?

Mir ist klar, dass ein vollständiges Windows-System wesentlich komplizierter ist als eine DVD-Player-Firmware und daher länger zum initialisieren braucht. Aber warum braucht das BIOS so lange? Im wesentlichen besteht ein Festplatten-SAT-Receiver doch aus den gleichen Hardware-Komponenten...

Trotz schnelleren Prozessoren, Hauptspeicher etc. gurkt das BIOS rum und kostet dank Power-on-self-Test häufig 50% der Bootzeit. WARUM?

Viele Grüße
Ralf
 
is das dein ernst?

cpu-initialisierung
gpu-initialisierung
schnittstellen-initialisierung
hdd-initialisierung

etc.
das braucht halt seine zeit
 
DAs ist doch ganz klar! Das liegt auch an dem Betriebssystem und der Software die du auf dem Rechner hast! Mache mal ein sytem mit den Standart einstellungen und Standart Software schon geht es schneller!

Übrigens ist Software auf einem Receiver anders Programmiert und in einer anderen Sprache!
 
Ich glaub, hier werden Äpfel und Birnen verglichen. Die angegebenen Vergleichsgeräte sind wohl allesamt nur in einer Ausstattung zu haben und darauf kann man ja alles zuschneiden.
Aber allein die Speichererkennung und -initialisierung beim PC wird sicher kräftig Zeit kosten, weil das BIOS ja testen muss, wieviel Speicher nun drinsteckt. Gleiches gilt für Festplatten, DVD etc. auch da gibt's Timeouts, die man einfach abwarten muss.
Hier ist einfach der Grund die flexible Ausstattung eines PC's, die durch die Erkennung Zeit braucht.
 
Da hat stephan1105 schon recht!

Du mußt auch bedenken, bei einem PC werden viel mehr daten hin und her geschoben, als bei einem Receiver oder DVD!
 
Hi!
Naja, so einen Festplattenreceiver hab ich noch nicht aufgemacht, aber ich glaube kaum, dass man den mit einem PC vergleichen kann. Einen PC kannst Du Dir so auf- und umbauen, wie Du ihn haben willst. Die Anschlussmöglichkeiten sind wesentlich vielfältiger. Kurzum, ein PC ist wesentlich flexibler als so ein Receiver, das wird eben durch etwas mehr Zeit beim Initialisieren erkauft.

Gruß, Andy
 
Ralfioni schrieb:
...und warum trifft das auf einen Festplattenreceiver nicht zu?

weil ein festplatten-receiver nicht 10 usb-ports, 8 sata-ports, 2 PCI-steckplätze sowie unzählige PCIe-steckplätze sowie zum. 1 ide-port und 4 ram-bänke hat?!
 
crazyandy schrieb:
Hi!
Naja, so einen Festplattenreceiver hab ich noch nicht aufgemacht, aber ich glaube kaum, dass man den mit einem PC vergleichen kann. Einen PC kannst Du Dir so auf- und umbauen, wie Du ihn haben willst. Die Anschlussmöglichkeiten sind wesentlich vielfältiger. Kurzum, ein PC ist wesentlich flexibler als so ein Receiver, das wird eben durch etwas mehr Zeit beim Initialisieren erkauft.

Gruß, Andy

Nee, nicht wirklich. Hab grade mal meinen Sat-PVR nachgeschlagen. 64MB!!, das ist 1/16tel eines PC mit 1GB (also braucht er allein hier auch nur 1/16tel der Zeit), und der PC hat i.d.R. noch 256MB in der Grafik etc. Weiterhin hat ein PVR genau eine HDD, also muss man danach nicht auf andere warten, keinerlei cd oder DVD. Ausserdem sind sämtliche Hardwarekomponenten nicht austauschbar und damit muss man keinerlei Module testen, die evtl. eingebaut sein könnten ind PCI etc. Nächstes Problem ist, dass heutige Betriebssysteme das Plug&Play komplett nochmal durchtesten müssen, da das BIOS da komplett aussen vor bleibt.
Mein Sat-Receiver braucht auch 10 Sekunden und wenn ich noch Zusatzprogramme installiert habe, dann noch wesentlich länger, da die Platte erst hochgefahren werden muss, um die zu laden....
 
Mal dazwischengeworfen: ich habe so ein Festplatten-VHS-DVD-Kombidings von Pioneer. Der braucht ca. 20 Sekunden bis er breit ist, weil er erst die Platte hochfahren und den TOC (table of contents = Inhaltsverzeichnis) lesen muss.
 
Grüß dich,

interessante Frage. Vielleicht kann dir dies die Frage beantworten:

Früher, als die Elektronik noch einfach war, wurden sämtliche Funktionen direkt in Hardware verpackt. Nehmen wir zum Beispiel eine einfache billige Digital Uhr. Diese hat ein paar Bytes um die Uhrzeit zu speichern, und ein paar Bits für den aktuellen Modus (Uhrzeit-Anzeige-Modus, Stunden-Einstell-Modus, Minuten-Einstell-Modus). Mehr nicht. Du versorgst die Uhr mit Strom und sie kann sofort loslegen zu arbeiten.

Genauso ist es auch mit anderen elektronischen Geräten. Nehmen wir den Prozessor in deinem Computer: Wenn du Strom anlegst, könnte er alle Daten die man ihm schickt sofort bearbeiten. Ein Prozessor muss nicht erst großartig Booten bevor er funktioniert. Doch woher weiß der Prozessor, welche Daten er verarbeiten soll? Diese muss er von der Festplatte bekommen. Doch wie kriegt der Prozessor diese Daten? Die werden von der Festplatte gelesen und ihm über die Bridges auf dem Mainboard zugeschickt. Doch woher weiß die Festplatte, wo ihre Daten gespeichert sind? Die muss sie erstmal aus ihrem Dateisystem rauslesen. Und woher wissen die Bridges, welche Festplatten überhaupt in deinem Computer eingebaut sind? Diese müssen beim Einschalten des PCs ersteinmal erkannt werden. Genauso wie jede andere eingebaute Hardware.
Hat der Computer alles erkannt, dann fängt er an, dem Prozessor die Daten von der Festplatte zu schicken. Diese Festplattendaten sind Programmdaten, die in den Cache des Prozessors geladen werden. Und nicht wenige. Ohne es zu wissen schätze ich mal, dass diese Daten den Prozessor etwa 50 Milliarden Rechenoperationen ausführen lassen, um das Betriebssystem zu laden und du anfangen kannst, den Rechner zu benutzen. In dieser Zeit musste der Rechner alles Laden was wichtig ist. Das sind der Treiber für die Grafikkarte, welche ebenfalls einen Prozessor und eigenen Speicher besitzt, die auch erstmal gestartet werden müssen. Dein Betriebssystem (Windows) lässt im Hintergrund jede Menge Programme laufen, die sofort Verfügbar sind. Wenn du Beispielsweise auf das Startmenü klickst, dann siehst du sofort die Einträge da drin. Denn diese müssen nicht extra geladen werden, nein der Computer hat sie bereits beim Starten geladen. Der Rechner alädt beim Starten so viel, dass man es sich kaum noch vorstellen kann.

Und im vergleich zur SAT Anlage, die lediglich das aktuelle Programm auswählen muss und auf ne Fernbedienung reagieren muss... Da kommt eine einfache Digital Uhr sehr viel näher.
 
buhrmi schrieb:
Und im vergleich zur SAT Anlage, die lediglich das aktuelle Programm auswählen muss und auf ne Fernbedienung reagieren muss... Da kommt eine einfache Digital Uhr sehr viel näher.

Naja, der Threadersteller hat hier auf einen HDD-SAT-Receiver Bezug genommen. Der muss ja auch erst seine Festplatte hochdrehen und das dauert sicher auch so seine 3-4 Sekunden und danach wird meist noch das Inhaltsverzeichnis getestet. Deshalb kommen solche Geräte meist auch schon bei über 10 Sekunden an...
 
Das Bios hat auch schon so seine 30 jahre hinter sich:freaky:
 
Hallo,

nochmals zum Verständnis: Mir geht es hier nur ums BIOS, also nur die Zeit, die der PC benötigt BEVOR er Betriebssystem bzw. Anwendungen startet.

Ein Festplattenreceiver ist nichts anderes als ein PC. Er hat eine CPU, GPU, RAM usw. Nur ist er - wenn man vom Hochfahren der Festplatte absieht - sofort nach dem Einschalten verfügbar. Der PC aber nicht. Warum?

Natürlich gibt es beim PC die Besonderheit, dass die Hardware flexibel ausgetauscht werden kann, aber diese Daten können nach einer Änderung doch auch im CMOS hinterlegt werden, so dass sie nicht bei jedem Start erneut geprüft werden müssen, oder?

Mein alter C64 und Amiga 500 hatten auch keinen langen Power-On-Self-Test o.ä. und waren sofort nach dem Einschalten bereit zum Laden von Programmen. Auch der Amiga hatte Erweiterungsmöglichkeiten. Ich habe leider keinen Vergleich zu einem PC aus dieser Zeit, aber ich meine mich daran zu erinnern, dass auch XT- und AT-Computer schon langwierig den Speicher hochzählten, obwohl dieser nicht größer war als bspw. beim Amiga.

Was passiert also in den 20 Sekunden nach dem Einschalten bevor Windows geladen wird? Wieviele Sekunden gehen für was drauf? UND: Warum lässt sich diese Zeit nicht wie bei Festplattenreceivern, Amiga 500 u.a. Geräten auf unter 3-5 Sekunden reduzieren?

Viele Grüße
Ralf
 
Ralfioni schrieb:
Natürlich gibt es beim PC die Besonderheit, dass die Hardware flexibel ausgetauscht werden kann, aber diese Daten können nach einer Änderung doch auch im CMOS hinterlegt werden, so dass sie nicht bei jedem Start erneut geprüft werden müssen, oder?
He, jein, das ginge natürlich... aber wie willst du neue Hardware erkennen, wenn du nicht dann danach suchst? ;)

Embedded Devices haben eine feste Hardware, die ins BIOS gegossen ist und meist auch ein festes OS, d.h. es muss auch nicht erst ein Bootloader vorbereitet werden.
 
Im Grund sendet das BIOS eine Art Aufwecksignal an die Hardware und fragt danach ab, was alles darauf reagiert hat. Anschließend setzt es sich hinter einige Interrupts (MS DOS benötigt die).
Das alles geht leider nicht so schnell, weil die BIOSe fast alle verschlüsselt sind (um BIOS-Hacker fernzuhalten).

Eigendlich ist das nicht so schlimm, aber der Hammer kommt jetzt erst: Fast alle BIOSe sind 16-Bit-Programme, teilweise sind sind sie sogar 8-Bit-Programm. Ein Relikt der Computer-Steinzeit.
Es stellt funktionen zur Verfügung, die von aktuellen Betriebssystemen nicht mehr verwendet werden. Im Gegenteil, Windows & Co. umgeht das BIOS in fast allen Dingen und greift selber direkt auf die Hardware zu (darum benötigt man unter Windows & Co. Treiber, während sowas unter DOS eher die Ausnahme war - das BIOS hat die Hardware verwaltet).

Prinzipiell ist das BIOS was feines, allerdings völlig veraltet.
 
Creshal schrieb:
He, jein, das ginge natürlich... aber wie willst du neue Hardware erkennen, wenn du nicht dann danach suchst? ;)

So wie bei den Laufwerken? Man kann im BIOS deren Auto-Erkennung deaktivieren und die aktuellen Werte fest einstellen.

Creshal schrieb:
Embedded Devices haben eine feste Hardware, die ins BIOS gegossen ist und meist auch ein festes OS, d.h. es muss auch nicht erst ein Bootloader vorbereitet werden.

Wofür gehen die 20 Sekunden denn im einzelnen drauf?
a) Zum Erkennen der einzelnen Komponenten? Wieso löst man das nicht wie oben vorgeschlagen?
b) Zum Testen der Hardware auf Fehler? Da dürfte es doch keinen Unterschied zu Embedded Devices geben? Rein hardware-technisch gesehen bestehen sowohl PC als auch Festplattenreceiver weitgehend aus den gleich Komponenten.
c) Beim Initialisieren der Geräte? Was heißt "Initialisieren" überhaupt? Macht das nicht das Betriebssystem?
d) Sonstiges? Was heißt Bootloader vorbereiten?

Gerade weil bei Embedded Devices die Betriebssoftware in der Firmware integriert ist, finde ich es eigentlich verwunderlich, dass das PC-BIOS, das noch gar keine Anwendungssoftware außer dem Setup-Utility enthält, länger und nicht kürzer braucht.
 
e-Laurin schrieb:
Das alles geht leider nicht so schnell, weil die BIOSe fast alle verschlüsselt sind (um BIOS-Hacker fernzuhalten).

Das sollte bei einem 2 GHz-Prozessor ja wohl kein Thema sein. 16-Bit-Code hin oder her...

e-Laurin schrieb:
Es stellt funktionen zur Verfügung, die von aktuellen Betriebssystemen nicht mehr verwendet werden. Im Gegenteil, Windows & Co. umgeht das BIOS in fast allen Dingen und greift selber direkt auf die Hardware zu (darum benötigt man unter Windows & Co. Treiber, während sowas unter DOS eher die Ausnahme war - das BIOS hat die Hardware verwaltet).

Prinzipiell ist das BIOS was feines, allerdings völlig veraltet.

Bootet UEFI denn schneller?
 
Zurück
Oben