LinuxBIOS with X11 server, completely in Flash ROM

LinuxBIOS and X11 screenshot 1
LinuxBIOS and X11 screenshot 2

Now, this is one cool project (and video) from Alan Carvalho de Assis (and friends), as announced on the LinuxBIOS mailing list: LinuxBIOS with X Server Inside (YouTube video).

The setup: LinuxBIOS + a Linux kernel + BusyBox + a tiny X11 server (Kdrive) + the Matchbox window manager + rxvt.

All of this in a normal BIOS chip (2 MB), without any hard drive connected (who needs hard drives when you can fit everything in the BIOS just fine)...

The thing boots into BusyBox in less than 6 seconds, then in ca. 2 seconds into X11 + rxvt. There's probably even room for improvement there...

It seems there will be an OGG Theora version of the video soon, and I hope a small HOWTO about the project, too.

More LinuxBIOS-related screenshots and videos are available in the wiki btw., and a bunch more will follow soon...

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

sun os boots w forth in rom now open I think

its fast too and if its open as I think it is
it would be cool
forth is compact and easier than assembly
this gives sun os as fast suspend that linux can
still not do
its now used in the olpc ox
could be a good option for linux maybe

OFW

It's actually now possible to use Open Firmware as a payload of LinuxBIOS (i.e. on top of LinuxBIOS). I'm not an OFW expert, so I can't say how well OFW works on non-Sun (standard x86) boxes, though...

Uwe.

new RXVT site

the rxvt site url changed to http://www.rxvt.net/ or http://rxvt.sourceforge.net/
A full listing is on http://freshmeat.net/projects/rxvt/

X11 Client

I feel very frustrated recently because X11 clients (running on the Linux server - yup bass-ackwards) using XDM protocols sometimes work sometimes not. I had it working in Fedora Core 5 from both Fedora Linux and from Windows using Cygwin. Fedora 6 came along and it broke.

Here are my frustrations:
1. 15 years ago this stuff worked fine under Solaris or Sun/OS, MIPs and HPUX.
2. Most of my linux work can be done over ssh (or putty) to the server, but GUI and Windows has made this somewhat harder so I'd like to open an X-Window to a remote server on occation. Every time its a hair pull.
3. For many years you couldn't do RDP reliably in the Microsoft World, but now it works like a hose.
4. I am tired of hearing from unix/Linux hads, well... if you were a real unix guy you'ld know who to fix this stuff.
5. I grudgeingly send Microsoft money when I have to but I really like access to source code when I need it.

My Conclusions:
1. Either I am frightfully ignorant of the X11 Server - X11 Client protocols and need help.
2. I need to learn to love Redmond Washington and RDP.
3. Just admit that if I want GUI's and linux on my servers, I need expensive KVM over IP switches.
4. Is there a branch at Xorg that I need to look at to learn how to do this correctly?

Cheers,
Paul

I don't understand the

I don't understand the problem...

Say you have a server A running Linux. It doesn't have to be running X, but needs to have X installed.

I'd just:

ssh A

And then in the terminal, run, e.g. xclock, and an xclock should pop up on your screen. The same with firefox, etc.

ssh and nx (XDMP issues)

no, no...

use ssh -YC to tunnel your X clients through ssh (and compressed).

If the OP wants the whole "X Server in a box" experience then yes, you need something like XDMP, but it's been disabled by default on modern Linux distro's now, because it's a huge security hazard, and most Linux graphical machines are only used as desktops, with local clients.

You could turn XDMP on, or better yet, you could use FreeNX on your server and add an NX client for Linux into the BIOS image one of these beauties. NX is also faster than raw X or RDP (or VNC). Have a look.

Honestly though the gripes are just silly troll bait. Ten minutes (or maybe an hour) of research would have got you this information yourself, and saved your Redmond dollars. It's not rocket science, and it's not an exclusive club.

Excellent

I like the idea of the less is more environment. I've been running DSL (Damn Small Linux) from a 128 meg thumbdrive for awhile now. I love the idea of carrying your OS in your pocket and any portable apps you need are right there.
Getting a working environment down to 2 megs, really bucks the whole trend of big bloated OS's, that really do nothing to enhance productivity. Can't wait to see where this goes.

Truly Awsome

Great job, I can see this thing expanding to the point where we won't have any need for hard drives! Goodbye to the last great bottlekneck in a computer!

Very usefull for thin clients too

A machine that is completely softwareless (is that a word?), boots in a few seconds, connects (over wifi) to a remote Xserver, and then allows you to work on your desktop from anywhere.

Also ideal for digilliterate people: no longer do they need expensive hardware to run + maintain some expensive yet broken OS on: they can rent a virtual managed desktop, and access that with cheap 'unbreakable' hardware.

Diskless clients

Yep, such a scenario is indeed possible, I guess. You can do this already with a small Linux box, but completely from flash is even nicer...

NX Clients

If it all fits it should be a push to get NX into X.org. Have diskless clients, less overhead, great speed.

i like the idea , the os is

i like the idea ,

the os is the bios itself ! genius !

the idea is fine

the idea is fine but:::

Support the screen driver ??? finding ans setting resolution in debian 2009 lenny disapeared (x11 in 800x 600 ) sounds a waste

network drivers ?? wifi is nice of coarse but in etch there was no working wifi in lenny it does not work unless you have an unsafe wifi network web /wpa/wpa2 not supported

what is left of the nice x11 diskless x server ?

just a dream lost in incompatibilities!!!!!!]

Bigger Screenshots...?

Someone have bigger screenshots, you can't really see anything with the ones currently posted..?!

Screenshots

Nope, sorry. I created the screenshots by taking a snapshot of the video, they can only be as detailed as the video is...

Always thought it would be

Always thought it would be useful to be able to remote into BIOS on problematic machine that was failing to boot the OS. There's obviously some security issues, but if those could be dealt with, would seem useful for remote support within organizations, etc.

Remote BIOS access

You can quite surely do that with LinuxBIOS. Use a kernel with TCP/IP support and a small ssh server (dropbear?), that's it... I haven't tried it yet, but it sure sounds doable...

TOS in ROM . . .

It's funny to see this idea come full-circle, and suddenly be a shiny, new project once again.

Once upon a time, I owned an Atari ST with TOS (it's operating system) and GEM (it's GUI) in ROM. I loved that machine, and thought it was really cool that it could do all of these things without an attached HDD (which was still a REALLY expensive technology at the time).

Of course, it was a VERY expensive process to update those ROMs if you chose to do so. . . .

Still, it is a cool project.

yea st TOS was ok, but the

yea st TOS was ok, but the far better Amiga GUI in ROM was the far better expandable idea, simply pressing your two mouse buttons down and being able to select ANY no. of boot partitions and not be limited to a mear 4 masters as the PC is even today seems like the far better option.

getting an OS and GUI in 2 meg prom is easy, the ST and Amiga were doing it 20+ years ago, not quite full circle as linuxBios has a ways to go yet to get the quality/essence of AmigaOS rom options, but theres hope someone will make the effort and take their que from the dated machines roms and reproduce them for the current generation, if their able that is.

well done linux Bios devs, keep at it and we might get close to our favourite real fast booting of old...... soon.

Amiga: no, not all in rom.

Only the lower levels of the Amiga OS were in the "kickstart" rom, the rest was loaded off the "workbench" diskette or hard disk drive partition (actually, the kickstart image was copied from (slow) rom to shadow ram too - after cold boot, one could "softkick" a replacement image in place - handy).

The rom image DID contain enough of "intuition" (the amiga GUI system) to do quite a bit of useful stuff (at the time, most amiga games and some applications shipped as directly bootable disks), but (only just) not enough to even dump you at an amigashell prompt (could dump you at the serial port debugger prompt...)

Fix to Memory Constraint Size

Very cool - was thinking about your 'memory constraint' issue (that only ROM's around 2mb are available)...then it hit's me - why not boot into the basic system through ROM....then have option of 'finishing' through attached USB drive. Just saw an 8Gb usb drive at Fry's - I'm sure you can throw QUITE ALOT into that space, plus enable the user to 'carry their files' with them.

Just a thought - HTH - Dave

The idea can be taken further

Using this development, you can store the main OS in the BIOS, and use a flash card as a personality chip that customizes the OS to the user's specification, ie. flash drive, SD card, etc.

Think of the possibilities - rock up to an internet cafe, insert your personality chip, and boom - service the way you want it.

The applications for this are really endless. It just goes to show, small and simple is powerful.

Boot via ROM

Well, sure, that's the standard case -- you use LinuxBIOS to boot a kernel which resides on your hard drive (whether IDE or SATA or Compact Flash (IDE) or whatever)...

typewriter

I've been wanting a cheap laptop to essentially be a dedicated word processor for years. I hate waiting for a machine to load, and I abhor the distractions that a full service operating system offers while I'm trying to compose something.

A command line interface and a 6 second boot time sound ideal to me.

I can't be the only person who has an interest in a machine like this--witness the Alphasmart product line and its popularity with writers.

If I had the ability to mass produce such machines, I would certainly try to market and sell them.

Superb

Well that is totally awesome - you guys have done yourself proud, looking forward to having a go myself at do this.

Cheers
Usman

Full functional computer on firmware

I have thinking on some similar idea, a Linux + some office applications + a browser, all of them on the motherboard firmware. The computer with this firmware can work without a hard disk, but you could add one if necessary.

We can have a full operational computer right on the motherboard, and we can store documents on pen drives.

Enterprises can have "terminal computers" (like terminals on the mainframe era but much more powerfull) connected to a server computer that works as file server and can be used to load additional enterprise programs in order to run them.

This thin client/computer can be expanded to form a full computer adding a hard disk, DVD, etc, but can work on typical tasks right out of the box, only connecting a monitor, mouse and keyboard.

Flash/LinuxBIOS internet appliance?

You could easily take this idea, and make an internet appliance, using an IDE flash card... EPIA board, and LinuxBIOS.
The boot time/performance would be excellent even with such a low-end machine.
Not to mention, the possibilities for a development box?
Having one of these for every coder, with a good robust text editor, and connecting them to a compile farm (i.e. a couple of good multiprocessor x86 boxen) would result in reduced hardware costs for software developers. For web development, it would literally be as easy as having gvim and firefox on the machine, you could theoretically do some serious work on it. "Dedicated" Linux boxes (i.e. anything single-purpose) would benefit from this technology. Third-world countries could use this sort of thing on old refurbished boxes to breathe new life into old hardware.

I can see pulling this off

I can see pulling this off with 8 Meg to work with. But 2Meg is actually quite impressive. Good stuff!

pretty nifty, seems like of

pretty nifty, seems like of like what nokia uses on the Internet Tablet line except nokia does it via flash memory