Slashdot Mirror


Linux BIOS

An anonymous reader pointed us to the Linux Bios Project which (surprise) is aiming to make a Linux Kernel BIOS. Its got numerous bugs, but some boards are booting. Interesting stuff, and has the potential to dramatically reduce boot time.

19 of 170 comments (clear)

  1. Linux BIOS : no, Linux based BIOS : yes by Vapula · · Score: 3
    I think many people are missing a point here : what made the PC a wonderful system was it's customizing ability :
    • You may put in whatever soundcard you want, from the cheapest to the most expensive
    • You may use whatever Network Interface Card you want, BNC/RJ45/Tokenring/Fiber/...
    • You may put in as many HD as you want (Hmmm usually at most 4)
    • You may use IDE or SCSI for your CD-ROM, CD-R,...
    • ...
    But also, you may put on it any OS you want, MS Windows, Linux, FreeBSD, Solaris, BeOS,... And the piece of software that allows that is the BIOS.

    So I don't think that putting Linux directly in the BIOS is a good thing. It's only limiting the machine.

    But using a linux variant that fulfit all previous BIOSes functions and adds some things like NFS boot, multitask for 16bit OSes (DOS, whatever version it is), PnP, drivers for WinModems making them usable under any OS not disabling the BIOS, FB drivers,... That would be great. And many of these functions are already implemented in Linux (sometimes partially or with extra-patches).

    The linux kernel on BIOS can still be used as fallback, if there are no OS present, like the BASIC ROM was in earlier PC. Maybe there can even be reusable parts between these two. That would allows for that cluster system to be built.

    I should however recognize that this project has to be started somewhere... And making the BIOS being the Linux kernel is a begin to it... But I think that it should not be the ultimate goal...
    I don't think it's a good idea to have to reflash the BIOS for every kernel update, without forgetting that a bad flashing may make the PC useless.

  2. The real benefit by Rayban · · Score: 5

    The real benefit is not necessarily to reduce the boot time to Linux - it's to enable greater functionality in the bootloader that would bootstrap the real Linux installation. Imagine being able to netboot on any card without having to flash a NIC EEPROM! You could also boot from Zip, CD-ROW, DVD or a number of other things. Imagine having a password-protected root prompt available at boot...

    The possibilities are endless. I hope this one takes off.

    --
    æeee!
  3. this would save me seconds a week! by azuretongue · · Score: 5

    Well as much as I hate the time that it takes to boot, I can't remember the last time that I had to.

  4. Has is occurred to anyone . . . by Greg+Merchan · · Score: 3

    Has it occurred to anyone that if computer and computer component designers and manufacturers would quit trying to support Microsoft (non-)operating systems, then we'd have thumbnail- sized supercomputers?

    Also, how much faster would Transmeta have finished Crusoe if they didn't have to compensate for the 16 (8?) bit code that Microsoft uses? (And how much better would the chip be?)

    I'm still waiting for my 1600x1200 contact lens.

  5. This is Not News by tealover · · Score: 3

    I already know all about Linus and how he was born in a log cabin in Finland and his mom and drap scraped to save enough to send him to college where he got into a newsgroup shouting match with Andy Tanenbaum while working on Linux.

    I have already read his BIOS. Why do I need to read it again?

    Sheesh.

    --
    -- You see, there would be these conclusions that you could jump to
  6. Re:Explain to stupid: Why faster? by nyet · · Score: 3

    I understand your point, and agree. So what I'm about to say is probably sacrilege; please don't flame me.

    Basically, all modern PC (Intel x86) OS's ingore most of the BIOS functions and do all the access yourself, and run on bare metal. You are saying why not just toss the middle man, and get rid of the BIOS, replace it with an arbitrary loader that can 1) take care of all other interesting type of boots, like network boots etc. and 2) runs in 32 bit mode.

    The problem with this rational is that in order to do this, you are STILL replicating 99% of the "bare metal" functions of the kernel in the boot loader.

    So why not put say, MACH in the boot loader, and run mklinux on TOP of that? Then drivers stay drivers (in the MACH firmware), and the OS kernel itself doesn't have to change much (regardless of the hardware) - you just need enough info in the MACH loader to pull needed extra MACH drivers off of simple known boot location (on board flash, or a small IDE disk).

    On top of that, if the MACH is a good one, you can run MACH RT tasks next to the linux kernel.

    Presto. A kickass embedded environment as well.

    Sure its the OPPOSITE tack from completely separating the BIOS and the kernel, but I'm not sure the latter is such a hot idea in the first place.

  7. Faster booting by clasher · · Score: 4

    Fast booting: This is the point I best noted. Just think being able to replace all major A/V equipment in your house with linux boxes. Once they boot as fast as normal equiptment and we can already have them mount a ro filesystem for quick shutdown, my god it will be beautiful. I can't wait to be able to telnet to any A/V in my house. Use TCP/IP to create a electorinic system which can talk to each other. I.E. when my computer starts playing a CD or mp3 automatically mute my TV and turn on CC.

    I can hardly wait.

    1. Re:Faster booting by dattaway · · Score: 4

      Better yet, put Windows in your washer and dryer. They claim they have cured DLL hell, but it will still lose a sock in the dryer and possibly tear your favorite shirt to shreds.

      Seriously, I did put Windows to use in my in my microwave last year and it was a glorious sight, but the office stunk for a few days.

  8. Re:How about a nice ROM Monitor instead? by freakinPsycho · · Score: 3

    Well, if you read the information on the page, that is exactly what they are trying to get around.
    they are replacing the bios with an image of the kernel, so that we aren't dealing with this "sudo-OS".
    something you also learn when you read the page, is that they start in 16 bit mode (as required by the cpu) and then about immediatly jump to 32 bit mode, gunzip the linux image, and run with it..

    ----------------
    "All the things I really like to do are either immoral, illegal, or fattening."

    --
    "All the things I really like to do are either immoral, illegal, or fattening."
    - Alexandar Woolcot
  9. Re:Check out Tiara by Frank+Sullivan · · Score: 4
    And here's the url: http://sourceforge.net/project/?group _id=6503

    Again, this project is booting Linux right now and is in active development by a paid staff. It's just gonna get better. :}
    --

    --
    Hand me that airplane glue and I'll tell you another story.
  10. Boot off a fully encrypted hard disk by goingware · · Score: 4
    If you wrote a real BIOS, that didn't need to be PC compatible, besides getting rid of ridiculous limits on disk partitions and requirements to have the kernel in a particular place relative to the start of the disk (1024 cylinder limit), you could boot off a fully-encrypted hard disk.

    Imagine having even the boot block and swap partition encrypted.

    Mike

    Tilting at Windmills for a Better Tomorrow
    --
    -- Could you use my software consulting serv
  11. MIssing the point by wishus · · Score: 3

    I think alot of people are missing the point of the project.. It's not about speed, although that's a neat side effect. It's about being able to pull boot instructions from a network without the limitations of the technologies that already do that. Look far down on the page.. they have a section called "Why we are doing this.." It's not a speed thing..

    wish
    ---

  12. Re:Explain to stupid: Why faster? by Anonymous+Freak · · Score: 5

    Quite simply: The OS loads without the normal 'POST' routine present on a standard PC.

    In detail: When your PC starts up, the very first thing it does is go to the ROM (or PROM, or EEPROM, or FlashROM...) for the BIOS, and run the Power On Self Test. This is the routine that tests the processor(s) and memory, then initializes the PCI bus, initializes your IDE bus, and runs any Option ROMs on any add-in cards. On my home computer, this process (with memory test DISabled) takes about 2 minutes. (Yes, I have lots of OpROMs.) Unfortunately, most modern OSes (Linux included) do not use the BIOS. They access hardware directly, without ever speaking to the BIOS. So, once the BIOS has done it's job, your OS loads, and pushes the BIOS out of the way.

    What Linux BIOS does: It completely does away with your old BIOS and goes immediately to the OS (Linux.) This means no POST, no PCI initialization, no OpROM scan. Because Linux doesn't talk to the BIOS anyway, it isn't needed. Now, the difficulty lies in the fact that you have this miniscule space (1MB on an Intel L440GX+) to hold the system. Plus, they are having difficulties getting some of the onboard hardware to function properly. (Linux DOES like to have the PCI bus initialized for it beforehand, which isn't happening with the old BIOS gone.)

    Some of the benefits include:

    • Of course, boot speed. You can be at your login prompt less than two seconds after applying power to the system.
    • Compatibility. Once they get all the bugs worked out, you don't have to worry about BIOS incompatibility anymore. Since Linux is controlling the system from power-on, you have full Linux stability at all times.
    • Boot options. Because you could use this to boot to another OS rather than just running Linux, you can choose any device on the system to boot from. Want to boot from that third network card? You can. Want to boot from a SCSI tape drive on the third SCSI bus? You can. You can boot from absolutely any I/O device you want, including the serial port if you felt like it...

    Hopefully this gives you a little more info on why this is much better than just being able to skip the memory test... ;-)

    --
    Another non-functioning site was "uncertainty.microsoft.com."
    The purpose of that site was not known.
  13. Re:Wow by dublin · · Score: 4

    Not really. The Sun (EE)PROM monitor is actually a fully capable FORTH environment, and I saw some pretty cool hacks for it floating around inside Sun (customers are obviously discouraged from hacking the monitor, but at least it's possible on a Sun, unlike most of their competition. This sort of thing is most often used to "fix" the IDPROM/hostid code that plays havoc with old licensed software on new hardware.)

    The Sun monitor has even been codified as an IEEE standard, so anyone should be able to implement and use it.

    This is damn cool, though. The implications for net-booting embedded devices alone are staggering. This sure beats flashing boot code into the NIC before you can boot, or living in the PXE straightjacket. (We'll know these guys have cojones when this BIOS inludes support for laptop functions like PCCard, ACPI suspend/resume, and hot-docking. These are *really* ugly areas, but breaking DOS compatibility makes things much easier.)

    BTW: Microsoft's plan, too, is for the BIOS to go away and be replaced by some simple address tables telling where things are - I think the "legacy-free" PCs (no ISA, serial, or parallel, among other things) may have this sort of BIOS already. This is a good time fo the OpenSource crowd to bend Intel's ear and make sure that Microsoft doesn't dictate NG BIOS standards to the detriment of everyone else. (They enforce compliance with their plans through substantial OS "discounts" for PC9x/WHQL standards compliance, so they're not really optional for the OEMs that need the Windows OS.)

    --
    "The future's good and the present is nothing to sneeze at." - Roblimo's last ./ post
  14. Built-in BIOS-OS by totem · · Score: 3
    Er... it's only a new concept for the Intel-based platform.

    Going backward in time, through PCs alone:
    • Amiga, with Kickstart ROM, booted up the base portion of the Amiga OS and Workbench, which finished loading from disk.
    • Macintosh (and Lisa) had part of the OS bootstrap kernel in ROM as well, though most of the OS was on the disk.
    • Of course, Apple, Atari, and Commodore all had this ages ago, with the entire OS (minus individual hardware drivers) nestled in on-board ROM! (Apple II, Atari 400/800, Commodore PET/64)
  15. Open Firmware by jetson123 · · Score: 3
    I like running Linux and use it on all my PCs. Still, while others may have different preferences, but I don't like the idea of an OS-specific boot loader, or something that is as complex as a Linux kernel.

    What I want in a BIOS is

    • good support for configuring and troubleshooting the system (power management, boot sequence, disabling devices, querying the hardware configuration, etc.)
    • good support for booting multiple operating systems
    • good support for basic disk operations (format, maybe partition)
    • some minimal driver support for important devices that is usable (though not necessarily optimal) by a protected mode operating system
    • some ability to communicate with the BIOS to perform some of the above operations from a running operating system (where it makes sense)

    It seems to me that Open Firmware is a good contender and starting point. It is already fairly widely used, it is programmable, and it seems to work fairly well. One of the nicer features is that it is actually programmable (in Forth) and provides full access to the machine. So, you can load extensions (e.g., new partitioning schemes) into it easily and portably. I believe there is an open source project trying to create an Open Firmware implementation for PCs (I can't find the link, though).

  16. How about a nice ROM Monitor instead? by IGnatius+T+Foobar · · Score: 5

    Seriously, this BIOS stuff has got to go. Nobody uses 16-bit operating systems anymore; why are we still booting 32-bit (and soon 64-bit) operating systems using a 16-bit BIOS?

    Non-PC platforms all have nice, simple ROM Monitors with simple, straightforward methods of loading the operating system kernel and then getting out of the way. On the PC, we have this gargantuan pseudo-OS that carries all sorts of legacy crud with it to support MS-DOS ... but in reality, nobody uses any of it anymore, except the little bit required to chain-load into a 32-bit OS.

    This is one of those things that make the PC a 'fundamentally broken' architecture. Until things like this get changed, there will always be a delineation between PC's and 'real computers'.
    --

    --
    Tired of FB/Google censorship? Visit UNCENSORED!
  17. We've done that for a while by patb · · Score: 4

    At Rebel.com, we've had this kind of bios in the NetWinder since day 1. The original idea belongs to nettwerk (who's at VA now). The idea was that we wanted the NetWinder to be able to boot from: disk, zip drive, tftp, nfs or parallel-port-cdrom. The kernel knows how to do all that, so why not make a bios out of the kernel. PatB

  18. Check out Tiara by bhurt · · Score: 4

    on SourceForge.

    It's still crude (we're working on it)- but it is booting Linux _right_ _now_ on SiS530 chipsets.