Slashdot Mirror


More Power To The Firmware

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 ;-)"

68 of 226 comments (clear)

  1. I'm not a tech guru type... by Dagny+Taggert · · Score: 3, Interesting

    ...but can you imagine any sort of Windows-dependent BIOS? Is this in our future? Is it even possible? Or, worse yet, a Windows-based BIOS of some type where the OS actually IS the BIOS?

    --
    Don't be a looter...and yes, I know that it's spelled with an "A" instead of an "E".
    1. Re:I'm not a tech guru type... by Oddly_Drac · · Score: 4, Informative

      "but can you imagine any sort of Windows-dependent BIOS?"

      No. Luckily, the article didn't mention one.

      --
      Oddly Draconis
      Too cynical to live, too stubborn to die.
    2. Re:I'm not a tech guru type... by maxwell+demon · · Score: 4, Informative
      ...but can you imagine [...] a Windows-based BIOS of some type where the OS actually IS the BIOS?

      Well, given that there's LinuxBIOS ...
      --
      The Tao of math: The numbers you can count are not the real numbers.
    3. Re:I'm not a tech guru type... by garcia · · Score: 4, Interesting

      I have mentioned this plenty of times before. In order for Windows DRM to *really* work the OS has to require a BIOS that is tied directly to it.

      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.

    4. Re:I'm not a tech guru type... by Anonymous Coward · · Score: 2, Informative

      Ans what about Amiga OS. THe OS was the BIOS. at least for A1200 and before

      just wait until the 1st BIOS virus

    5. Re:I'm not a tech guru type... by Psiren · · Score: 4, Insightful

      Then there will be a nice market for people to build non DRM machines, so that people can run their non Windows OS. I don't think it's time to panic just yet.

    6. Re:I'm not a tech guru type... by x0n · · Score: 4, Informative

      The OS is the BIOS? Either you're trolling [but given your subject disclaimer, perhaps not], or you misunderstand the concept of abstraction layers, and their ordering. The BIOS cannot be dependent on Windows, it sits beneath the OS. The OS is dependent on it. Drivers, in effect, are mini-BIOSs in themselves. They abstract out the different hardware devices to a standard windows API. The BIOS that comes with your machine abstracts out the out-of-the-box components of your motherboard among other things. Sometimes windows drivers talk to the bios, but mostly they skip it altogether.

      - Oisin

      --

      PGP KeyId: 0x08D63965
    7. Re:I'm not a tech guru type... by hal2814 · · Score: 4, Interesting

      I don't see how DRM can be solved at the BIOS level. Unless the media player and file system are completely controlled by hardware with no OS intervention, there will always be a piece of software asking "Is this file OK to play/copy?" As long as this query exists, there is an opportunity for a programmer to fake the response and play the file anyways.

    8. Re:I'm not a tech guru type... by Mr.+Neutron · · Score: 5, Insightful
      I don't think it's time to panic just yet.

      You do realize that once this is in place, the **AA will convince Congress that only pirates, criminals, and terrorists would possibly want a computer without a "trusted" BIOS, don't you? Non-trusted hardware will go the way of Macrovision-free VCRs and Broadcast-flag-free HDTV tuners. When all of the Linux users and OS hackers raise holy hell, the response will be:

      Jack Valenti: "These people are just a fringe nitch. Why should we threaten our precious content just to cater to the whims of a few people?"

      Bill Gates: "The 'Trusted Computing Consotium' has made available [closed, blackboxed, and encrypted] APIs to the 'trusted hardware' industry spec. Why can't Linux use them just like any other OS?"

      --
      dinner: it's what's for beer
    9. Re:I'm not a tech guru type... by Tryfen · · Score: 4, Insightful
      What if the response is signed with a private key?

      eg
      Re your request 1010 @ 12:34 5/6/2004 to do XYZ - ok. HASH DSFJ$K%GDFG%%E$


      Sure, you'd possibly be able to hack it. But if your DVD player's BIOS has non-changable firmware and talks to the systme BIOS over an encrypted channel - what chance would you have?

      This is about having secure communication between everything. DVD -> Soundcard -> Speakers. All requiring authentication before they'll do anything.
      --
      If a square is really a rhombus, why aren't all triangles purple?
    10. Re:I'm not a tech guru type... by drinkypoo · · Score: 4, Interesting
      AFAIK all legacy Amiga computers (Up to the Amiga 4000) have half of the OS in ROM BIOS, allowing you to put just a bootblock and a program on a disk and still have the benefit of the basic GUI functionality. This is less goofy than it seems because AmigaDOS has a feature called "patchlists" that allows you to patch functions in an OS-supported fashion without any kludges. Well, without any kludges that aren't part of the OS anyway. This in turn is made reasonable by the utter lack of memory protection, which is not a feature in a modern operating system, it's a serious liability.

      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.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    11. Re:I'm not a tech guru type... by operagost · · Score: 4, Insightful

      This is why it's good that IBM is in the Linux fold. If they want to keep selling Linux servers, they'll need to support a "trusted" BIOS. In order to abide by the GPL, they will have to release the source. This will allow support across the board, even on cheap consumer DRM-enabled devices.

      --

      Gamingmuseum.com: Give your 3D accelerator a rest.
    12. Re:I'm not a tech guru type... by Anonymous Coward · · Score: 4, Insightful

      Not to mention that Intel is also a huge Linux-backer, and is basically paying Linus Torvolds' salary now days. You can be sure that any Intel-based inititive is not going to be hostile to Linux.

      (After fighting with grub's perverse view of the universe for a week, the conclusion is that better firmware can only help Linux adoption...)

    13. Re:I'm not a tech guru type... by flinxmeister · · Score: 2, Insightful

      Yeah, if non DRM machines become difficult to aquire...it'd be a shame to be relegated to a fringe niche who build our computers from kits, use obscure operating systems, share code and knowlege via informal and uncommercial channels, and generally operate in communities of geeky friends under the radar of multi-billion dollar companies.

      Sometimes going back to such things seems like a really, really good idea.

    14. Re:I'm not a tech guru type... by pilgrim23 · · Score: 3, Insightful

      All that this will mean is that the Hardware Of The Future will be built in fabs all over Asia, Africa, the Pacific, etc for non-US customers, developing inovative and new software/hardware products. Meanwhile, the Gnomes of Redmond will insure that inovation in no way enters the American equation. First the third world gets a boost in communication by not needing to amortize any legacy geer, now, if such nonsense goes forward it will boost them on the hardware front. Is Senegal going to be the new Silicon Valley?

      --
      - Minutus cantorum, minutus balorum, minutus carborata descendum pantorum.
    15. Re:I'm not a tech guru type... by perlchild · · Score: 2, Insightful

      Now, IANAL but what I read on this topic seemed to indicate that only binaries would be signed, so even if you had the source, you'd be running untrusted binaries without any capacity to get them signed. This would of course be ok for IBM, but would cancel the benefit of having the source(you can't build a working binary from it). Maybe GPL4 can say that the source you get from a developer has to "be usable to generate a working binary equivalent to the binary you receive from vendor" next time...

    16. Re:I'm not a tech guru type... by Alsee · · Score: 4, Informative

      Developers (that means you) will have to be able to sign their own software, or the system would be pointless. This would be an extra command in the makefile, no biggie.

      You don't understand Trusted Computing. It's not about signing software. There's no need to sign at all. What happens is if you change the software at all - even a single instruction - that that software no longer works with and existing data and can no longer communicate with other programs on the internet.

      The Trust chip generates a hash of the software. The hash is linked to an encryption key. If you change the software you lose the hash and can no longer get the the decryption key at all. Nothing works anymore. Very biggie.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
    17. Re:I'm not a tech guru type... by Alsee · · Score: 2, Interesting

      No, Trusted Computing defeats the GPL. You may have the source, but that source is useless. If you change a single line of it the program stops working. The software is no longer Trusted and it can no longer decrypt anything.

      That's one of the reasons Microsoft is so keen on Trusted Computing. It defeats the GPL.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
    18. Re:I'm not a tech guru type... by DeathPenguin · · Score: 2, Informative

      >>just wait until the 1st BIOS virus

      There have already been several, that was one problem with using DOS.

    19. Re:I'm not a tech guru type... by sjames · · Score: 4, Insightful

      That's the heart of the problem. The term 'Trusted Computing' only makes sense when you look at it in an orwellian sense. It's not the owner or user that can trust the computer, it's MS and the *AA that trust it.

      If it was really worthwhile (and the name truthful), the BIOS would demand MY signature on the OS that I trust. In turn, the OS would demand MY signature on the apps that I trust. It would be reasonable in either case that I could sign a vendor's public key if I trust anything the vendor signs as well.

      Naturally, MS and the *AA don't want that, they want to hold the keys (and thus the power) over the machine even while other people pay for it.

      I am fine with them protecting their Preciousssss (erm, IP) if they want. I would suggest that they encase it in concrete and bury it at the botton of the ocean. Nobody will copy it then. If they like, I could even toss it into a volcano for them. (I seem to remember something about that in a highly successful and unencrypted book somewhere).

    20. Re:I'm not a tech guru type... by Alsee · · Score: 2, Informative

      Anyway, there will have to be a mechinism to upload your own hashes or the system will be useless for anything but tivos and xboxes.

      That's what I'm saying - there is NO way to "upload hashes". And there is no need to attach any signature to the EXE at all.

      When you run the program the Trust chip generates a hash value for the program. There is no hash attached to the program. There is no signature attached to the program. The chip generates a hash of the software on the fly, and uses that to generate or access an encryption key. Any data that program wants to read or send goes through that encryption key.

      YOU HAVE NO CONTROL over the hash.
      YOU HAVE NO CONTROL over the encryption key.

      The system does not verify that the software is has a "good" signature. It allows absolutely any software to run. The only thing it does is see if the software has changed. If the software is changed then it will still run, but it won't work. It won't be able to read any existing data and it won't be able to talk to other programs it's supposed to talk to.

      There is a whole big elaborate system built on top of this. But fundamentally it is designed to deny you control over your own computer. Trusted computing is about the owner not being trusted, instead other people can Trust that your computer will enforce rules against you, and that you will be powerless to tell your computer to do something different.

      When you run Trusted DRM music software, that software has a certain hash. That hash produces a specific encryption key. All of your DRM music files are encrypted with that key. With that key the chip then decrypts the DRM files for the player and it can play your music.

      However you are forbidden to ever know that encryption key. If you change the DRM music player in any way - perhaps some sort of change that would break the DRM protection - then the chip generates generates a different for the changes software. With a different hash you can no longer get the decryption key. So even if you broke the player's DRM system, the player can no longer read the music files.

      The RIAA can then Trust that your computer will not allow you to do anything except exactly what the RIAA decide to allow you to do. Exactly no more and no less than what the program they gave you will let you do or force you to do.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
  2. Stability? by ThisNukes4u · · Score: 5, Interesting

    I'm not in favor of increasing the complexity of the bios. They can barely get them stable after a few updates now, how will it be when they are doing alot more? Yeah I know that Sun Sparc's have a complicated bios, but they did it right. I don't trust Microsoft and Intel to do it right.

    --
    thisnukes4u.net
    1. Re:Stability? by Oddly_Drac · · Score: 4, Insightful

      "I'm not in favor of increasing the complexity of the bios."

      Tough, it's happening.

      "They can barely get them stable after a few updates now, how will it be when they are doing alot more?"

      Modern BIOS is a lot more capacious that the days of the XT and AT, and it's usually really low level stuff that goes on. Given the separation between the people that do the hardware and people that have to handle the low level drivers, it's no surprise that hardware leaves the warehouse with unfinished drivers; couple to that the dizzying array of hardware that can attach to a motherboard, and you are going to have some patching. EFI look a lot more flexible in what it can do.

      "I don't trust Microsoft and Intel to do it right."

      And they speak so highly of you. Despite crappy business practices, they actually have some talented people that produce some good solid work. If you want to be paranoid, why don't you look up EFI and cross reference with DRM?

      --
      Oddly Draconis
      Too cynical to live, too stubborn to die.
    2. Re:Stability? by starseeker · · Score: 3, Insightful

      "'I don't trust Microsoft and Intel to do it right.'

      And they speak so highly of you. Despite crappy business practices, they actually have some talented people that produce some good solid work. If you want to be paranoid, why don't you look up EFI and cross reference with DRM?"

      It could be argued that the DRM tendancies of Microsoft/Intel are a reason not to trust them to do it right. As far as DRM goes, I would tend to define a BIOS with that in it as NOT doing it right.

      --
      "I object to doing things that computers can do." -- Olin Shivers, lispers.org
    3. Re:Stability? by gl4ss · · Score: 2, Insightful

      *And they speak so highly of you. Despite crappy business practices, they actually have some talented people that produce some good solid work. If you want to be paranoid, why don't you look up EFI and cross reference with DRM?*

      what does talented people have to do with trusting them to do it 'right' for our viewpoint? in fact, why do you think that they would do it 'right' when even you accept the fact that they have 'crappy business practices' which is ultimately what chooses how they'll execute it, NOT if they have talented people or not!

      --
      world was created 5 seconds before this post as it is.
  3. I'd prefer an Open Bios... by cbreaker · · Score: 5, Insightful

    We don't need DRM built into the BIOS, and that's exactly what would happen if Microsoft had a say in it.

    I agree that we don't need more complexity. Let the OS handle the hardware as much as possible.

    --
    - It's not the Macs I hate. It's Digg users. -
    1. Re:I'd prefer an Open Bios... by Anonymous Coward · · Score: 5, Interesting

      On the contrary, it could be interesting if the BIOS were to handle as much of the hardware as possible. Drivers could be written for the BIOS, and then that would solve our *n[ui]x problems since every operating would be accessing these routines the same way. Wouldn't something like this level the field?

    2. Re:I'd prefer an Open Bios... by drinkypoo · · Score: 2, Informative
      The complexity has to be somewhere. If the BIOS gets simpler the devices have to be more complicated to take up the slack. You can't rely on the OS handling the hardware until it boots, after all, so you have to get there somehow. The BIOS doesn't need to talk to the sound card or anything like that, because autoconfiguration of the basic parameters of devices are handled by plug and play, which is an integral part of the PCI specification (though perhaps not by that name, I've never actually read the specification.) Adapter cards and onboard peripherals get IRQs, IOports, and memory ranges from the PCI system controlled by the BIOS. But, what do you do after that? Currently in the PC world the BIOS jumps (JMPs, even) into the adapter BIOS and executes some of its code from ROM, optionally caching that ROM into "shadow" memory and executing it from there for speed, but once the OS loads the driver takes over and the BIOS isn't really used. AFAIK Linux only communicates with the BIOS at boot time, while loading assorted drivers, to find out what kind of parameters they should use, but many drivers go straight to the hardware and don't even bother with it.

      Anyone know how often Windows currently jumps into the BIOS today? However often it is, it will become moreso when DRM becomes a BIOS function...

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    3. Re:I'd prefer an Open Bios... by DeathPenguin · · Score: 2, Interesting

      Ideally, perhaps, if Intel would GPL the whole BIOS, and I'm not talking about the table scraps they CPL'd a few weeks ago. Such routines would have to be completely open for *EVERYONE* (Not just NDA holders like Microsoft).

      Making BIOS calls for everything would also make porting code across architectures a nightmare (Even more so).

    4. Re:I'd prefer an Open Bios... by cbreaker · · Score: 2, Interesting

      Yea! Exactly. I checked out the GPL bios thing that those guys are working on at LinuxBIOS. I like they way they go about it - they let Linux (the OS, not the LinuxBIOS) handle as much as possible. Get basic functions up, and let the OS do the rest. Of course, they also have some cool features like network accessable bios, but overall it's very simple. "Let Linux do it" is their motto.

      Too bad it's only available for a limited set of motherboards.

      --
      - It's not the Macs I hate. It's Digg users. -
  4. Ya, shure by YellowElf · · Score: 3, Funny

    We don't need no stinkin' software, firmware will do it for us.

    --
    Insert witty saying or aphorism here.
  5. Retroactive bios by IamGarageGuy+2 · · Score: 3, Interesting

    Apple has been doing this since the beginning, since they control all hardware (or has to be approved by them). Having MS or Intel do it on a box that will have an immeasurable amount of peripherals by different manufacturers is only looking for problems. It may be possible but I fear it will be at the expense of creativity and thinking differently will not be an option.

    --
    Stay tuned for new sig...
    1. Re:Retroactive bios by cbiffle · · Score: 4, Insightful

      On the contrary: if they do this right, it could really help hardware compatibility.

      In the case of Sun and Apple machines, once you've got the Open Firmware driver in flash or ROM on the card, it just works. You can use it from the firmware, boot the system from it (if applicable), etc.

      Contrast with my damn PC, which can't even boot firewire or my USB key, despite having both ports on the motherboard, where the BIOS people should have been able to make them fully compatible.

      EFI has the potential to be a more modular solution (hence the E in EFI) where third-parties -- Promise, Adaptec, 3COM if they're still around -- can drop in drivers. No more relying on your mobo/BIOS manufacturer for boot-and-root support for your Megatron IV whatever, or remote console support for your Groovynet card.

      This is a Good Thing.

  6. Linux Kernel discussion by eddy · · Score: 5, Informative

    Here's a link to an older KT entry; "Status And Discussion Of EFI (Extensible Firmware Interface) Support"

    Explains some history, rationale and technical details.

    --
    Belief is the currency of delusion.
  7. pocket pc by minus_273 · · Score: 2, Informative

    heh reminds me of a pocket pc where the Windows OS is in the ROM

    --
    The war with islam is a war on the beast
    The war on terror is a war for peace
    1. Re:pocket pc by minus_273 · · Score: 2, Informative

      "Sleek, expandable, and wireless-enabled, the Compaq iPAQ 3835 Pocket PC offers a powerful mobile computing tool that fits in the palm of your hand. It comes with 64 MB RAM and 32 MB ROM, a fast 206 MHz Intel StrongArm processor, and a bright LCD screen that displays 65,000 colors."
      no it is defiently in the 32mb of ROM. When you changed your OS you probably overwrote windows and put linux (im assuming thats what it is) on it.

      --
      The war with islam is a war on the beast
      The war on terror is a war for peace
  8. Re:hm by IamGarageGuy+2 · · Score: 4, Funny

    Now, now - that's enough of the negative thoughts. I think you should go to the M$ retraining centre for re-education right now.

    --
    Stay tuned for new sig...
  9. Firmware by starseeker · · Score: 5, Insightful

    Glad to see there is attention being paid to the firmware end of things both commercially and as open source - that's one area your average geek is a little leary of toying with, due to Inoperative Hardware potential.

    What I always worry about is the non-techical end of these things. BIOS level control on what software a computer can run is a much harder obstruction to overcome than things like driver issues. I wonder if they won't use the "Next Generation" mantra to say this is the perfect time to pass legislation that requires DRM control be built into all computational devices. OpenBIOS wouldn't be of much use if DRM laws require a closed system.

    Also, if firmware gets too smart, you might get things like a DVD drive refusing to play a movie unless your operating system can guarantee it that you computer doesn't have the ability to copy content illegally.

    When you can program games in BIOS level systems, I start to get a little wary. Keep my BIOS to the minimum please - configuration options needed to handle my hardware (things like boot order, low level configuration options the OS shouldn't know about, etc.) should be all the capability needed. A BIOS should be simple, efficient, and stick precisely to its job. I've got an OS for the rest. If the new system is good for that type of work, excellent. But if the hardware starts getting too smart for its own good, then I might wind up hauling out those two Sun Ultra 1s I bought - they should run more or less forever and I'll live with slower speeds in order to stick with a consumer friendly machine.

    --
    "I object to doing things that computers can do." -- Olin Shivers, lispers.org
    1. Re:Firmware by drinkypoo · · Score: 4, Interesting
      The reason you can program games in OpenFirmware is that it is versatile. In spite of its flexibility, because it is based on Forth, it is still simple and efficient.

      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.)

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    2. Re:Firmware by Alsee · · Score: 4, Interesting

      If USA's DRM laws don't aply here in Spain, I will be glad to swap a crippled BIOS by a shiny Openfirmware

      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.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
    3. Re:Firmware by 4lex · · Score: 2, Interesting

      I agree with you... but I sense the tide is changing. Can't you hear it from where you are? It's only a rumor, but you can already hear it growing louder...

      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.

      --
      My journal. Mainly about freedom.
  10. Wierd sentence on Open Firmware by SuperKendall · · Score: 5, Interesting

    Let me add something that I find remarkable: I have not seen a single reference to Open Firmware in any EFI specification, presentation, whitepaper, or related document. Perhaps I did not look hard enough. This is not a criticism though. Some might argue that EFI's pathbreaking-ness is valid in the context of PCs, so it is appropriate not to mention prior similar ideas.

    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.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Wierd sentence on Open Firmware by Matthias+Wiesmann · · Score: 4, Interesting
      Actually, Apple also had to do a transition between machines without open-firmware to the one with it, so there was some backward compatibility. On the other hand, I suspect the newer macs could not boot older oses (I don't know if EFI machines would seriously boot Windows 95, and why anybody would try that...)

      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.

  11. Any EFI motherboards available? by jared_hanson · · Score: 4, Interesting

    So I glaned over the article, and while it mainly focused on EFI being done for IA-64, it also hinted that EFI was available for x86. Does anyone know of any reasonable priced motherboards that use this as opposed to an older BIOS? I'm looking for the hinted at x86 support, as I don't feel like buying an Itanium. Also, while we are on the subject, is this an Intel only thing or does AMD have a say in the matter?

    --
    -- Fighting mediocrity one bad post at a time.
  12. EFI is actually OS independent and quite useful by jayslambast · · Score: 5, Interesting

    I've been using EFI (on Itanium) for quite some time, and have had zero issues with it. I really like the fact there are DCHP modules that allow networking to be started without the OS running. They have ftp servers, disk drivers and you can boot your machine from a remote image using bootp services. If your OS is dead on your disk, you can restart to efi and download a previous image on to your harddisk (or remote boot/install). Heck, you can run your code without even booting the OS. Imagine dedicated distributed.net clients that run straight from EFI without the overhead of an OS.
    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.

    1. Re:EFI is actually OS independent and quite useful by jayslambast · · Score: 2, Insightful
      And that back-end is going to be buggy if it's for some random bytecode that isn't widely used except for some silly EFI thing and is tested exclusively with just a few versions of Windows and _maybe_ occasionally on Linux.
      bytecode has one significant advantage, it allows pci cards that store option roms the ability to run on multiple architectures. There are quite a few Mac people that aren't too happy they have to wait for the latest geforce card to be released on their machine, cuz the option ROM only has x86 code stored in it. Being able to plug the same grafix/io card into multiple machines with different arch (x86, PARisc, IA64, Sparc, power4, m6800....) without reburning the option rom can enable hardware developers the ability to sell their cards to as many people as possible. Granted arch-specific drivers will be needed per OS, but at least you don't have to buy a special version of the card to use it.

      * Source code. LinuxBIOS works today, and is a lot more flexible than EFI will _ever_ be.
      Not to be a troll, but just cuz you can say it doesn't mean its true. Only history will be able to say that. Many of your comments are valid, but a balance needs to be made by supporting legacy vs. enabling hw and sw makers the freedom to innovate. I agree its annoying trying to get something to work when you didn't have any involvement in the design, but creating a hardware interface that meets everyone's needs (usb, grafix, lan, fibrechannel) might be worse than dealing with the problem. Hell, I'd love it if ieee standard came out that required everyone to either be little endian or big endian, but the hw world can't even decide on that. Can you expect them to come up with a standard interface for accessing devices.
  13. EFI is the firmware that says "NIH" by RAMMS+EIN · · Score: 4, Interesting

    The author mentions that EFI is somehow better than Open Firmware, but I fail to see how. It all sounds like Intel decided to go their own way again (just like their Itanium had to be different and incompatible with any (RISC or CISC) CPU out there).

    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.

    --
    Please correct me if I got my facts wrong.
  14. Intel versus Planet Earth by Alan+Cox · · Score: 4, Funny

    I found the assertion that 64bit PC's don't use the BIOS rather amusing. Evidently bits of Intel still haven't managed to bring themselves to admit the existance of Athlon64 just yet.

    1. Re:Intel versus Planet Earth by Fred+Or+Alive · · Score: 2, Interesting

      The article doesn't actually mention Athlon 64's at all. Although AFAIK they're designed so they can use the old PC BIOS system (and everything else x86) rather than needing a new BIOS (etc.). Perhaps a sentence on how AMD took an x86 compatible approach to designing a 64 bit system meant that they (can and do) use the old BIOS system instead of something new would've been a useful addition.

      --
      10 PRINT "LOOK AROUND YOU ";
      20 GOTO 10
    2. Re:Intel versus Planet Earth by lachlan76 · · Score: 2, Interesting

      Evidently bits of Intel still haven't managed to bring themselves to admit the existance of Athlon64 just yet.

      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.

  15. PC's like the xbox by Stevyn · · Score: 2, Informative

    I hope this doesn't mean that PCs will be sold like Xboxes. I don't want to have to intall a mod chip on my laptop to run linux. I like the idea of the BIOS having more function and power, but I want it to do more than just prevent code from being executed. This should definately be an open standard otherwise Microsoft or Intel will have too much control. It's one thing to boot into windows and have that muck up your computer, but it's different when microsoft code is running on a linux box.

    Since microsoft doesn't seem to like to innovate anymore, I wonder why they are pushing for this. Linux has shown that you don't need security at the hardware level to prevent viruses from taking down your computer.

    So far I don't see many benefits the user will notice and enjoy. I'm not trying to spread DRM FUD because this article doesn't talk about it, I'm just asking why Microsoft cares so much to push this.

  16. Open Source Firmware? by RAMMS+EIN · · Score: 2, Interesting

    There are various system emulators that need ROM images to boot the virtual system. I have been wondering about open source projects to provide these images, unencumbered by copyright restrictions, trade secrets, what have you.

    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.

    --
    Please correct me if I got my facts wrong.
  17. Mac Firmware by Anonymous+Writer · · Score: 4, 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?

    1. Re:Mac Firmware by Graff · · Score: 2, Informative
      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?

      Apple provides plenty of information and links to information on the Apple Open Firmware Home Page. They even have a good sense of humor. The machine that the site is running on is located at "bananajr6000.apple.com"!
  18. If BIOS is Going to be an OS, Then I Choose Linux! by LuxuryYacht · · Score: 2, Insightful

    What's happening here with EFI is that the BIOS has now grown to become an OS. If all you want BIOS to do is init the hardware and then jump to an OS then that's all the BIOS should be, just some init code to set up memory, chipset registers and cache so that it can jump to an OS for all the rest. But if you want the BIOS to do a whole lot more than just call it an OS and use an OS with lots of support with drivers already written.
    And for this BIOS that's really acting and grown to be an OS, I choose Linux!

    More at : http://www.linuxbios.org/

    --
    Quidquid latine dictum sit altum viditur
  19. Para para para noia by copponex · · Score: 3, Insightful

    The one thing people always forget is that, in truth, Microsoft/Adobe/Autodesk need people to have pirated versions of their software. Have you ever noticed how quickly major pieces of software are cracked after release? My guess is that they unofficially provide people with information to make this possible.

    If everyone absolutely and without an option had to pay for their version of Office/Autocad/Photoshop, free software would become ten times more popular in no time at all. Right now, software companies can keep their prices artificially high for the businesses that have to pay for it, and keep the "installed user base" artifically high without having to provide tech support.

    It's sort of the same thing with laws in the States. If every law was enforced every time, then people would be pissed and they would go away. Instead, laws that aren't enforced 100% of the time can be used against people the government doesn't like.

    If DRM ever hits 100% of the market, prices will go down because people will refuse to pay.

    1. Re:Para para para noia by Mr.+Neutron · · Score: 3, Informative

      Just because DRM is there doesn't mean software will be DRM-protected. And just because software vendors aren't DRMing their products doesn't mean TPTB won't impose DRM on all electronic components.

      It's like Macrovision. About 90% of commercial VHS tapes are not Macrovisioned. But 100% of VCRs are Macrovision-compliant by law. Sure, you can purchase deMacrovision boxes for legal use, but most people aren't going to go through the trouble. The same thing will happen with computer hardware. All computer components manufactured for sale in the US will be "trusted." The enterprising and resourceful geek will get all of his components direct from Asia and either run Linux or a dusty old copy of XP/Longhorn, but for all practical purposes, DRM will be everywhere. It may not be taken advantage of by everyone, but it will be everywhere.

      --
      dinner: it's what's for beer
    2. Re:Para para para noia by Fulcrum+of+Evil · · Score: 2, Insightful

      Have you ever noticed how quickly major pieces of software are cracked after release? My guess is that they unofficially provide people with information to make this possible.

      Some of those cracked copies are used by legitimate customers to get around onerous copy-protection code.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
  20. As any Apple //e user knows by Gothmolly · · Score: 2, Informative

    CALL -151

    --
    I want to delete my account but Slashdot doesn't allow it.
  21. Rom Based OS != BIOS by nurb432 · · Score: 3, Informative

    While the OS may have been in ROM, Like the Atari ST's, that doesnt make it the actual BIOS.

    By its very definition, the BIOS is a much lower level block of code. the true hardware abstraction layer, that the OS rides on top of..

    Sure its also in a ROM of some sort, perhaps even the same chips.. but that still doesnt really make a ROM based OS a 'BIOS'..

    --
    ---- Booth was a patriot ----
  22. 1980 IBM PC BIOS source listing rocked by wombatmobile · · Score: 4, Insightful

    Let us not forget that IBM published the assembly language source code listing for the original PC BIOS in full beginning in 1980.

    This "openness" allowed and enabled the first generation of PC developers to see and understand what was going on at the firmware level - literally an open book and manna from heaven for the times.

    This was not quite the precursor of today's open source movement though since IBM never granted permission to copy or use the code, but 1 billion PC compatibles later it is easy to see that IBM's approach unlocked at least one aspect of the value of openness.

    Dan Bricklin comments thoughtfully about the PC BIOS in his blog. Search for "purple".

  23. Hardware DRM's role by acb · · Score: 2, Insightful

    Controlling access to copyrighted media is not the DRM BIOS's direct role; its role is to ensure that the operating system that boots can be trusted to do so.

    Right now, a secure trusted music player may ensure that the copyrighted media it plays never ends up in the wrong hands (i.e., the user's); however, there's nothing (in theory) stopping the no-good thieving user from replacing the audio device driver with one which makes a copy of the unencrypted sample stream elsewhere. If the OS requires drivers to be signed, then the OS can be hacked; they can boot from a hacked kernel which doesn't enforce this requirement.

    This is where the DRM BIOS comes in; under it, all bootup code would have to be digitally signed. Any code that's signed would, in theory, continue the chain and not load any other code which is untrusted in a privileged capacity. Only once the black iron sandbox is built does any potentially untrustworthy code get loaded, where it can't do anything untoward.

    Incidentally, this may be compatible with the GPL. Linux could still be distributed with source code you could look at; just that if you compiled your own kernel, it wouldn't boot on your machine (at least not on the bare metal).

  24. Re:Pre-boot vulnerabilities by ratboy666 · · Score: 2, Interesting

    Boot time vulns...

    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.

    --
    Just another "Cubible(sic) Joe" 2 17 3061
  25. That shell is atrocious by alehmann · · Score: 2, Insightful

    Backslashes? DOS-style dir listings? UGH, I thought the idea was to remove obsolescence.

    Also, this is even worse than ACPI from a needless complexity standpoint.

  26. EFI can't boot from tape by Hanul · · Score: 3, Insightful

    That is soooo lame. If I have a recovery tape, which is common practice under HP-UX, I can't recover from it, unless I use a very uncomfortable 2-step procedure (booting from CD and then proceeding from tape). HP-UX is one of Itanium's "native" OSes, but EFI is somewhat of a step back in some parts compared to HP's Boot Console Handler.

  27. Gas stations and BIOS by gone.fishing · · Score: 2, Interesting

    I get a certain kind of comfort when I pull in to the gas station and see a really old car using the same gas pump as me. In the auto industry there have been many changes in the past hundred years but a 1913 Model T can still buy and use the same gas as my car can.

    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.

  28. Nope by Anonymous Coward · · Score: 2, Informative

    The Amiga is kind-of unique. The OS _is_ the BIOS, as well as everything else.

    Turn the Amiga on, the 680x0 reset vector runs. Through board logic, the Kickstart ROM is mapped to 0x00000000 as well as its usual location, and the lowest points of the ROM point out the jump address for the reset vector. The 68000 goes there, it's the INIT code of exec.library. Exec performs a self test on the board logic, the memory and the custom chips. It then searches for expansion cards (creates expansion.library), attached disk drives (trackdisk.device) and HDs (scsi.device (regardless of whether you have an IDE or SCSI hardware interface)), PCMCIA card disks (carddisk.device), etc.

    The graphics.library writes direct to Amiga hardware. The audio.device, in ROM, writes direct to Amiga hardware. potgo.resource, cia[a|b].resource, misc.resource, disk.resource, etc, are all arbitration mechanisms for custom chip registers. Sure, dos.library can load filesystems from disk once it's initialised by a HD or disk standard bootblock, but the basic 6 Amiga filesystems are in ROM. intuition.library and its high level BOOPSI stuff like loadable gadgets, images, datatypes are built on top of layers.library, which is built on top of hardware-hitting graphics.library.

    So there is tight integration between the hardware and the OS. There's no low-level code offering a hardware independent API to AmigaOS... that's AmigaOS itself. You can't put another OS there without adding in half of what AmigaOS did, in order to maintain the Amiga hardware. There's a lot of stuff that came after the Amiga designs (such as MMUs), and there's no official OS interface to it. They're not initialised by the OS. Random application programs fought over them with no OS supervision.

  29. NO ROM BASIC by telemonster · · Score: 2, Funny

    I vote they put GW Basic back into the BIOS ROM.

    Or maybe useful utilities like Sun and other workstation vendors have.

    Or maybe more than 15 FUCKING IRQS! Like Macs have.

    Is it me, or is everyone else just better all around? The only thing going for PC's is the junk is so cheap.

    --
    Southeastern Virginia REPRESENT!