Weasel @ 1.0

The "PC Weasel 2000", that wacky hardware revolution-on-a-card that caused Slashdot to go bananas when they publicized the story some months back, is ready for prime time. And it's Calgarian creators can't wait to do the production run and ship.

Weasel PhotographAs the "realweasel.com" web site says, the Weasel turns Intel (or clone)-based boxes running Linux or xBSD into real servers. What's the key to a real server? The ability to administer everything remotely.

While Unix-like operating systems do allow administration of everything about the OS level remotely (unlike other alleged OS products we could name), Intel-related hardware suffers for server jobs from its ancestry as PC workstation hardware. To do a bottom-level reboot of the machine, or to adjust BIOS settings like the boot disk, you must be physically present because these functions are only available at the keyboard, and only reported to the video card. They can't be redirected to the serial port and handled via modem.

This lets the PC-descended hardware solutions out of a lot of server jobs: servers in remote areas, or running equipment across a large plant site like a refinery, or even just equipment at a large corporation with too few sysadmin staff to allow a lot of running around.

Herb Peyerl and Jonathan Levine of Canada Connect Corporation are examples of an increasingly-common kind of sysadmin: they are hired by corporations to administer machines by contract in lieu of full-time staff.

"We wanted something like the Weasel ourselves, badly", says Herb. "We could never figure out why nobody else invented one. We literally waited for years, assuming that it was just around the corner from some major hardware manufacturer. We couldn't believe it when there was not only no such product anywhere on the market, but not hint of one in development. Finally, we decided we had to take matters into our own hands."

There followed over a year extraordinary labour. With Jonathan on hardware, and Herb on the software, the two ground away the hours they could spare from running Canada Connect to produce the hardware hack that is going to have thousands of engineers smacking their heads and saying "Why didn't I think of that?" in coming months.

Conceptually, the Weasel is basically simple:

You "log in" to the Weasel, over serial line or a modem, and see in your terminal screen what is sent (character mode only) to the PC screen - and your keystrokes, including CTRL-ALT-DEL, are sent in return. As the screen snapshot of Herb's terminal session shows, you can edit the BIOS parameters at the start of a boot just as if you were there.

There are several added functions that round out the Weasel's administrative repetoire. It can simulate the hitting of the PCs RESET key via the plug-in of an attached jumper line to the PC motherboard's reset jumper terminals; it can monitor port 0x80 to see what is happening at the hardware level during boot-up, and monitor every POST code.

Confession: I asked Herb if it could also jumper the "power-off" signal to an ATX power supply. "That didn't seem wise," Herb said. "Think about it." Herb credited me with taking only two seconds to bury my face in my hands and laugh. "It takes most people who ask that much longer to realize it would be the last signal you send." he consoled me.

There are also some more minor hacks, like support for some of the needed non-ANSI characters over the terminal session. Herb was especially proud of the "watchdog" function included in the Weasel 1.0. "It checks for a dead OS every 3 seconds, and sends the reboot signal if it stops responding. That requires cooperation and activation by the kernel, and we're barely starting on that software. But it'll be a real bonus for the goal of easy administration when we have it. So many systerm admin calls are for nothing more than a simple reboot of a wedged machine."

I also asked Herb about security on the Weasel. "We decided that had to be done outside the PC." Herb replied. "If we had all kinds of security programming in the Weasel itself, we'd also need various reset strategies for forgotten passwords, and it just gets too complicated. Most of these are going to be used in situations where the router or terminal server or modem themselves have security that the customer already relies upon."

An unusal feature of the Weasel is that all of its software is Free: the user can read, use, modify and even profit from customization of the Weasel. "It's about 5300 lines of (mostly) C, assembler, and include files," Herb summarized. "Which boils down with gcc to just 18K - though I had to write most of my own C libraries so that stuff I didn't want from, say, 'strcat', wouldn't be compiled in. " Herb asked me to stress that not only is the code available, "but the whole tool chain. We know that many people will want to customize it."

The 18K of code has lots of room left over in the Weasel's capacious 128K memory. There are four code partitions allowed, each of which can be up to 32K. Everything about the Weasel is software configurable, from the presence of features like "watchdog", to the activation keystrokes, to the very operation code in use. "In debug mode, you can switch between any of your four possible code-bases in the partitions, giving you a pretty flexible development environment", Herb enthused. He made sure that the reprogramming of the Weasel was as simple as sending it a file with the standard "S-records" used by all EPROM burners.

The code runs two different CPUs on the card: a venerable 2 MHz 68HC11 (a very close brother of the much-beloved Motorola 6809 of our youth, extended in various ways for embedded uses with more ports and functions), and an Atmel AVR 905443 - a RISC chip with the remarkable capacity to reduce its own speed from 8MHz right down to zero - the power-down mode taking less than 1 micro-amp. The Atmel chip is only used to provide the "keyboard function" of the Weasel - almost an insult to a powerful RISC CPU, but, at about $3 each, in volume - why not?

The first 25 Weasels around now sitting in neat rows at Canuck, each one handmade by Jonathan - not that anybody could possibly tell Jonathan's work from machine-made. A production run is immininent and the Canuckers are beginning to face up to the task of answering in marketing detail the hundreds of queries they've had from firms as diverse as AMD and Red Hat. For the present, Herb gives $200 US as the retail price, though he stressed that coming-soon design changes would drop the price substantially. (For firms used to paying $10,000 and up for reliable remote servers and still adjusting to the notion that a $2000 Intel box can do better, the 10% additional cost to make it truly remote-run isn't about to be a barrier, is my bet.)

Interested parties can bash away at a Weasel-run machine for themselves at:

telnet://demo.realweasel.com

(be prepared for a wait if others get there before you!)