ARM in the server
I’ve done a fair bit more hacking on ARM lately. This is entirely for my own satisfaction, but it’s good to see that a great deal of server software ports cleanly to it with very little effort.
In the absence of an ARM-powered desktop (or laptop) box, my dev platform is the pocket-puter, but driving it from the desktop monitor, keyboard and mouse for comfort. Now I’ve added to that a regular desktop disc, rather than do builds in/on solid-state storage. The disc is actually a 2GB file formatted with an XFS filesystem, mounted as a loop device and exported to the phone with NFS. The NFS, being run behind a firewall and for a single client under my control, is optimised for speed over integrity and security, including running it async and with nolock on the Nokia client.
Seeded with gcc/g++, this is now a sustainable development platform on which I can build pretty-much anything at the application level, even where packages are not available. In some ways it’d a little like going back to Linux of yesteryear: a great system but with relatively few out-of-the-box packages. For example, the available Tcl package on maemo is missing Tcl-dev, so I had to build that from source before I could build Apache TrafficServer (that’s a sharp contrast to TrafficServer on OpenSolaris, where porting was non-trivial but didn’t require me to build its prerequisites from source)!
I don’t expect ARM to topple Intel’s crown in the server realm, but I’m sure it’s capable of driving a lot of server applications, and the power saving should make that worthwhile for a lot of users! It should be nicely suited to “cloud” applications based on large numbers of small nodes. And basic ‘net applications like web and mail servers. Why are so few of us working on these? Is this a good niche to be getting into?