[LinuxBIOS] Why LinuxBIOS is Better <was LinuxBIOS on Laptops.>
bari at onelabs.com
Tue Sep 5 20:51:53 CEST 2006
Rogelio Serrano wrote:
> On 9/3/06, Kevin Purcell <kevinpurcell at pobox.com> wrote:
>> (not a troll)
>> What would be the selling point to the laptop maker of using LinuxBIOS?
>> Why would they want LinuxBIOS rather than buying (and modifying) a
>> solution from a commercial BIOS company and their CPU/chipset(s)
> many things that go beyond the bios. you cant make an argument with
> the bios alone. you have to show what an open bios would bring and
> actually link that to higher sales. for example if it allows
> ubiquitous computing where you would rather use your laptop instead of
> pen and paper then that would be convincing. instant accessibility is
> a very big thing now. <snip> ... if your pc can bootup in 3 seconds
> that changes a whole lot of things.
Some selling points might include:
LinuxBIOS is a much lower cost solution than commercial BIOSes.
LinuxBIOS has no royalty fees, no cost for source or software
LinuxBIOS is technically superior to commercial BIOSes.
LinuxBIOS is written almost entirely in C.
LinuxBIOS operates mainly in 32 bit mode.
LinuxBIOS offers faster boot times than commercial BIOSes.
LinuxBIOS has lower complexity than commercial BIOSes.
LinuxBIOS has lower latencies than commercial BIOSes.
LinuxBIOS is far better at detecting and configuring hardware than
LinuxBIOS can load a kernel over any device, network, protocol, and file
system that Linux supports.
LinuxBIOS supports low level cryptographic support for strong pre-boot
authentication, secure remote console support and secure configuration
LinuxBIOS is easier to develop than commercial BIOSes.
LinuxBIOS is easier to maintain than commercial BIOSes.
LinuxBIOS is released under GPL.
LinuxBIOS is more fun, does not cause cancer and allows you to sleep at
(feel free for anyone else to chime in here)
Commercial BIOSes have royalty fees, high costs for source and software
Commercial BIOSes are mostly written in assembler, operate mostly in 16
bit mode, and provides services that few modern 32 bit operating systems
Commercial BIOSes have long boot times.
Commercial BIOSes are complex and have long latencies.
The ACL team found that commercial BIOSes do a poor job of setting up a
PC for modern OSes. They found:
Commercial BIOSes configure memory in a suboptimal way. For example,
some BIOSes were discovered to use memory capable of CAS2 speeds at a
much slower CAS3 setting.
Commercial BIOSes incorrectly configured PCI address spaces that opened
up security holes when memory-mapped cards (e.g. Myrinet) were used.
Commercial BIOSes had suboptimal assignments of interrupt requests. Some
BIOSes were found to share IRQs between multiple devices when such
sharing was not required. This sharing of IRQs added latency upon
Commercial BIOSes incorrectly configured BIOS tables such as the $PIR
table, so that the critical information Linux needs for IRQ assignment
was not available. So pervasive are some of the errors that they have
impacted the Linux 2.4.19 kernel; in this version, GEODE IRQ setup was
changed, incorrectly, to accommodate some broken motherboards.
Commercial BIOSes had incorrect ID strings, for example the
string``Mainboard vendor name here'' was in the BIOS instead of the
mainboard vendor name.
Commercial BIOSes had no way to upgrade the BIOS from a modern OS (some
vendors shipped DOS diskettes for a BIOS upgrade; others required that
you boot a Windows 3.1 CD and run an upgrade program).
Commercial BIOSes had no way to preserve CMOS settings when a BIOS is
upgraded (one vendor recommended we record the settings on paper and
then re-enter them for each machine; a difficult task on a 960-node
system with no keyboard or console).
Commercial BIOSes also have structural problems that derive from
therequirements for supporting DOS. One of these is the requirement that
the BIOS zero memory. This requirement makes postmortem debugging
virtually impossible, as a reset results in erasing the memory image of
the previously running operating system.
Commercial BIOSes also have problems accommodating custom built
hardware, and can take considerable time to boot.
Commercial BIOS bugs or errors are almost impossible to fix.
(feel free for anyone else to chime in here again)
More information about the coreboot