More Power To The Firmware 226
An anonymous reader writes "In More Power To The Firmware Amit Singh talks about technical details of EFI, the next-gen BIOS replacement standard Intel, Microsoft and others are pushing. This is a very informative piece where he talks of issues with legacy BIOS, how it affects those who develop in the firmware environment and how EFI plans to solve these problems. EFI usage examples are included, including a programming example. He contrasts EFI with Open Firmware as well. IMO the second half of the article is even more interesting, where sample FORTH code is provided for displaying a window/mouse pointer GUI inside the Apple/Mac firmware! And of course, there's code for a new 'Towers of Hanoi' animation using the Mac firmware (remember Hanoimania?). Aspiring Mac Firmware Hackers could also check out the suggested projects ;-)"
I'm not a tech guru type... (Score:3, Interesting)
Stability? (Score:5, Interesting)
Retroactive bios (Score:4, Interesting)
Re:I'm not a tech guru type... (Score:5, Interesting)
The only way for this to happen is for MSFT to cut deals w/the BIOS manufactorers (which they have done already w/Phoenix).
*MOST* people are not going to care one way or the other (ie "free" hardware while paying for the software) as long as their computer runs without problems, they have no work lost because of viruses, etc.
It's actually pretty scary when you think about it. You want to buy a piece of hardware? You are going to be buying it w/a MSFT approved DRM BIOS and their OS. Nothing else will install w/that BIOS because that would allow for software that isn't approved to be running (OS included). Take the BIOS out or flash it? None of the rest of the hardware will work either.
Re:I'd prefer an Open Bios... (Score:5, Interesting)
Re:I'm not a tech guru type... (Score:5, Interesting)
Wierd sentence on Open Firmware (Score:5, Interesting)
I'm not quite sure what that last part means - how can you say it's not appropriate to mention when the technology is so similar? Just because it hasn't been used on PC's before is no reason not to learn from what has been used before.
I would have liked to see more of a comparison of exactly whe EFI gives you over Open Firmware of today - I gathered it was the custom pre-boot programs and network connectivity, but I would have liked to see more examples of new things that make use of these features that you can't do in Open Firmware.
It's funny to have a whole article about EFI then show all the cool things you can do with an advanaced BIOS by giving Open Firmware demos. Sort of like watching a Longhorn demo of transparency in UI while working on a Mac.
Re:Firmware (Score:1, Interesting)
Yeah, nobody's ever written a 86 real mode game. The original BIOS came with a BASIC intepreter, you know.
Fact is that the PC BIOS is 15 years past due for replacement. Whether or not DRM is included doesn't change that -- not to mention DRM can be and has been implemented for classic real mode BIOSes.
Re:Firmware (Score:5, Interesting)
Ironically, your Sun Ultra 1's firmware is pretty much the same. It's OpenFirmware, and it uses a Forth interpreter to execute on-adapter code which is used until the kernel is loaded and a system-level driver can be used. This is why text displays faster in the X Window System than on Sun consoles - the console is using a video driver written in Forth and interpreting it on the fly! Hence this is true for all Sparcs back into antiquity. (I used to have a 3/260 which I later upgraded to a 4/260, that's one of the first generation of SPARC-based Sun systems.)
Any EFI motherboards available? (Score:5, Interesting)
Re:I'm not a tech guru type... (Score:5, Interesting)
I don't know of any BIOS-based viruses but there certainly have been some viruses which will damage your BIOS on systems which keep it in flash/eeprom.
EFI is actually OS independent and quite useful (Score:5, Interesting)
While I understand people have concerns that Microsoft is using this as a DRM delivery mechanism, there is nothing that is stopping Microsoft from working with Phoniex to add DRM to today's bios's. EFI (and non-legacy bios environments like openBios) make it easier for non-windows OSes to run on new Hardware. This isn't in microsoft's best interests. Microsoft wants a bios that only runs signed code (like their XBOX), so that you have to ask them nicely for a key to your equipment.
EFI is the firmware that says "NIH" (Score:5, Interesting)
Why, for sanity's sake, can these companies never adopt a perfectly good standard, but do they always have to give everyone headaches by rolling their own? If Open Firmware has some deficiencies, surely they can be fixed with some incremental improvements?
The Intel Architecture is evolving...from the primitive, kludgy, underperforming, el cheapo to the overhyped, overheating, overexpensive and incompatible. Even IBM (Connector Conspiracy) and Apple (Think Different) are more open and standards-oriented these days.
Open Source Firmware? (Score:3, Interesting)
I am into operating system development, and I would like to play around with architectures that I don't have real hardware of. It can't be too hard to write a firmware implementation if the code for the emulator is already available.
If you are aware of any such projects that are not mentioned here, please post. Ones that I know of are OpenBIOS, FreeBIOS, and LinuxBIOS, which are also mentioned in the article, with links.
Mac Firmware (Score:5, Interesting)
It would be fun to see someone port one of those Apple ][ emulators to this thing, so you can actually boot a Mac into an Applesoft programming mode, just like in the old Apple ]['s. If it can handle a simple GUI like in the article, or if it could handle an implementation of System 1, I'm sure an Apple ][ emulation would be no problem.
From what I gather in the article, any of these Forth programs have to be loaded off of the hard drive in order to be executed. I didn't really understand if they could be stored in non-volatile memory, and if the computer could be configured to run them when it is turned on. I don't know how much space there is for non-volatile memory, but it would be interesting to be able to write a really basic OS that runs off of it without having to read from the hard drive at all.
I suppose it's possible since you can update the firmware, but does Apple keep information about how to program the firmware proprietary, or is it open for people to tinker with?
Re:Wierd sentence on Open Firmware (Score:4, Interesting)
The sad thing about intel doing their own stuff is that Open-firmware is here and standard. One of the most interesting ideas of having the F-code engine was to have processor independent drivers on the card. I.e you plug-in the card and it works, regardless of the fact the processor is PPC, sparc, or i686.
One funny trivia fact about Apple's open-firmware is that the firmware understands certain file-systems (HFS+,Ext2) and executable formats (PEF,ELF). The funning thing is the firmware does not understand OS X's executable format (Mach-O) so on every OS X machine, there is an ELF format bootloader.
Re:I'm not a tech guru type... (Score:3, Interesting)
That's one of the reasons Microsoft is so keen on Trusted Computing. It defeats the GPL.
-
Re:Intel versus Planet Earth (Score:3, Interesting)
Re:I'd prefer an Open Bios... (Score:3, Interesting)
Making BIOS calls for everything would also make porting code across architectures a nightmare (Even more so).
Re:Firmware (Score:5, Interesting)
Go right ahead. They don't need laws to ram this crap down your throat.
If you don't have a Trusted Computing compliant system then you will not be able to install any of the new Trusted software. You will not be able to use any of the new Trusted files. You will not be able to access any of the new Trusted websites. After a couple of years you may not be able to get onto the internet at all.
Take the websites for example - it would be much like attempting to surf the web today with cookies and javascript off. Tons of websites simply spit out an error message saying there's something wrong with YOUR computer, and that YOU need to fix the problem.
All sorts of websites already try to lock you out if you try to block ads, or if you have a pop-up blocker, or if you try to deep-link, or use javascript encryption to prevent you from copying anything, or to enforce registration. Well, websites will be able to use Trusted Computing to enforce all of that and more. If your computer is not compliant they will simply lock you out.
The only thing that can stop Trusted Computing is if there is a massive public backlash against it.
-
Re:Wierd sentence on Open Firmware (Score:1, Interesting)
Actually, if Intel can kill "x86 Option ROMs", they'll be doing Mac users a big favor, because vendors will stop charging a huge premium for cross-platform cards.
Re:Firmware (Score:3, Interesting)
Once a government, an individual or a corporation tastes the freedom, they won't easily give up. I see a lot of new happy users of Free software in the corporate world, and I also see them in the governments, at least here in Europe. Once they pay to make a transition to Free software (gaining freedom to choose whom to make deals with, and the economic benefits of competition), I seriously doubt anybody can bring them back. If there is no one industry in the USA that wants to step in the market for "hardware for free software in Europe", either Japan or China will, or Europe will start to produce their own hardware. South America looks just the same (think of Brazil, for a great example). I can't think of the internet going all-trusted with so many content producers being trusted-free.
On a side note, I'm not sure if US laws will be so strong as to prevent US manufacturers from producing non-DRM-crippled-hardware in foreign countries, in order to sell it to foreign countries,thus losing tons of money... will they?
Finally, once again, I agree with you. We need a massive public backslash against Trusted Computing. My way to fight is to get as many individuals to go over Free software, Free music and Free information... and to push my government towards the same goal.
Re:Pre-boot vulnerabilities (Score:3, Interesting)
Yup, its an attack vector. Real Story: A major vendor of network bandwidth wanted to remotely bring up router boxes... using dhcp etc. And remotely boot those boxes. Over the internet.
So, here is the attack vector:
Hacker intercepts communication, capturing digitally signed OS that boots the router box. Now, this is useless, because all the hacker can do is wait for the box to reloaded, and then feed it the same OS image.
Imagine, though, that a little time has gone by. Now, some vulns are known in that particular core. Now, when the router box is rebooted, the hacker can put BACK the vulnerable OS, and rehack.
So, each download image must be secured against the box, to avoid replay attacks. Yes, this was brought up up the review of the "load OS over the internet" project.
Of course, all names have been filed off, to protect.... well, whoever.
Of course no mass market data producer is going to re-crypt data for each individual. That would mean that the OS/CONTENT would have to be re-encrypted after registration, *or* every retail copy would be different, *or* there would be no retail copies (only pre-installed).
Ratboy.
Gas stations and BIOS (Score:3, Interesting)
BIOS is a sort of standard that assures compatibility. When we drift away from that standard, we start losing a very core basic value - the kind of thing that stops us from "filling up at the pump" so to speak.
I want my BIOS. Other things can change but I want my BIOS because I feel better knowing that some things stay the same.
Re:I'd prefer an Open Bios... (Score:3, Interesting)
Too bad it's only available for a limited set of motherboards.
Re:Intel versus Planet Earth (Score:3, Interesting)
The joke I read was "I can see the technician suggesting that Intel uses gorilla/human hybrids to crowbar a Xeon into a Socket-478 package".
And that, ladies and gentlemen is how the P4EE came about.