Erstmal etwas grundsaetzliches: Ein BIOS ist lediglich ein Stueck Software, das in einem EEPROM auf einer Platine abgelegt ist und Initialisierung und den Systemstart steuert, da ist nichts in Stein gemeisselt, es ist jederzeit moeglich diese Software zu erweitern und anzupassen und es wurde in der vergangenheit, anders als du es darzustellen versuchst, auch oft genug gemacht.
._ut schrieb:
Ganz einfach, weil nur das BIOS ein anderes Partitions-Format verlangt (nämlich das Intel/DOS fdisk-Format). Ein EFI (oder die OpenFirmware, welche ja, wie an einer andere Stelle des Dokuments zu lesen ist, ausdrücklich nicht verwendet werden wird) etc. würde mit dem Apple-Partitionsformat zurecht kommen.
Ich finde es nicht nett, dass du ausgerechnet den interessanten Teil meines Postings betreffend der Partitionstabelle ignoriert hast. Man kann eine Partitionstabelle Endian-unabhaengig machen, man muss aber nicht und aus Performance-Gruenden erscheint es ratsam es nicht zu tun. Daten werden in der Regel in Bloecken von mehreren Kilobyte von der Platte gelesen. Wenn das Filesystem eine andere Endianess hat als der Prozessor muss ich jedes Wort einzeln umdrehen, das kostet nur unnoetig Zeit und Prozessorzyklen.
Suns Partitionsschema ist Endian-unabhaengig, das Partitionsschema diverser anderer Dateisysteme ist es nicht. Mopeglicherweise haelt es Apple da genau so, moeglicherweise hat man das Partitionsschema auch nur um neue Daten erweitert, um es fuer Intel-Macs brauchbar zu machen.
Ich glaube jedenfalls nicht, dass man bei einem fertigen Intel-Mac das DOS-Partitionsschema verwenden wird, wozu denn? Man muss ja nicht zu Windows kompatibel bleiben
In dem Dokument geht es nicht um das Developer-Kit, sondern um Software für die künftigen Intel-Macs.
Die aber im Moment wohl auch auf dem Developer-Kit laufen koennen sollen, oder nicht?
Du hast die Antwort schon selbst gegeben. Das EFI ist ein Projekt aus der Zeit, als Intel sich eigentlich ganz von der x86-Schiene lösen wollte (der Itanium sollte eigentlich langfristig den x86 ablösen; dem hat AMD mit x86-64 einen Strich durch die Rechnung gemacht). Es wird IMHO nie dem Weg in einen fertigen PC finden.
Man kann bereits heute fertige EFI-Codes fuer PCs kaufen. Schau dich mal auf der Homepage von AMI oder Phoenix um, die bieten dir bereits heute eine fertige EFI-kompatible Firmware fuer alle Arten von X86-kompatiblen PCs an.
Es waere technisch gesehen ueberhaupt kein Problem naechste Woche einen PC mit EFI auszuliefern, Windows wurde halt nicht drauf laufen und viele Steckkarten wuerden wohl nicht funktionieren, im Industrie-PC Umfeld wird es allerdings bereits verwendet.
Natuerlich hat Intel die Traegheit der Hardwarehersteller unterschaetzt, aber es besteht ueberhaupt keine Veranlassung seitens Apple ein BIOS einzusetzen, prinzipiell besteht auch keine Veranlassung weiter auf OpenFirmware zu setzen.
Die Möglichkeiten solche Sachen in das x86-BIOS einzubauen sind äußerst eingeschränkt. Zum einen muss in Assembler programmiert werden, zum anderen ist der x86 zu dem Zeitpunkt noch ein 8-bit-Prozessor mit entsprechend geringen Einschränkungen, was z.B. die Größe der Programme betrifft (es sind nur 640KB Speicher adressierbar).
Ich weiss ja nicht wo du deine Informationen her hast, aber heutzutage programmiert niemand mehr ein BIOS in Assembler. Selbst auf billigsten Microcontrollern vom Schlage eines 8051 (512 Byte RAM und 1 MHz) wird heute in C programmiert. Lass es dir ausserdem von jemandem gesagt sein, dessen Job es ist professionell Embedded-Chips zu programmieren, mit 640 Kilobyte RAM kann ich alles das machen, was Apple mit seiner Openfirmware macht und mehr. Da bringe ich notfalls ein ganzes Betriebssystem inklusive Framebuffer-Unterstuetzung und TCP/IP-Stack unter und hab noch die Haelfte frei. Hey selbst ein C64 kann das.
Das BIOS wurde und wird seit Jahren staendig weiterentwickelt und hat heute kaum noch etwas mit dem Ur-BIOS gemein und sowohl AMI als auch Award liefern dir auf Wunsch den kompletten C-Quellcode mit, so dass du die Software nach Herzenslust umgestalten kannst, es ist kein Problem die gewuenschte Funktionalitaet zu integrieren, selbst ein Target-Mode waere denkbar
Selbst so einfach Dinge, wie von CD Starten sind nur mit viel tricksen möglich (es wird eine Floppy-Diskette emuliert).
Das ist keine Einschraenkung des BIOS sondern des total veralteten DOS-Dateisystems. Man hat einfach damals nicht bedacht, dass man irgendwann mal auch von anderen Medien als von festplatte oder Floppy booten will und muss diese Einschraenkung halt jetzt im Sinne der Kompatibilitaet umgehen.
Mal abgesehen davon benoetige ich IMMER wenn ich ein Betriebssystem starten will eine Art von Bootloader, also muss natuerlich auch auf der CD einer sein.