Forgot your password?
Operating Systems Software

More Power To The Firmware 226

Posted by michael
from the press-f2-to-enter-setup dept.
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 ;-)"
This discussion has been archived. No new comments can be posted.

More Power To The Firmware

Comments Filter:
  • by Dagny Taggert (785517) <hankrearden@gmail. c o m> on Thursday June 17, 2004 @11:34AM (#9452972) Homepage
    ...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?
    • by Oddly_Drac (625066) on Thursday June 17, 2004 @11:36AM (#9452982)
      "but can you imagine any sort of Windows-dependent BIOS?"

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

    • by maxwell demon (590494) on Thursday June 17, 2004 @11:41AM (#9453033) Journal
      ...but can you imagine [...] a Windows-based BIOS of some type where the OS actually IS the BIOS?

      Well, given that there's LinuxBIOS [] ...
      • by Anonymous Coward
        Ans what about Amiga OS. THe OS was the BIOS. at least for A1200 and before

        just wait until the 1st BIOS virus
        • by drinkypoo (153816) <> on Thursday June 17, 2004 @12:07PM (#9453277) Homepage Journal
          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.

          • Rom Based OS != BIOS (Score:4, Informative)

            by nurb432 (527695) on Thursday June 17, 2004 @12:56PM (#9453712) Homepage Journal
            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'..
            • The full operating system is not in ROM. Basic system drivers and windowing code is, as well as the kernel, but it's not the whole shebang. The AmigaDOS ROMs lie somewhere in between OS and BIOS.
        • The same goes for Acorn[1]'s RISC OS on the Archimedes series, at least early version, I'm not really sure about 3.5 and 4, they might be reliant on stuff on a hard disk. You could also count most 8 bit micros of course, like BBC BASIC and the DFS (a DOS) on the BBC Micro were in ROM, although they weren't GUI OSes.

          [1] The A in ARM, the Acorn RISC Machine.
        • >>just wait until the 1st BIOS virus

          There have already been several, that was one problem with using DOS.
      • LinuxBIOS can load a Linux kernel in the BIOS ROM, but it is not an OS.
    • by garcia (6573) * on Thursday June 17, 2004 @11:45AM (#9453063) Homepage
      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.
      • by Psiren (6145) on Thursday June 17, 2004 @11:49AM (#9453107)
        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.
        • by Mr. Neutron (3115) on Thursday June 17, 2004 @12:03PM (#9453241) Homepage Journal
          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?"

          • by operagost (62405) on Thursday June 17, 2004 @12:17PM (#9453351) Homepage Journal
            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.
            • by Anonymous Coward on Thursday June 17, 2004 @12:23PM (#9453409)
              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...)
            • 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...
            • 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.

              • by sjames (1099) on Thursday June 17, 2004 @02:35PM (#9454985) Homepage

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

          • convince was a typo for bribe, right?

          • Yeah, if non DRM machines become difficult to'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.
          • by pilgrim23 (716938) on Thursday June 17, 2004 @12:40PM (#9453555)
            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?
          • by copponex (13876) on Thursday June 17, 2004 @12:46PM (#9453607) Homepage
            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.

            • by Mr. Neutron (3115) on Thursday June 17, 2004 @01:29PM (#9454092) Homepage Journal
              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.
            • 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.

      • by hal2814 (725639) on Thursday June 17, 2004 @11:52AM (#9453139)
        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.
        • by Tryfen (216209) on Thursday June 17, 2004 @12:05PM (#9453267) Homepage
          What if the response is signed with a private key?

          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.
          • What if the response is signed with a private key?

            Then key management becomes a big issue. Either you have keys which are fixed or you require require reliable network access for any device.

            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?

            You have much the same cryptoanalysis problem as the people at Station X in WWII.

            This is about having secure communication between e
            • Actually, you have to have some kind of secure key distribution channel or storage location. Which becomes absolutely and completely impossible as soon as the device lands in the owner's hands. Any fixed keys (or key generation program) can be extracted, any keys transmitted over the network intercepted. What they're trying to do is technically impossible, which is why they're trying to get Fritz Hollings and the other whores... Er... Representatives to legislate it as mandatory and make atteming to crack i

        • by acb (2797)
          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
        • Long story short, it's done with a Trust chip. That chip has your uniquely identifying private key locked inside. This chip watches the software you run. If you try to change the software *at all* then the chip denies the software the ability to decrypt the file.

      • Nothing else will install w/that BIOS because that would allow for software that isn't approved to be running (OS included).

        It isn't in MS's best interest to create BIOSes that only run signed software.

        At worst, we'll have BIOSes that limit access to parts of a disk to signed only software, or have a function to allow only signed software to run.

        Allowing only signed software to run on EVERY BIOS would make software development either impossible or make it require overly expensive workstations.
        • Ah, but that's the way the world works for the development of Game Console stuff. In order to test the game, you have to buy an unlocked console that will read standard CDRs.

          I'd imagine that, in the end, that's where Microsoft would like to see the average PC end up. That way, they can raise the bar on pirates to the point that it's impossible for the average user to pirate software. It also has the "unfortunate" side-effect of locking down the complexity of what new developers can do. Sure, there's no
      • How long do you really think it would take to reverse engineer a BIOS?

        If Microsoft were to be successful in implementing deals with the BIOS makers to require their "trusted" BIOS, the whole system would be dependent on some sort authentication call. It seems to me it would be trivial to discover those calls, and hard-code the "trusted" response into the open BIOS. If it's a true hash calculation on the revised BIOS, that makes it trickier, but finding the right "extra bits" to come up with the same hash
    • by x0n (120596) <oising@[ ].ie ['iol' in gap]> on Thursday June 17, 2004 @11:51AM (#9453126) Homepage Journal
      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
      • Actually, it's perfectly possible to have mutual dependency between components in an OS environment. The VM system in Mac OS X, since it writes VM data into a file, depends on the file systems. They, in turn, depend on the unified buffer cache (UBC), which is, in turn, dependent upon the VM system.

        The obvious model would involve the BIOS having just enough drivers to do polled I/O from the hard drive to read additional drivers into memory to support basic I/O like the keyboard and the video card. I'm n

    • In the article, there is no mention of DRM, but they do mention that Linux would be considered as one of the possible 64-bit operating systems (Linux IA-64?).

      The mention of UGA took me by surprise, even though it's three years old, I've never heard it mentioned before.
  • Stability? (Score:5, Interesting)

    by ThisNukes4u (752508) <tcoppi@[ ] ['gma' in gap]> on Thursday June 17, 2004 @11:35AM (#9452974) Homepage
    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.
    • Re:Stability? (Score:5, Insightful)

      by Oddly_Drac (625066) on Thursday June 17, 2004 @11:41AM (#9453034)
      "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?

      • Re:Stability? (Score:4, Insightful)

        by starseeker (141897) on Thursday June 17, 2004 @11:55AM (#9453177) Homepage
        "'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.
      • Re:Stability? (Score:3, Insightful)

        by gl4ss (559668)
        *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 i
    • by Alan Cox (27532) on Thursday June 17, 2004 @12:16PM (#9453336) Homepage
      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.

      • 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.
      • 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.
    • How long before we start seeing poorly written pre-boot applications causing vulnerabilities?

      For instance, with efi's networking capabilities, I can imagine hackers letting efi grab that 1 dhcp address that the user has allocated, and reporting it back to them. While the user spends time on tech support trying to figure out why ipconfig doesn't show anything, the hacker is rooting around their disk through efi.

      That may be far-fetched; but from the concepts offered in the article, it sounds feasible.

      • 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 a
  • by cbreaker (561297) on Thursday June 17, 2004 @11:36AM (#9452987) Journal
    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.
    • by Anonymous Coward on Thursday June 17, 2004 @11:50AM (#9453114)
      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?
      • 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).
        • 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.
    • 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 speci
  • Ya, shure (Score:3, Funny)

    by YellowElf (445681) on Thursday June 17, 2004 @11:37AM (#9452994)
    We don't need no stinkin' software, firmware will do it for us.
    • You jest, but Usenet's comp.sys.amiga hierarchy used to be infested by a guy named Steve Giovanella who insisted that Amigas are at least 1000 times faster (yes, literally) than modern PCs (comparing a '94-vintage Amiga to a '01 model Athlon) because drivers were commonly in firmware instead of RAM, so they were "hardware based" instead of "software based".

      I can't explain his entire argument because, well, it didn't make a whole lot of sense even then. Google has the whole mess [] archived.

      I had just swit

  • Retroactive bios (Score:4, Interesting)

    by IamGarageGuy 2 (687655) on Thursday June 17, 2004 @11:39AM (#9453020) Journal
    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.
    • by cbiffle (211614) on Thursday June 17, 2004 @01:22PM (#9454022)
      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.
  • by eddy (18759) on Thursday June 17, 2004 @11:40AM (#9453026) Homepage Journal

    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.

  • pocket pc (Score:2, Informative)

    by minus_273 (174041)
    heh reminds me of a pocket pc where the Windows OS is in the ROM
    • I've never heard of any PocketPC systems that had the OS in ROM.

      On a typical PocketPC PDA, the OS is typically stored in flash (which is not ROM, at all). The data, extra apps, and such are then stored in nvram. While this gives very fast load times and won't wear out the flash, you always have the risk of accidentally losing the nvram if your batteries all die. In any case, the system gives the appearance of PPC being in ROM, but it most certainly is not.

      (For the record, the original Sharp Zauruses used
  • Firmware (Score:5, Insightful)

    by starseeker (141897) on Thursday June 17, 2004 @11:50AM (#9453123) Homepage
    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.
    • Re:Firmware (Score:5, Interesting)

      by drinkypoo (153816) <> on Thursday June 17, 2004 @12:04PM (#9453254) Homepage Journal
      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.)

    • OpenBIOS wouldn't be of much use if DRM laws require a closed system.

      Maybe it won't for you... If USA's DRM laws don't aply here in Spain, I will be glad to swap a crippled BIOS by a shiny Openfirmware... if there is one that works for my computer, of course. So, I say to developers: keep coding and don't worry for local laws. I will happily buy some T-shirts, if that improves your confort, as long as you improve mine :)

      (writing this from an Openfirmware-powered Debian Sarge iBook ;)

      • Re:Firmware (Score:5, Interesting)

        by Alsee (515537) on Thursday June 17, 2004 @01:32PM (#9454128) Homepage
        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.

        • Re:Firmware (Score:3, Interesting)

          by 4lex (648184)
          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
  • by SuperKendall (25149) * on Thursday June 17, 2004 @11:58AM (#9453198)
    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.
    • I would have liked to see more of a comparison of exactly what EFI gives you over Open Firmware ... It's funny to have a whole article about EFI then show all the cool things you can do with an advanced BIOS by giving Open Firmware demos.

      The page does a nice job furfilling it's stated purpose, but suffers from a lack of segregation that might be confusing. The author cited example for EFI in Part I. He could have put those links into a separate section in part II. This is a minor formatting problem and

  • I just skimmed through the article looking for information about the Palladium-like DRM stuff that was supposed to be embedded down to the hardware level within the next few years. I couldn't find anything. Not being a hardware/firmware person, a lot of the stuff in the article is over my head, but I expected something about DRM to shine through, if not to be the overriding theme.

    DRM has already been mentioned in a few comments in this thread (perhaps by people who didn't RTFA). But where is it???
  • You can do a lot of stuff in Open Firmware by changing environment variables. A good project would be to create a graphical configuration utility that lets you do just that in addition to browsing the device tree.
  • by jared_hanson (514797) on Thursday June 17, 2004 @12:06PM (#9453270) Homepage Journal
    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?
  • by jayslambast (519228) <{slambast} {at} {}> on Thursday June 17, 2004 @12:10PM (#9453298)
    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 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.
    • They shoudl be trying to reduce the number of options in the BIOS.
      I like to imagine that Intel took the chance to throw away some legacy stuff when they designed the Itanium platform. Does it still has a sector translation mode setting? I'd like to be rid of it.
      I'v had to reinstall windows due to getting that one wrong. It's a leftover from the shortsighted harddrive size limits of old.

  • by RAMMS+EIN (578166) on Thursday June 17, 2004 @12:15PM (#9453334) Homepage Journal
    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.
    • "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?"

      I dunno. Maybe they're trying to avoid each others' patents? Maybe they're too parsimonious to pay each other licensing fees? Or maybe they're simply trying to evolve the standards?
    • The author mentions that EFI is somehow better than Open Firmware, but I fail to see how.

      It's filled with yummy DRM goodness!

  • PC's like the xbox (Score:3, Informative)

    by Stevyn (691306) on Thursday June 17, 2004 @12:21PM (#9453390)
    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.
  • by RAMMS+EIN (578166) on Thursday June 17, 2004 @12:32PM (#9453497) Homepage Journal
    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.
  • Mac Firmware (Score:5, Interesting)

    by Anonymous Writer (746272) on Thursday June 17, 2004 @12:35PM (#9453519)

    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?

  • 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!
    • You hit it more or less in your second sentence. LinuxBIOS is not an OS in a BIOS. It's a minimal BIOS that can bootstrap a system and load a Linux kernel stored in the firmware. This is good because, as you pointed out, there are already tons of drivers and stuff for Linux, and Linux can handle things like initializing hard disks and NICs. It can then load the OS.

      LinuxBIOS fits more in the description you gave in your second sentence.
  • Back in the day, when I was a co-op student employee, I spent some time testing Linux drivers on Itanium systems. EFI was about as intuitive as a worm eaten apple (no docs, just a "hey, you're good at figuring things out, test this"). Plus, it kept forgetting changes to its configuration. Eventually, I became familiar with its obtuse ways, but it never exactly brought a smile to my face when I saw the EFI prompt.

    That said, the PC BIOS should have been put out of its misery years ago. I'm just not sure EF
  • by wombatmobile (623057) on Thursday June 17, 2004 @01:07PM (#9453836)

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

  • by alehmann (50545) on Thursday June 17, 2004 @02:50PM (#9455183) Homepage
    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.
  • by Hanul (533254) on Thursday June 17, 2004 @03:34PM (#9455736) Homepage
    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.
  • by (213219) on Thursday June 17, 2004 @04:53PM (#9456675) Journal
    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.
  • by telemonster (605238) on Thursday June 17, 2004 @05:46PM (#9457171) Homepage
    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.

3500 Calories = 1 Food Pound