I don't see any need for a "part 3", but I thought I'd throw out an interesting observation that just came up... While we microcontroller people are starting to put more complex multitasking schedulers into very small processors, the "big computer" folk are looking at implementing SIMPLER forms of multitasking (ie ways of devolving tasks into state machines.) This is largely needed to scale performance for modern computing tasks. Seems that if you have something like a great big web server, then using a full fledged process, or even a lightweight "thread" for each of the expected tens of thousands of simultaneous tasks (each lasting for only a couple of seconds) is just WAY too much overhead... Interesting. BillW