Categories
Open Source Programming

ELKS : Baby Linux refusing to grow up

Recently there was a spike in the ELKS mailing list. For those that don’t know what ELKS is, let me tell you that is is basically Linux-86; the port of Linux for the 8086 and 80286 processors. An email with subject “HELP WANTED” caused a thread of responses. The mail came from Miguel Bolanos with the purpose of bringing the project back to life.

It is true that ELKS has been dead for quite some time now. The CVS is frozen and the mailing list is taking vacation. I must say that it makes me sad to see that as I was one of the main developers of ELKS, but thats life. In general ELKS has always been mostly of hack value. It is true that there is absolutely no reason to have an 8086 desktop running ELKS today, except for the cool factor of it.

These where supposed to be the users of ELKS, people what would find it cool to have an 8086 with 640K, multitask instead of running DOS. I choose to work on ELKS just for that. It was so intriguing for me to have my old 8086 run a webserver, and I made it. I had the honor to run the first Linux based webserver running on an 8086 compatible machine with 640K of memory and no hard disk! There were big times!

I think that it is basically the same driving force that makes people write 4K intros today. With today’s powerful PCs it is getting hard to have a challenge. So people set limits and try to see what they can do. ELKS was a challenge. The kernel had to be under 64K, coded in a C compiler producing very unoptimized code, both in size and speed. Putting a TCP/IP stack with a BSD socket interface in there can be very interesting.

All in all TCP got there, then having an 8086 use a swap file sounded interesting also. Remember 8086 wasn’t designed to do this things. The 8086 has no MMU, no protection… to make it sort, swapping was implemented too. You suddenly had an 8086 with virtual memory!

After that the cool factor went away. There was no challenge. It could be done so it was not interesting any more. As a result of the hack value users only, the user base was small. When I stopped programming it, there was no one else to keep up. Some small patches came up at some times but no dedicated work on the kernel. This way the project faded with time. Now even if I was coding it for the fun of it, it makes me sad that little people use it. The time was definitely not wasted for all that I said before, but also because with my involvement in that project I had the opportunity to get to know people like Alan Cox and other big heads of the open source community.

The bottom line : Even if people will never use ELKS they can always use it as a learning tool, and that is something!