BIOS' Days Are Numbered
Ninja Master Gara writes "While this article shows Phoenix expanding the uses of the bios, ZDNet UK reports Intel is looking to get rid of it altogether, to be replaced with the Extensible Firmware Interface (EFI) as announced at the Intel Developer Forum. EFI promises a considerable amount of flexibility to system control and startup, legacy support, and programability. And it gets rid of text mode only start up too."
...are cool! I don't need fancy graphics just so that my graphics card can get it's early morning POST exercise.
Why do we need to glorify the start-up screen when text can do just fine... If I wanted glorified startup screens I'd boot up my AIX RS/6000 thank you very much.
Welley Corporation - SLM Scammers
So will we finally be able to embed (part of) our favourite OS into the PC hardware? Remember the Amiga OS ... it had parts of its OS inside the ROM (intuition and other libraries (for graphics drawing and windowing)). A step forward... couple this with FlashCard RAM or otherwise.. and you can make some nice embedded systems. (Real NetPCs running linux with no CD/HD anyone?)
OpenBoot, its an IEEE standard, Sun and Apple use it, its user programable, and cool as hell. Thankfully I rarely use it though, our (production) sun boxes have been nearly flawless since I started. Playing with it at Sun Sysadmin I class last week was one of the neatest things I've done in awhile on a PC. Do any of the other Unix (HPaq, SGI, IBM) vendors use OpenBoot?
09f911029d74e35bd84156c5635688c0
Because EFI has its own filing system that lives on a reserved part of the hard disk, it can become the standard home for a whole set of utilities that have always had an awkward fit with the BIOS: things like disk partitioners, multiple OS boot controllers...
I'm guessing Microsoft is already adding code to windows to wipe out that last part from machines, as it might "confuse people"...
Honestly, this sounds very much like they're replacing the BIOS with something that works very much like a BIOS, but prettier...
Code, Hardware, stuff like that.
Another function of BIOS was (and still is) to give the chance to configure some hardware CMOS parameters. Again, DOS was not able to do that. With Linux kernel you have NVRAM driver, which can change most of such parameters right from OS. I don't know any parameters, which either today or in near future would be unable to be set from a NVRAM driver of the OS kernel.
The main reason of changing those parameters was inflexibility. But today nonody will set IDE disk parameters - instead they used AUTO. Same for many other things. Although, some of CMOS might not be automatically tuned up, I am not sure.
The last (from what I can recall right now) reason to still use BIOS is to point to the boot device. Perhaps that the function that will survive longer than other. At least that's the on;y function I still use in Apple's firmware :)
Less is more !
What happens if the hard drive fails? The CNet article says that the filesystem is stored on the hard drive. And how much space will the file system take up? I hope they have thought of this.
http://phreakinb.com
Like a lot of people here, I've been wondering why Intel is trying to reinvent the wheel when OpenBoot is both flexible and reliable. It's a little intimidating for Forth newbies (like myself), but I've never had a problem with any of the Sun or Apple boxen that use OF.
The motivation behind EFI is probably simple economics. Intel has effectively maximized their revenue from CPUs. This forces them to branch into other markets to keep the profits growing and the stockholders happy. By improving on the BIOS they make a more compelling case for Intel chipsets, especially in the highly profitable server arena.
OpenFirmware is an open standard, so other chipset vendors could implement their own OF solutions without ever paying a dime to Intel. EFI is probably patent encumbered and represents a nice opportunity to collect fat license checks from companies like VIA and ServerWorks. Also, MS has demonstrated how profitable controlling a platform can be. Intel's probably trying to extend their strong processor position so that they have more control over your computer. OF is, well, open. That makes it kind of suck as a monopoly extension tool.
That's what I've come up with, anyways. If anyone's got a better theory please share.
This
To make a point, Open Firmware works nice *now*. I've seen firsthand the difference between OF on an old Mac G3 and a new G4; it took years to get things worked out. Hopefully Intel won't be cursing PC hackers with years of bugs, missing functionality (older OF versions couldn't boot CDs, or could but couldn't read ISO9660, etc.), and unintelligible DEFAULT CATCH and CLAIM FAILED messages.
Or they might get it right the first time. Or they might use something that already works. I'm not optimistic though.
--- this comment is presented in WIDE SCREEN STEREO!!!
I care for a different reason: the biggest curse of the PC BIOS is the fact it only works with attached heads and hands. I want it to work without requiring me to sit in front of the system.
I *hope* that's what the LAN access will achieve, and that we won't be left with a shitty, sit-in-the-machine-room experience with more colours.
Also, the LAN stuff, while potentially cool, could also be a pain in the arse from a security point of view. WOL has cause conniptions for come people in the past, and that's very simple indeed.
Personally, I'd like mine to boot up like that one out of the film "Alien", complete with flickery graphics and blipping as it writes to the display. I always thought that looked cool. I certainly don't need reminding who built the motherboard in 16 million colours every time I start up.
And another thing - what's to stop MS "embracing" a few MB makers and converting the boards to boot only one OS - say, for example, Windows? It would be trivial to add proprietary code to this, which prevented anything else booting - obviously then anyone adding the required code to boot, say, anything else would be violating our favourite law...
Code, Hardware, stuff like that.
First of all, I'll link to my post two days ago.
Intel however, doesn't seem to quite understand the issue. I mean, EFI is partially stored on the hardrive?! Sounds to me they are making things more complex, instead of less.
The quote " In effect, it's a tiny operating system in its own right," scares the shit out of me.
And all this hype about graphics, I mean, come on. I wrote a boot loader in 64K that booted straight into true color, 800x600 graphics mode, including a compressable image. It's not a big deal. And of course "With the BIOS, that's limited to VGA or worse" is horseshit, the BIOS can use the VESA BIOS to switch to any mode it desires. This is all a non-issue. It's been solved.
Yes, network diagnostics is good. But I'd rather have a secure network boot, because then I can do anything, including loading a remote OS even though the harddrive shat on itself.
The BIOS is the last place on the PC where people have to write in low-level assembler code, and we want to end that" he said. Instead, EFI is almost entirely written in C,
Bullshit, there are BIOSs that are written in C. Actually, my bootloader is written in C++. There.
so if your OS freezes you can go in and look at the state of the machine, change configuration, load a different driver, and do a sensible restart
Yeah right, I can totally see my mom do that. I've spent hours trying to get Windows XP Embedded to NOT probe a secondary IDE channel because it was not terminated correctly and would hang the boot, using the kernel debugger and all. Never got it to work. And this is going to all work just like that?
Finally, it can pretend to be a BIOS. "We're not expecting people to throw out the BIOS overnight, so EFI can support legacy systems by running on top of an existing BIOS and handing over control when appropriate."
Ah! I was wondering where that backwards compatibility was. I'm so happy that we are moving one step forwards and two steps back.
Yep, this probably sounds a flamebait, a silly rant, whatever. There's some good ideas there, but I don't think they are on the right track...
At the end of the day, the BIOS (boot loader) should be in Flash (ROM) so that it still works even if there's no harddrive. It should get the hell done with all hardware initialization and boot the frigin OS. Putting more complexity in the BIOS means more bugs, means more updates, means more security risks.
Yes, OpenFirmware and OpenBoot are usually in ROM. I think the original poster was getting confused with the Apple "NewWorld" Mac OS ROM file, which is loaded by Open Firmware on the iMac, Blue and White G3 and newer. It contains the basic MacOS routines that used to be in ROM (along with a ELF loader stub, a small startup icon, and a short Forth program to unpack everything and start the stub).
-lee
I see a double edge sword with basing EFI with a common language like C. It's great because C isn't that difficult of a language to learn, and most colleges around the US still offer courses teaching the language (great news for those of you looking to pick up a few extra course credits.) Which tells me that sooner or later there might be an abundance of utilities written to use within your future EFI setup.
But on the cutting side of this blade, I see that using a language that is pretty accessible to learn, could mean even more havoc in a already pretty chaotic realm of keeping dirty malicious code off (y)our systems. And what about Paladium? Is it me or does this give a big green flag to the RIAA and other big corps trying to cash in on supporting them, to be able to push thier "Digital Rights" acts?
So forgive me if I'm not doing cartwheels Intel fans, I just see this as a great idea for use in a perfect world, but deffinately no good for this one we live in.
======
Talk sense to a fool and he calls you foolish. - Euripides
No, more like a Commodore 64. The BASIC interpreter built into the Apple IIGS ROM didn't have a file system driver and thus couldn't save or load programs. (Unlike the Apple IIe, the GS didn't have a line-in connector for tape program storage.) One had to boot to Apple DOS 3.3, Diversi-DOS, or ProDOS to be able to save or load programs. The C=64, on the other hand, did have a file system in ROM.
Will I retire or break 10K?
Speaning as someone who has designed a graphics accelerator chip, I can say that having to include a VGA controller is a total waste of design effort and circuit area. It's useful ONLY for boot-up on PC's, and then as soon as a real OS comes up, it's turned off and forgotten about. It's a pointless anoyance, and I'll be elated to see it go away.
The reason why BIOS exists as it does today is because motherboard manufacturers wanted to add features that the major OS's were not supporting. For example, system sleep on laptops running Windows NT. NT doesn't support that, so the BIOS was updated to do the work "under the covers". Another example is USB keyboard support. In order to have your USB keyboard work in DOS or any other legacy OS, the BIOS has a USB driver built-in that translates USB keyboard events to PS/2 keyboard commands. The OS has no idea what's going on.
All of this could have been avoided if BIOS developers weren't so goddamn lazy. I used to be one, and my co-workers were experts at hacking up the BIOS code so that it would just barely work for whatever new feature they needed to add. The last thing they were going to do is redesign anything so that it made sense. Half of the code hadn't been touched in 10 years, and there was no one left who understand it anyway.
I hear Dell is planning on laying off all their BIOS developers and moving everything to China. I can't wait until some huge customer calls because they have some obscure hardware from the 90's that won't work in their Itanium box, and the problem won't get fixed because they don't have anyone left who knows what they're doing.
And the men who hold high places must be the ones who start
To mold a new reality... closer to the heart
They went into detail on the BIOS and were EXACTLY what I needed, but the guy wanted twenty five bucks EACH for them. Now it looks like I won't have to, but I'm still pissed off. Charging a fortune for stuff people really needed is wrong.
Typical /. reader. What the heck is wrong with actually charging for something?
You yourself stated that it was EXACTLY what you needed and would therefore have had a lot of value to you, yet you considered it not worth paying for.
So which ws it? Useful (and therefore worth paying for) or not useful (and therefore not worth getting your knickers in a twist about)?
Okay, we've been trying to get rid of the damned floppy for how long? Five years? And it's still a fundamental requirement for updating most BIOS's?
How long did it take to put the ISA bus to bed after PCI came out? Ten years?
I'd love to see the BIOS go away as much as anyone, but I just don't see this happening in a reasonable amount of time. It's just too firmly entrenched in every PC, add-in card, and software doo-dad to easily do away with. And I don't care how good the "legacy" support is, I'm sure it will not work more frequently than it does work.
Then again, I am a cynic, although you'd never know it.
In the end they will lay their freedom at our feet and say to us, Make us your slaves, but feed us. - Fyodor Dostoyevsky
With LinuxBIOS you can also ditch your BIOS. It really only is "easy" to do if you have your BIOS on a EEPROM thats a DIP. You can flash a slimed down version of the Linux kernel into an EEPROM (512KB min) and boot up in a couple seconds.
Provided your motherboard has a 40pin DIP socket for the EEPROM, you can replace it with a DoC (Disk on Chip) and even have a small FS on it.
For a Linux HTPC, this would be perfect. You could have your basic root FS flashed into a DoC and it could boot up to your HTPC gui in just a couple seconds -- completely tollerable by any non-geek.
Also, LinuxBIOS isn't just for x86. There are some Alpha clusters that use LinuxBIOS for their "BIOS".
The only problem with it, is that you can't easily salvage old hardware like your old P1 because usually, the EEPROM is too small.
When linuxppc first came out, OpenFirmware was a godsend. You could snoop hardware info from it, tell it which disk (and where on the disk) to boot from, all kinds of fun stuff. I used it as a boot-loader on my Powerbook 3400 forever. And it's only gotten more powerful since its inception at Apple. Haven't messed with it on other platforms, though.
My favorite part was learning to write scripts in forth for making boot menus and such.
Just for the record, EFI is already present on the Itanium. Oh and what is not in the article: it's damn slow for nothing. I mean seriously, it has designs so that for example if you forgot to plug in your usb keyboard before you pressed the big red button you can plug it in and it will get recognised. Did I mention the fact that on the new Itanium 2, the whole boot layers (3 in total) take up a whopping 30 seconds before anything is even shown on the screen???!! And of course then it's done yet, some more work still needs to be done.
---
Get rid of BIOS...no more assembler, written in C...networking...graphics...LinuxBIOS?m skeptical about the GUI, I mean, Apple has had the GUI in ROM for years if I read the specs correctly, but, well, I'm just thinking about that glorified christmas tree^H^H^H^H^H^H^H^H^H^H^H^H^HGUI that runs on too many PCs these days, I mean, you don't want to expand your ROM from 4MB to 4GB just because they wanted to embed Windows XP?
Well...I'
---
"Intelligence is the ability to avoid doing work, yet get the work done."
-- Linus Torvalds
Please correct me if I got my facts wrong.
Intel: BIOS boots software on HDD which then boots OS.
It's like comparing apples and, er... apples.
Personally, I'd prefer the stuff in a PROM, like some real computers have had for a while now (ah... the joys of a Sparc 5...).
The futility of putting essential parts of the computer architecture (essential to the OS, that is) on a semi-disposable item such as a HDD is staggering.
oh brave new world, that has such people in it!
Dell is dropping the floppy as part of their standard configuration and they seem to be favoring USB flash dongles and CD-RWs. Gateway has started including a 6 in 1 (Sd/MMC, CF, SM, etc) card readers with one of their Laptop Models (The 400L). The new technologies will battle it out for the "Ubiquitous" title. I'm voting for the USB dongle since it seems to be the most univeral.
The point is that the only reason floppies are still around is that so many of us "old folk" are comfortable with them. There is better technology available! You can boot from CD, or even from USB dongles if you need to. (Maybe we could market a l33t h@x0r pw reset USB dongle...)
Let it go.. We let go of the 8-track (most of us any way), we let go of our Commodore 64s, our Apple IIs, the 5.25" Drive. It's time to let go of the venerable 3.5" and make room for new and better solutions.
If there's something that you can do with a floppy that you can't do with SD/MMC, CDR/RW, or a USB dongle, speak up, I'd love to hear it!
Dupe posts are
Hear! Hear!
BIOS provides an important feature: hardware abstraction.
Originally, the BIOS provided the same functionality that is now provided by the manufacturers on a floppy disk/CD. The BIOS contained the drivers for the hardware.
How many times do we see questions about the timeframe for Linux drivers for new hardware, or complaints about the inability to write a driver because a manufacturer won't release detailed specs?
If we returned to a BIOS like arrangement, then we would be able to install the OS's of our choice without having to write hardware drivers specific to those OS's.
I say we need more BIOS, not less. We need to come up with a new spec that brings the BIOS up to date, and takes the new kinds of devices into account (sound cards, superduper video cards, etc.).
And just to take it one step further, devices that connect via the various new bus structures (USB, Firewire, etc.) should be able to yield a driver on demand by the host. That driver should be in some virtual machine format that can be JIT compiled/interpreted by the host.
-- I have monkeys in my pants.