Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Linux Software

Linux BIOS 170

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.
This discussion has been archived. No new comments can be posted.

Linux BIOS

Comments Filter:
  • Shaving ten to thirty seconds off your boot time just doesn't sound that epic to me. Heck, you can save three to ten seconds by just setting the type to "none" for any nonexistent IDE devices (Secondary Slave, whatever).

    What WOULD be really useful and cool would be to have a much faster and more configurable SCSI BIOS inside the system BIOS so my 29160N wouldn't take a week to get itself together... Especially if I could tell it only to scan for new devices when I've actually added something, manually, perhaps by pressing a key at the right (prompted) moment or something.

  • Why would LinuxBios be faster than a normal one? It seems that the memory check seems to take most of the time on my machines... I'd assume there's some setup that Windows uses that Linux doesn't that could be scrapped, but I don't know any specifics.

    Could someone post some specifics of the kind of things that could go, or that would be faster with LinuxBIOS?
  • No more tftpd or bootp for diskless booting.

    But you'd still need dhcp (or rarp) and bootparam to configure the network and find a place to NFS mount / from.

    Can the kernel do this?
  • Every second generation PowerMac (7500,7600, 7300, 8500, 8600, 9500, 9600 and newer) have an OpenFirmware bootrom.
    And most PCI-video, SCSI and other cards for the Mac have an OpenFirmware bootrom.
  • What about dual-booters? *GASP*...redmist ACTUALLY uses Windows? Infidel!

    .{redmist}.
    -------------------------------------------------
  • Yup, I run NT on my ThinkPad and I have to reboot everyday -- to take it home! :)

    Seriously, I think it would be great to run Linux on a laptop. One thing stopping me is the boot time and hassle. Unlike some OSs, Linux is not very good at, and does not seem to like, rebooting very often.


    Later...

  • SCourced? I know what you mean but Linux is already an open scourge.
  • you haven't been reading the story. This linux BIOS can boot other systems as well, even Linux :)

    Needen't fear, your dual boot setup is safe. The thing is that instead of the slooooooooooow BIOS that usually is there is being replaced.
  • by Vapula ( 14703 ) on Wednesday June 14, 2000 @02:20PM (#1001876)
    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.

  • There are people running Windows/Intel machines that would find a winBIOS a good thing

    It would not be a good thing for most Windows users if it were impossible to boot alternative OSes on most of the world's PCs without flashing the BIOS. It would be a huge blow to the freeness of the OS market. Given time, this would drive up prices / drive down efficiency in Windows/Intel, too.
  • Got a proliant 1600 here which has been up longer:

    [coolvibe@tiamat coolvibe]$ uptime
    2:09pm up 119 days, 18:49, 1 user, load average: 0.00, 0.00, 0.00

    And that was when I set it up. It a departemental webserver, and it's a quiet day, hence the low load avg.
  • Many benifits... fast booting and improved functionility and just plain getting away from legacy design (After all Linux is Unix based not CP/M based... )

    One other is upgrading the BIOS.
    The reason we HAVE flash BIOS is so we can upgrade it ourselfs. Upgrade to what?
    New features are likely to tie more and more into Windows. Why bother.
    But with this new features will be for Linux not Windows.

    Finnaly when Linux PCs are built you are still paying someone for a BIOS. In many cases they are still making BIOS with MsDos in mind.
    Now instead Linux PC makers can preinstall something made with Linux in mind...

    I'm still hoping someone makes a software shutdown powersuply for the desktop PC...
    The PS button only applys power... when off this turns the computer on... when on this sends a signal to the computer to turn off... the software then runs shutdown and then sends a signal to the powersuply telling it to accually turn off...
    (I believe this allready happend so on laptops.. but this function is't passed to desktops becouse it isn't considered useful... however this is how the 3B2 works.. no real off switch just an on switch that tells the OS to shutdown)
  • Intel has online information about an Extensible Firmware Interface (EFI) at http://developer.intel.com/design/Ia-64/ExtenFirmw are/

    It appears from Intel's documentation that the EFI layer (1) will be written in a high-level language, (2) will be OS Neutral, and (3) will be stored on a FAT32 "system" partition in addition to Flash RAM.

  • "We have Linux booting Linux. So our NVRAM-based Linux can decide to boot something else."
    If I'm not mistaken (and I might well be), this means that Linux BIOS is not really a limitation, as it can boot other OS's too.
  • I would love to reboot everyday! That means that I have Linux on my work ThinkPad and I get to take it home at night and work on it at home. That's 2 (re)boots per day.

    Later...
  • Yes, you read correctly. It's a zero ohm wire link, with the same body style as a resistor. The point is so automated pick-and-place machines can fit them.

    Sometimes it's impossible to design a board that doesn't need a jumper link; there just aren't enough layers.

    Jon.

  • First of all... This would be very cool - boot speed close to zero... But what about kernel updates? We would have to have a Flashable EPROM... And what would happen if I flashed the wrong file? Well, sorry, no OS anymore! this calls for a mandatory, non-erasable ROM with a monitor (similar to Sun's) that would load from the flashable ROM. In short, it's not going to fit into current-generation motherboards.

    A good point would be having the possibility (like in the good ol' Amiga) to change the pointers to a RAM address - In the Amiga, if I still had ROM 1.3 and wanted to run 3.1, I just told the machine to go look for it somewhere else (and give up 512KB RAM, which was still a sizable part of my RAM)... And voila, Workbench 3.1!

    Let's see for IA64 on...
  • And had you spent a few additional seconds looking over the material instead of flaming me, you might have noticed that I gave a link to "GNU BIOS" - the original name of OpenBIOS. And, strangely enough, the top of the page for the "Linux BIOS" project has the words: Combining OpenBIOS and Linux." with a link.

    But, of course, you had to be a quick-post and flame me instead of doing your R&D, right?

  • by Anonymous Coward
    The Linux BIOS project serves to reaffirm the unstoppable march of Linux! Over hill, over dale, over the dusty trail, Linux is rolling along. With success after success, Linux soars while other lesser operating systems founder. What makes the difference? One word: quality. Linux has all others beat on quality alone. And yet when we think of useful features, none come close to Linux. And who could deny that Linux's continued success owes much to the wisdom and kindness of Linus Torvalds himself. This demigod of operating system design has carried the Linux banner where none before have dared to tread. From the versatile PalmPilot to the mighty IBM S/390 mainframe, Linux has conquered all.
  • by Rayban ( 13436 ) on Wednesday June 14, 2000 @12:42PM (#1001887) Homepage
    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.
  • I know how to save minutes on boot up, done shut down, that is what I do. I never boot (unless there is a power falure, then I am forced to boot, or if I upgread the kernal, I have to do that so my computer has been on for over a month now)
  • I think this is an awesome idea. I never understood why even MS didn't decide to do something like this whe installing Windows (as a few years ago it was all you could get and was commonly mistaken that Windows/DOS = PC anyway).

    It'll be like an Amiga "Kickstart" - putting the core OS in hardware. Dammit, I like this kernel in the BIOS a lot. If only that it means my Amiga SDK will boot lighteningly fast.

    I say it's about time - now if only supported my mobo........

  • Imagine a Beowulf cluster of these!

  • Quite apart from the actual boot speed, one of the *prime* advantages is not having to keep switching the processor into virtual 86 mode to execute 16 bit code in the BIOS. This is a *horribly* expensive operation and can leave the processor unresponsive to interrupts for extended periods.
    --
  • For a while now, I have been following discussions on OpenBIOS [linux.de] to see what they could come up with. Very impressive, really. OpenBIOS and LinuxBIOS have been sharing for some time. The big reason for it is even simpler than booting faster or putting cool things in your BIOS like graphics (which, I must admit, is cool): The project is about having a system truly free of proprietary software. Feel free to join in and contribute to either project; in the true spirit of Opensource, they share, so helping one will help the other. Ultimately, I would like to see a package that will help sysadmins customize and install thier own bios. Also, lets see Intel try and pull the serial# off a machine that has the serial#'s memory location specifially blocked off in the bios... See? The reasons for doing this go on and on. It's a new frontier in Open Source. How can anyone call themselves a hacker when they depend on Phoenix or Award to turn thier computer on for them?
  • My primary concern with this is BIOSes like ABit's SoftCPU, which set the FSB etc. through the BIOS... if you replace their BIOS with your own Linux BIOS, how will you be able to overclock? If you have a 133MHz proc on a board that supports 100MHz, you'd better hope it sets it to 133 MHz automatically, or you're just throwing cycles in the air willy-nilly.
  • But set-top boxes and other cheap computers probably do.

    Those systems usually boot out of flash anyway. What's the point? OpenBIOS tried this and (IMO) has failed. I can't think of a single reason to put Linux into BIOS. 32-bit BIOS? Linux doesn't use it anyway.

    Maybe I'm just a crusty old fart though.

  • This would be interesting... is it the first time an BIOS-OS has been attempted on the PC? I'm curious.

    ----
    Oh my god, Bear is driving! How can this be?
  • The fact that the original PC had a ROM BASIC is, by the way, still visible in modern PC's in the form of one of the most confusing error messages of all time. When you boot a PC and no partition on the hard drive is marked bootable (IIRC), the BIOS will say: "No ROM BASIC" ;)
  • by azuretongue ( 180140 ) on Wednesday June 14, 2000 @12:17PM (#1001897)
    Well as much as I hate the time that it takes to boot, I can't remember the last time that I had to.
  • ever thought about saving energy? jeez! no wonder america makes up for 80% of the world's energy consumption.
    talk about waste. how many nuclear power plants are we running just so people don't have to boot in the morning?
  • by Greg Merchan ( 64308 ) on Wednesday June 14, 2000 @02:32PM (#1001899)
    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.
  • What is your problem with it? People pay for electricity; they are not given it for free. Those fees pay for the power plants, pay for the engineers, pay for the secretaries and everything else. If anything, electricity rates are too high due to the power monopolies. Or perhaps you are bitter because Americans have enough disposable income to pay for electricity...
  • How about a pointer to the Forth port of Pong for OpenFirmware? I'd give that a shot.
  • I think he meant that dual-booters often require to have to reboot to use the toyOS that is windows because lots of nice games only run under it (at the moment) :)

    There's a few ways around it of course ... get one machine for each OS you plan to use and/or try and get games running under Linux.

    Fast booting is great regardless of that though :)
    --
  • A microkernel BIOS, like Mach or Amoeba implemented in BIOS. This would be faster than fast, and still flexible enough to support multiple OSs.

    With a box like this, I could...dare I say it?...rule the world!


    ---
    Zardoz has spoken!
  • by tealover ( 187148 ) on Wednesday June 14, 2000 @12:21PM (#1001904)
    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.
  • by nyet ( 19118 ) on Wednesday June 14, 2000 @02:43PM (#1001905) Homepage
    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.
  • by clasher ( 2351 ) <bkeffer AT thecommandline DOT org> on Wednesday June 14, 2000 @12:22PM (#1001906) Homepage
    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.
  • Seriously, this seems like a heck of a lot of work to shave boot time, especially cause it will be pointless after we get some decent solid-state drives.

    tcd004

    Have you been to wwink's Blog? [lostbrain.com]

  • Plus, your Linux box should require *far less* rebooting than WinNT or 2k.
  • Only reason to do this would be if your operating system and BIOS were to be merged. So instead of your computer not knowing what it is loading, the BIOS would already be prepared for it. Other than that, I don't see how it could be made faster. If there was a way, wouldn't mobo manufacturers already implement it?
  • That's a good point. Can anyone with LinuxPPC and x86 experience here compare/contrast their ideas with Open Firmware?

    Pope

    Freedom is Slavery! Ignorance is Strength! Monopolies offer Choice!
  • 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."
  • Why would LinuxBios be faster than a normal one? It seems that the memory check seems to take most of the time on my machines... I'd assume there's some setup that Windows uses that Linux doesn't that could be scrapped, but I don't know any specifics.

    You've got it backwards. The point isn't to reduce the BIOS boot time, the point is to reduce the kernel boot time by incorporating the kernel into the BIOS.

  • Actually, they are doing this so their cluster nodes can get boot instructions from the network.

    For instance,

    "Hi. I'm computer #42 - how should I boot?"

    "Hello computer #42. Boot diskless, and mount / to blah..blah..blah.."

    But you know this since you read the page before posting.
    ---
  • IA-64 boxes are going to have a workstation-PROM-like system as a replacement for the BIOS, called EFI. It can read FAT filesystems, run its own programs to do fdisk, format etc. I'm not sure how extensible it is, to read other file systems etc, but it's certainly a huge step up from the BIOS.
  • by Frank Sullivan ( 2391 ) on Wednesday June 14, 2000 @12:54PM (#1001916) Homepage
    And here's the url: http://sourceforge.net/project/?group _id=6503 [sourceforge.net]

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

  • Heretical though it may be, some of us run Win95 for games and Linux for anything serious. Is it possible to do a multiboot BIOS that could boot Linux and Windows (and BSD and Solaris and BEOS) with equal efficiency?


    The Second Amendment Sisters [sas-aim.org]

  • Mac Classic could boot from a full version of the OS in ROM.
  • Well I'm pretty sure BIOS code (the propietary kind that most people have in there ROM) is written assembly so minus it not being commented a dissassembler in theory would give you source code.
  • I personally run OpenBSD on my washer/dryer. I run a cron job to move my laundry from my hamper (also OpenBSD)hamper to the washer via encrypted coda. Unfortunatly, my firewall is being constantly attacked by underpants gnomes. However, the setup works and is secure. I've never fallen victim to Ddos (distributed denial of socks) attacks.
  • by goingware ( 85213 ) on Wednesday June 14, 2000 @03:02PM (#1001921) Homepage
    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
  • by Anonymous Coward
    Nobody uses 16-bit operating systems anymore

    Actually, thousands (millions?) of people boot a 16-bit OS every day. It's called MS-DOS. Most of those people think their OS is Win95 or Win98, which themselves contain significant amounts of 16-bit code, but really it's MS-DOS 7. There's a very simple proof that this is the case: Win95/98 supports long file names. If you disable automatically starting the GUI on boot, you get a command prompt, and no LFNs. Therefore this command prompt is not Win95/98. If you then type "win", the GUI starts, just like Win[123].x. This is exactly the process normally used to boot Win95/98, except win.com is normally called automatically.

    I do, however, agree that the IA-32 architecture is fundamentally broken. In fact, the words horse, dead, a and flogging come to mind. IA-64 is a step in the right direction, and hopefully Willamette will be the last IA-32 processor. However, I can see 2 problems with IA-64.

    • IA-32 compatiblity: After 20 years, we're still stuck with a processor that thinks its an 8086 at boot. At least IA-64 will boot 64-bit (I hope), but the IA-32 emulation will waste die space that could be used for bigger cache/more FUs, and encourage using legacy code.
    • Cloning: Based on Intel's previous actions in dealing with AMD and Cyrix, I can see them making it very difficult to make an IA-64-compatible chipset.
  • I agree completely with what you're saying, but there is one place where this would fit: servers. Servers need as close to 100% uptime as possible, and (if it's high end) will probably have some SCSI in it, meaning long boot times. Taking the 2 minutes out of the boot time for that would be well worth it in a server situation, where you're not worried about having to put (or have) another OS on it.


    One Microsoft Way
  • 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?

    Well, if you're using an x86 family processor, the moment you're turning it on you're actually running a 16-bit processor. The processor has to be explicitly told to behave like a 32-bit processor (or `switched to protected mode' if you prefer). This is so you can run your ancient segmented:memory_model software on that same box.

  • Could you shrink the code such that you don't need a hard drive on your firewall? Just turn the power on and your ready to go -- the thing is up in seconds. Maybe this would be nice in a beowulf cluster (no I am not trolling here!) No need for hard drives, floppies or even moniters. All you need is a bunch of motherboards with on-board ethernet.

    At work we have an old 486 that is hooked up to our Fourier transform spectrometer. The code to do the FFT is in the bios. The the code is totally optimized it is quite fast for a 486 -- as you can imagine the device is a couple of years old but it still works. Might be nice to be able to set up a pc to do one thing well like that.
  • What is your problem with it? People pay for electricity; they are not given it for free. Those fees pay for the power plants, pay for the engineers, pay for the secretaries and everything else. If anything, electricity rates are too high due to the power monopolies. Or perhaps you are bitter because Americans have enough disposable income to pay for electricity...

    The problem is that you never pay for the value of natural resources, only their cost. You're throwing old mother Earth away by doing this...

    --

  • Hey, it was enough of an OS to allow you load other programs, an access hardware directly (peek/poke). That's goodness.
  • Nice stuff, thanks. While I always am interested to see what Linux hackers will do next this one puzzled me. Can't remember the last time I found a clean Linux boot to take too long. However this makes more sense. I would be nice to netboot like I could with my old Sun box.

  • I used to have Be on that machine, it was about 2 minutes. I remember that the HD detect part of the boot (I forget the real name) was taking a long time. That box really does have some strange hardware, but the kernel now has C-Media support, so I don't care.
  • Slashdot already has a rather large Linux BIAS.
  • Might be even possible to get a command line from the BIOS...that would be sweet. Manually configure options without the help of a GUI.
  • by wishus ( 174405 ) on Wednesday June 14, 2000 @12:55PM (#1001932) Journal
    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
    ---
  • Yeah, as if Linux users need to reboot the machine 5 times a day or something like that.... When was the last time I booted up my Linux box? Can't remember. That being said, it's good thing. Probably now I don't need to care about the limited HD size permitted just because I have an old BIOS. I can blow the whole thing away, and get Linux in there. Am I too ahead of the project?
  • So does this mean we can see a pretty picture of our Tux at power-up time? That would be the best part of it all.
  • 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... ;-)

  • Only 12 years ago? AT / x86 architecture is a bit older than that, i'm afraid. Look at a BIOS programers guide too one day, and check all the cruft that thankfully, Linux never has to use.
  • Can you imagine Windows on all those things? A two or three minute boot up time on anything in your house! And, imagine changing the channel on your TV in Windows (Your changes will not take affect until you reboot the system. Would you like to reboot now?)!
  • You can be at your login prompt less than two seconds after applying power to the system

    Did you mean LILO: prompt? My computer doesn't get to login prompt two seconds after the BIOS (and the SCSI card, and the HPT366, blah, blah) is done.
  • I saw this yesterday on ./ and discussed it with my office neighbor. There are significant advantages here.
    1. Like a Sun box, console output could be directed to serial. This is important when you are running a box as a server and want to debug the boot process. (Hey, can we get a diag-mode too?)
    2. My neighbor sells pcs that are specifically designed to broadcast audio/video over the net using linux. They are very much appliances, as they just need to be plugged in and a few questions answered (IP info). This BIOS could allow him to tailor the boot environment to the specific hardware he has included.
    3. Security: I believe you could require a password/login in order to boot a linuxBIOS machine. This could make my laptop worthless to a thief who doesn't have an NVRAM burner.

    There are other things we came up with, but I've only got a few minutes.


    _damnit_
  • a QBasic BIOS

    Ah, a yung 'un :) The original IBM PC had BASIC in ROM. Turn on the machine without a hard drive and without a disk in the floppy drive and you received a BASIC prompt. The Commodore 64, Apple II, and later Atari machines (XL and XE models) were the same way, dating back to the seventies in the case of the Apple.
  • Hooray! [yellow5.com]

    That one needs to be posted again :]

    I don't know why it's funny. It just is.

    I hope slashdot allows the [s] tag. I notice that [div] is allowed. seems a bit mad for posting, really.

  • ok, I dug it up just for you.

    http://www.machack.com/Hack98.html [machack.com]

    It's called OFPong.

    --

  • Which might actually make those Dual BIOS motherboards (I have one in my PC at work) useful. You don't often screw up your BIOS these days, and most settings can be autodetected, not like the old days of recording Landing Zones and all sorts of esoterica. But if you're regularly reflashing, could be a lifesaver :)
  • 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?

    linuxbios boots into 32-bit protected mode as soon as possible, so that we can write as much code as possible in 32-bit C, compiled with gcc.

    Jeff Garzik

    FreeBIOS release wrangler
  • by dublin ( 31215 ) on Wednesday June 14, 2000 @01:05PM (#1001960) Homepage
    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.)
  • And there are also people who run Windows/Intel machines that would find a winBIOS a good thing, especially people buying a new computer that have no idea what the BIOS is anyways.
  • You have one in your computer now. If you need to boot OSes (And I use that term loosely) that require BIOS, stick to that. Windows 95/98 users are out of luck. NT probably doesn't need a BIOS but it probably wouldn't like this one either, knowing NT. YMMV with OS/2, BeOS, etc.
  • Yep, but those BIOSs where not open source.

    You could get a listing of the Atari ROM OS from Atari in the Technical Reference Notes. A full, commented source listing. Neat! You could also get the full source to Atari DOS, with lots of commentary, in the book "Inside Atari DOS" (only $12.95).
  • All that baggage is even more painful for them then it is for the rest of us, because they're the ones that gt shouted at when things don't work. Microsoft does indeed want the BIOS to become a thing of the past. Count on it.

    (Maybe this was part of IBM's plan all along? Yeah, right...)
  • From what I understand of this, there is no Lilo prompt. You turn on the computer, and the linux kernel starts to load. So basically the time it normally takes your computer too boot from the begining of the kernel loading until you get to the login prompt is now the total boot time.

    I'm guessing that this would make dual booting the system out of the question.
  • FYI - the IEEE standard that describes Sun's OpenBoot PROM interface is IEEE 1275. You can find the info on it the "Open Firmware Home Page" at http://playground.sun.com/1275/home.html [sun.com]

    Although it looks like it's been untouched since early 1999, it also appears quite a bit was done with it for the PowerPC platforms, and it could certainly be used on pretty much any other platform as well, if it makes sense. It may be time to revive this IEEE committee to jump-start both it and the efforts to produce viable open BIOS implementations.
  • FYI - Microsoft's pages for "Legacy-free" PCs and BIOSes: http://www.microsoft.com/hwdev/newpc/ [microsoft.com]
  • by Anonymous Coward
    no, dos 3.0 based bioses ran rampant in the days of tandy/pc-jr
  • I have a Maytag Lazyfucker 3000, it has a TV on both the outside and inside to let you watch your sports and soap operas at all times, even whilst getting a snack.
  • by totem ( 194429 ) on Wednesday June 14, 2000 @01:50PM (#1002008)
    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)
  • by jetson123 ( 13128 ) on Wednesday June 14, 2000 @01:22PM (#1002011)
    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 [sun.com] 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).

  • And on any x86 machine using framebuffer console.

    One thing to note is that it will give you multiple penguins, one for each processor. I've seen several people freak out when I start the SMP and there are four.. (As if the freaking when POST keeps going past 128M, then 256M, then past 512M wasn't bad enough!)
  • I don't want anyone talking to my regidgerator. Why in the all holy fuck would I want to network into my microwave? I could possibly see my P3 turning into a toaster oven due to the heat it gives off but I'm not sure I'd make such a modification. I don't want a more expensive microwave due to a 1.4 meg EPROM and Pentium processor in it. Being able to turn on your microwave from the office is rather pointless unless you've got a Robotron 5000 personal robot assistant to put your leftovers in the microwave for you. You're raping the American dream you know.
  • This is the most frustrating aspect of SCSI. My Initio LVD SCSI (with five devices on the chain - 4 hdds and a dat) can take up to two minutes to initialise - I assume it's negotiating: some drives are ultrawide, some lvd, some neither, etc. That being said, if I just use the three-fingered salute to reboot (as opposed to powering down), it's nearly instantaneous.
  • 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'.
    --
  • Will this lead to the introduction of silly little "Designed for GNU/Linux" stickers to replace the silly little "Designed for Windows 98/NT" stickers?
    Christopher A. Bohn
  • by patb ( 64911 ) on Wednesday June 14, 2000 @12:32PM (#1002024) Homepage
    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
  • True, but thats not the whole story. Your desktop PC or server doesn't need to boot hardly ever. But set-top boxes and other cheap computers probably do. Being able to build a set-top box based on cheap hardware (mass produced Intel/AMD products) that runs a free OS (Linux) and boots really fast is sure to interest more companies in Linux.

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

    Yes and no.

    "On the PC, we have this gargantuan pseudo-OS that carries all sorts of legacy crud with it to support MS-DOS "

    Again, yes and no.

    You can't make these sweeping generalizations because people have told you that the PC BIOS is some legacy encrufted crud puppy. Have you ever use a Sun Sparcstation or a DECStation? My MAXine supports -- get this -- ECOFF kernels only. Straight forward? Heck no, you need a manual for it (whereas PC BIOSes are friendlier) Want to use a new executable format? Too bad, you need to translate your ELF kernel to ECOFF.

    The fact is, when technologies change, and you don't completely replace the old technology, you have to deal with some of the warts. So the PC BIOS has warts. That just means it's been succesful, if not properly redesigned. These same problems affect other architectures. Ever use a VAX? The ultimate in CISC. Eventually they did their best by cutting down the "real" instructions and emulating the rest in userland software.

    So don't make sweeping generalizations. They tend to be wrong, or do things you don't except (but then that's also a generalization ;)).
    ---
  • Sounds good. And then you want to upgrade said kernel.

    But I liked Kickstart. Even if the graphics were cruddy. :)

  • by dattaway ( 3088 ) on Wednesday June 14, 2000 @02:06PM (#1002031) Homepage Journal
    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.
  • by bhurt ( 1081 ) on Wednesday June 14, 2000 @12:35PM (#1002037) Homepage
    on SourceForge.

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

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...