Hi Natalia,
I tried to understand your points. Please correct me where I'm wrong.
On 04.10.2009 06:10, Natalia Portillo wrote:
EFI actually DOES HAVE ground.
Itanium machines are still worldwide used, manufactured and sold.
Unless I'm mistaken, Itanium is not x86. Now if we consider EFI for x86 because it has solid standing on Itanium, shouldn't we also consider U-Boot and OpenFirmware for x86 because they have solid standing on ARM/PowerPC?
Intel-based Macintoshes used them and ALL of their facilities.
True.
The disadvantages can be a lot. The advantages that I see, are the following (implemented by Apple's EFI): Hardware drivers, so the OS loader can use ANY hardware present.
Same for BIOS.
Hardware testing easily programable, as you can use the EFI to call the hardware (unlike PC diagnostics that makes direct and real mode calls to the hardware, making them imposible to test different hardware without implementing all variations -SCSI cards, wifi cards, so on-)
Same for BIOS (the only difference is that the interface to the BIOS provides a 16bit interface and EFI provides a 32bit interface).
Filesystem independent bootloader (it just expects the EFI to have the filesystem and disk driver, then searches the disk for the OS loader)
Burn a BIOS together with DOS in the ROM and you get the same functionality. I have seen youtube videos of such systems.
Upgradable drivers without firmware patching (so if I add a wifi card, I can put a driver for netbooting it)
Install DOS with a boot agent on the disk and you get exactly the same feature.
Extensive input devices support (USB keyb and mice, bluetooth keyb and mice and infrared remote)
AFAIK USB keyboard+mouse is supported in pretty much every BIOS out there. Not sure about bluetooth keyboard and infrared remote, but the boards with builtin bluetooth support probably also have a bluetooth keyboard driver in the BIOS.
I think that this is impossible (if not nearly to) make using BIOS. I think it is only possible with OpenFirmware or EFI.
Except for bluetooth keyboard and infrared remote which I'm not sure about, everything you listed above is the same for BIOS and EFI.
And I prefer EFI for the matters of being programable in C (personal distaste for Forth)
Now the Forth argument is something I can agree with. ;-)
and the EFI System Partition usability.
I don't understand what an EFI System Partition is used for. The wikipedia entry suggests that it is essentially a special partition where bootloaders live (instead of using a normal partition for that) and where EFI loads drivers and DOS/Windows PE commandline executables from. That sounds suspiciously like a DOS partition with NTLDR and loadlin.
A bootloader can fuckinly easy put a good splash without limiting to 12 colors or making calls to the VGA system (for example). What will happen with the GRUB if tomorrow VGA disappears? What a mess...
I've seen quite a few GRUB installations with 24-bit color splash screens in high resolutions. Graphics hardware won't disappear from computers any time soon, only the interfaces may change.
And I don't work for Intel, IBM, HP, Apple, etc.
In QEMU' side I see that maybe not for 0.12.0 but anyway, EFI is a MUST have if we want to emulate, support, test, patch, anything that uses it, starting with Itanium, continuing with Intel Macintosh, and finishing with all the thousands of PCs (not only from Intel, as I've seen a bunch from Asus and Asrock) that instead of using a BIOS are using a hidden EFI with a boot-by-default CSM.
Interesting. Do these boards still have a 20-30 second wait time from poweron to bootloader? I've seen coreboot+SeaBIOS achieve 1 second from poweron to bootloader on real x86 hardware, so I always wonder what the commercial BIOSes do during the time we wait for them.
I'm sure, EFI will prevail over BIOS and sooner or later, also over OpenFirmware.
I'm not so sure about that. EFI is "cool", but so were Linux netbooks and nowadays people buy mostly Windows netbooks.
And we need to move with the world, not against it.
Fully agreed.
Many years ago, some EFI proponent told me: "EFI is great. It is a 32-bit BIOS with builtin 32-bit DOS. Now every operating system can use EFI drivers in compatibility mode like Windows 95 used DOS drivers in compatibility mode." That statement had a lasting impression on me and I've yet to see any explanation why that statement would be incorrect. I'm very willing to learn, so if I got something wrong, please educate me.
Regards, Carl-Daniel