Slashdot Mirror


In-Depth Look At LinuxBIOS

DrSkwid writes "With PhoenixBIOS reading your email because of such inordinate boot up times for Windows and other OSs, it was remarked in #plan9 about our 5s boot times using LinuxBIOS. My friend f2f pasted an article from Linux Journal which looks at the basic structure of LinuxBIOS, the origins of LinuxBIOS and how it evolved to its current state. It also covers the platforms supported and the lessons they have learned about trying to marry a GPL project to some of the lowest-level, most heavily guarded secrets that vendors possess."

10 of 284 comments (clear)

  1. Already tried...? by xeon4life · · Score: 4, Interesting

    Didn't Microsoft want to do the same thing? Only Linux advocates started to become angry... -Xeon

    --
    Real programmers can write assembly code in any language. -- Larry Wall
  2. A bootloader? by ObviousGuy · · Score: 4, Interesting

    Initializes the CPU, initializes the bus, initializes the hardware, dumps to OS.

    Isn't that a bootloader? Is it special because it is burned into the ROM?

    --
    I have been pwned because my /. password was too easy to guess.
  3. Clustering by Neo-Rio-101 · · Score: 4, Interesting

    The reason why Things like LinuxBIOS are important is because having a PC boot with the Linux kernel is not only a cool trick, but it saves people who build clusters a heck of a lot of money on Hard Drives and CD-ROM drives, when a cluster node only really needs a mainboard, CPU, and RAM.

    Maybe with faster, bootable USB on motherboards in future, and cheaper flash RAM, flashing the BIOS to run Linux will seem a little less necessary.

    Maybe there's some other use for Linux in the BIOS, but someone will have to teach me as to what that is.

    --
    READY.
    PRINT ""+-0
  4. Grub by Trashman · · Score: 4, Interesting

    aside from grub being "just a boot loader", Wouldn't it make sense if grub was somehow moved into the bios?

    --
    Do not read this .sig
    1. Re:Grub by ciroknight · · Score: 5, Interesting

      Fuck grub, this is moving the whole kernel into flash-ram. This is to save the step of having to connect to the hard drive until when it's actually needed to run software, which can be done WHILE the system is booting the kernel, instead of before-hand. And as we know, in the computer world, multitasking is a good way of speeding up things.

      ;)

      --
      "Victory means exit strategy, and it's important for the President to explain to us what the exit strategy is." G.W.Bush
  5. It really is amazing... by ZuperDee · · Score: 5, Interesting

    I think it is really amazing how many people here on Slashdot are just so eager to post comments that they obviously don't even bother to read the actual article.

    If some of you people had read the article, for example, you'd notice some important points being made, such as, "From what we can see, the two factors in our success were competition and the creation of a market. Competition gave us a wide variety of choices as to motherboard, chipset and CPU. Once there was a reasonable market, vendors were concerned about being left out."

    I don't know about any of you, but I think the creation of an open source "market" is EXACTLY what has enabled the success of open source products like Linux in the first place.

    It was also what enabled the success of the Wintel architecture, if you think about it. At the time the original IBM PC was released, it was virtually a foreign idea to IBM--many people at the time were asking the question, "how on EARTH could IBM possibly release a machine based on open specifications and parts with a straight face?" Let us not forget that at the time, IBM desperately needed to get ANY kind of microcomputer on the market ASAP, for fear that Apple and others might get firmly entrenched. Once that thinking took hold, IBM practically had no choice but to hope and pray that their Big Name would keep them at the forefront. As we know, companies like Compaq came along and proved them wrong, and the rest is history.

    The point is, I wonder why things like chipsets are still so closely guarded secrets. Can you people imagine what the world would be like if Intel had made the x86 CPUs with a proprietary, closely-guarded SECRET ISA, that you could only program for if you signed an NDA? If Intel had done that, Linux probably wouldn't even exist!!

    I sometimes have this feeling Microsoft would do ANYTHING to go back in history and try to get all the laws of our country re-written and the market changed so this kind of all-secret world I speak of could exist.

    In the end, the markets for products, be it open OR closed, occur because someone created that market. I think it is high time someone created an "open source" chipset, myself. But that's just me. If you people want all things to be open, stop talking about it and complaining about closed-source, proprietary things, and DO SOMETHING about it.

  6. OpenFirmware by Quok · · Score: 5, Interesting

    I read this article a couple months ago when my issue of Linux Journal arrived. I had a couple questions about it then, guess this is a good time to ask them. :)

    As I see it, half the point of LinuxBIOS is to provide a fast, open-sourced BIOS for x86 machines. It gets extra cool points for being Linux.

    But I have to ask, why not just use OpenFirmware? Or at least, give LinuxBIOS some of the features of OpenFirmware. As far as I know, there is no such thing as OpenFirmware for the x86. It's got lots of neat benefits, like booting your machine off of another one on your network, or debugging a non-bootable machine remotely. Serial console, anyone? It has other benefits as well, that I can't remember; my brain is shot for the week.

    For those of you that haven't heard of OpenFirmware, it's basically the "BIOS" on Macs.

  7. LinuxBIOS to boot other OSs by jerel · · Score: 4, Interesting

    In my admittedly cursory review of the main LinuxBIOS site (here) and of the article I was unable to find anything about using it to boot other operating systems besides Linux. Can I buy a compatible mobo, put the LinuxBIOS on it, and then run Windows? I'm still running dual-boot for now and would need this.

    --
    Some days it's just not worth chewing through the restraints.
  8. This is a wonderful idea... yeah right. by rice_burners_suck · · Score: 5, Interesting
    I have an idea relating to LinuxBIOS that stems from a job I work sometimes involving industrial machines and their archaic control systems. Some of these computers require a technician to turn them on because of a complex procedure that must be carried out, including the typing in, by hand, of the first few assembly instructions to be executed, which tell the computer to read some software from some weird ROM, which then tells the computer to load the "real" operating software from something over RS-232. For this reason (among others), these machines are never turned off, except in a power outtage, which is a nightmare for machine shop owners. And it could all have been avoided by designing the computer a little differently, placing the OS itself in the ROM, and making the computer load it automatically on powerup.

    I see this exactly the way I see modern operating systems boot up. The BIOS goes to some place and reads 512 bytes. Those bytes load up a "real" bootloader. That bootloader loads up some darn thing, which loads up the kernel, which loads up a bunch of device drivers and other software, and after a minute of grinding the disk, you have a system waiting for input. Why all this fuss?

    My idea, then, is that instead of having an operating system kernel on your hard drive, it and its bootloader should reside in a really friggen powerful BIOS chip. By powerful I mean that there should be a LOT of flash space and the BIOS itself should be a relatively powerful microprocessor. The software is started immediately upon the powerup of the computer. The BIOS Flash then looks like the root partition; it is mounted just like the hard drives and other devices are. All device drivers are present in the kernel, anyway, and since the BIOS is designed for the computer (by the factory) or configured (by a hacker who puts together his own system), there is nothing to detect or load. Furthermore, all software that starts at startup has a complete image "frozen" in the BIOS Flash, and is copied directly into RAM during the initial stages of startup. Therefore, if you have X, and an entire desktop environment, the entire computer goes from OFF to running X and your desktop software, and whatever else you want for that matter, in almost no time at all. Your monitor would probably take longer to warm up then it would take for your desktop to be ready for input.

    This sounds a lot like un-suspending a computer that is in suspend mode, and yes, in effect, it's just like that. You have your system running the way you want it to start up, then you "freeze" it a la VMWare, put it in the BIOS Flash, and when you turn on the computer, the BIOS copies the image directly into RAM, with perhaps a few routines here and there that initialize hardware upon powerup, or set a few values throughout RAM, like time-sensitive things and whatnot... No matter how fast MS makes their OS load, it'll never come close to this kind of performance.

    Take it a step further, and each user could have almost an entire operating system setup, as if the computer has multiple personalities from the bootloader up. The BIOS has some routine that lets you log in, and accordingly, selects the image that will get loaded. In this respect, you could completely power down the computer, and come back a week later, turn it on, and immediately it will return to where it was.

    This will probably be the case in 10 years or so. (Hey, in the 90's we went from the 386 SX to the Pentium 3. Who knows what the hell will happen by 2015 or so.)

  9. Re:And now they are low quality? by Anonymous Coward · · Score: 4, Interesting

    They may not be low quality but there are several reasons why tradtional BIOS's suck. For a start there is the huge amount of legacy 16bit, real-mode x86 code that just isn't used by modern operating systems but is supported because of things like Windows ME. If you're running Linux or Windows NT on your computer, you just do not need it. Then there are the traditional limitations in x86 BIOS's. You can't run an x86 machine headless and access the BIOS setup, for example. With LinuxBIOS they enable the network interfaces and allow you to perform setup via. a telnet session, exactly as you would with more expensive server kit. Last but not least there are bugs in some BIOS, and some of them can be pretty bad. LinuxBIOS offers you the ability to patch or workaround those bugs yourself, instead of having to wait for the vendor to fix them for you.