24 February 2009

Low-Powered But Decent-Performance Linux Boxes

Today I read some cool news: Marvell is offering a $100 wall-wart computer. This seems to be a pretty neat box, with a reasonable amount of RAM, USB 2.0, GbE, and an ARM-flavored CPU. This would definitely make for a workable home NAS or print server box. Very cool stuff.

I am a big fan of low-powered (electrically speaking) computers. A few years ago I began experimenting with a Soekris net4801 box. I wanted a low-powered (~5 watts at 120 volts) machine to use inside my house. My net4801 uses a consumer-grade 2GB CF card for its hard drive, and it runs a customized Linux distro for its OS.

The thing that drew me towards the Soekris box was the fact that it is x86 compatible, and at the time I purchased the box I was in the middle of a stressful project at $DAYJOB in which I was doing a lot of cross-compilation. I didn't really want to come home from a long day at work to do even more cross-compilation... On my net4801 I have installed a package manager, so adding a new package to the box usually just involves installing from a package.

For my purposes, having a low-powered but decent-performance box available for use at home is VERY handy -- much more handy than simply leaving a noisy, power-sucking tower workstation on all the time at home.

One thing is certain: the whole area of low-power/decent-performance computers is a very interesting place right now. I can't wait to see what the future brings.

2 comments:

Bill McGonigle said...

There's been some recent work to mark ARM-based machines as easy to work with as x86. I don't think it's quite done yet, but pretty soon we should be able to avoid the pain of the cross-compile/embedded aspect.

kdc said...

From my perspective, the other day I had a very real need to install Expect onto my net4801. Being able to install this from a package allowed me to get my job done quickly.

I guess what I am saying is that I don't care if the host processor is running an ARM or an x86 or anything else, but for this particular use I am glad to not have to cross compile in order to get what I want to accomplish done.