In a very roundabout way, I recently got to hear about a cool Sun server feature introduced sometime back in 2003 or 2004: the SCC System Configuration Card. This is a smart card that stores the system hostid and Ethernet MACs, along with other info, and which can be transferred from one server to another.
Monthly Archives: January 2009
Cool Obscure Hardware: Sun SCC and Software License Protection
Off-Topic: Office 2007 Weird Windows Explained
This is a short note about an “aha” moment: ArsTechnica just explained why Excel 2007 windows that look like being documents are not quite that, and how I sometimes manage to start multiple Excel processes by mistake. It seems that Excel is not truly a multi-window app like Word is… but still an MDI app that fakes windows in a way that makes the Windows task bar and Vista task switcher fairly confused. Thanks for the explanation.
Floss Weekly on OpenMPI
FLOSS Weekly recently podcast an interview with Jeff Squyres of OpenMPI. OpenMPI is an open-source implementation of the MPI programming standard. Jeff makes some interesting points on how this has worked out and why it makes, and what MPI is all about. ´
Off-Topic: Getting the good Vista Screen Capture Tool
I have heard some rumors that Windows Vista had a good screen capture tool built into the operating system itself. So when I needed to do some capturing on my home machine, I started looking for it. Turned out that it is an optional install on certain versions of Vista only, but Home Premium is one of those versions. The tool is called “Snipping Tool” in English versions, or “Skärmklippsverktyget” in Swedish versions.
EDA Tech Forum Article on Ecosystem Enablement
I have an article about ecosystem enablement for new hardware, co-authored with Richard Schnur of Freescale published in the December 2008 issue of EDA Tech Forum. The core concept is that a virtual platform solution makes it possible to get a new chip to market faster with better software support, and even enables virtual design-in of a chip at OEM customers before hardware becomes available. The article builds on our joint experience with the QorIQ P4080 launch in the Summer of 2008, where we had several operating systems and middleware packages in place at the moment the chip was announced. EDA Tech Forum requires registration, but it was still free, and there are many other good articles available.
Off-Topic: Moving an iTunes Library to a New Machine
I just got myself a new home PC, to replace my no longer very trusty five-year old Athlon-based PC. In the process, I realized I had to move my iTunes library from the old machine to the new. Reading on the web and the Apple support area made me somewhat skeptical as to the feasibility of this operation… would all my cover art, podcast subscriptions, playlists and ratings survive the move? There are many stories of failed moves and lost data out there… and moving from Windows XP to Vista 64-bit did not make the dread less.
In the end, it turned out it was really dead easy!
Off-Topic: Toddlers Rotating the Screen in Windows
This is really quite funny: it is now twice that slightly panicked family members have called me to ask how to rotate the screen in Windows XP back to normal after toddlers of about six to eight months of age have managed to rotate it to 90 degrees or upside down by just banging on the keyboards of their computers, as small children tend to do.
Threading or Not as a Hardware Modeling Paradigm
Traditional hardware design languages like Verilog were designed to model naturally concurrent behavior, and they naturally leaned on a concept of threads to express this. This idea of independent threads was brought over into the design of SystemC, where it was manifested as cooperative multitasking using a user-level threading package. While threads might at first glance look “natural” as a modeling paradigm for hardware simulations, it is really not a good choice for high-performance simulation.
In practice, threading as a paradigm for software models of hardware circuits connected to a programmable processor brings more problems than it provides benefits in terms of “natural” modeling.

The best way to learn something is to try, fail, and then try again. That is how I just learned the basics of multiprocessor interrupt management. For an educational setup, I have been creating a purely virtual virtual platform from scratch. This setup contains a large number of processors with local memory, and then a global shared memory, as well as a means for the processors to interrupt each other in order to notify about the presence of a message or synchronize in general. Getting this really right turned out to be not so easy.
Embedded.com just