Domain: openfirmware.info
Stories and comments across the archive that link to openfirmware.info.
Comments · 7
-
Re:HTTPS Everywhere
Wouldn't it be funny if some of the corporations involved with OpenBIOS
are there to sneak in a stealthier version of Rakshasa ? -
Open-Source Hardware projects stalled
Looks like many open-source hardware projects have stalled.
Case in point:
http://www.openfirmware.info/OpenBIOS
The latest download available is dated 2009-03-01
As for opencores.org the projects are scattered here and there
-
Re:The real problem is not one platform
These are ARM based platforms, but unlike the PC, there's not one single platform.
Having worked on this sort of thing... you are so right. (Aside: there are some non PC x86 devices. SGI made some non-PC x86 workstations at one point, and the new generation of Atom phones won't be PCs.)
However, all is not lost: this is exactly the kind of problem that Open Firmware was designed to solve. Each machine has an Open Firmware interpreter on it that acts as a boot loader. Once loaded, the OS can query Open Firmware to find stuff out about the machine. What's more, Open Firmware has the ability to find basic device drivers written in bytecode on the devices themselves. Plug in a PCI mass storage device and you can boot from it --- regardless of your machine's architecture! And since Open Firmware is based around a Forth interpreter, you have a complete programming environment out of the box, which is fantastic for troubleshooting.
Anyone who's used a Sun workstation, a PowerPC Mac or an OLPC will have been exposed to it. Unfortunately, Intel's adoption of EFI as the official next-gen PC boot architecture pretty much squashed Open Firmware's momentum.
You can find a BSD/MIT licensed version here... and yes, there is an ARM version.
-
Re:BIOS
Sure it is. There's even projects to do it. For example, OpenBIOS.
-
Re:bootloader not needed
The ROM BIOS knows how to bootstrap directly from floppy. That's how MS-DOS used to work and the code is still there.
It is perfectly possible to replace a conventional BIOS with something like OpenBIOS (a Free re-implementation of the standard firmware in SPARC and PowerPC workstations) or Coreboot (formerly LinuxBIOS).
One of my previous projects was a storage appliance, running Linux, which had a custom motherboard with a Peniutm III 1000MHz and 2 250GB SATA disks.
The ROM (c.f. "BIOS" on a PeeCee) contained LinuxBIOS which loaded a Linux kernel directly off of
/dev/hda, which happened to be an IDE flash disk on this system. This kernel lived in a region of un-partitioned space between the parition table and the start of the first partition.They wanted to change the software so that the kernel would be on the first partition of the flash disk, so I found a Protected Mode boot loader called FILO and ported it to our system. It was broken with our LinuxBIOS. The stack segment was not being configured, so it was crashing when it "made the jump to light speed." But with some cunning inline assembly language, I found the bug and fixed it.
FILO didn't need VGA or any "text mode" display either. It could do IO over the serial port, which was ideal for our hardware, since it had no video at all (remember it was a storage appliance). Customers used the system via a web browser over the network.
So the Field Circus engineers had to use a terminal emulator on a laptop to configure the system (when up and running). I did a cool hack in inittab to add an option to run PPP over the serial port instead of the menu, so they could use the web admin interface from their laptops without plugging in to the customers' networks, which ofter was forbidden.
RISC workstations (UltraSPARC, PowerPC, etc) don't have "text mode" when they boot. They have a frame buffer i.e. bitmapped graphics. However, the firmware ("BIOS") knows how to speak serial, so everything can be done over a serial cable with a terminal. This is extremely useful sometimes.
I believe someone even wrote a GUI for OpenFirmware. OpenFirmware code is portable since it's a kind of FORTH and the bytecode interpreter is standard. That means you can run the same firmware code on an UltraSPARC, PowerPC or x86. Pretty cool?
Note that we still call the PeeCee's ROM "the BIOS" because it still holds code compatible with the original IBM PC and AT to provide Basic Input/Output Routines for use with MS-DOS. They provided and extra layer of abstraction between the hardware and MS-DOS, thus making it easier to change the hardware without changing too much of MS-DOS. These were very poorly-designed routines (non-reentrant for a start) which made it very difficult to write a portable multitasking OS for IBM PC, AT and clone hardware.
I've actually got the IBM manual with the ROM BIOS disassembly in it right here...
-
Re:Dupe?
Well... he allready thinks so... have you heard of open bios???? http://www.openfirmware.info/Welcome_to_OpenBIOS
-
Re:How does Stallman use the web?