Linked by Thom Holwerda on Mon 25th Nov 2013 17:43 UTC

The Ars Technica article on OS/2 mentions, in passing, Workplace OS, the pie-in-the-sky successor to OS/2 IBM was working on. I found this fantastic journal article written by Brett D. Fleisch and Mark Allan A. Co, which goes into this failed project in great detail.

IBM's Microkernel, named Workplace OS microkernel, was the core components of Workplace OS, a portable successor of OS/2. The basic premise of Workplace OS work was: 1) IBM would adopt and improve the CMU Mach 3.0 microkernel for use on PDAs, the desktop, workstations, and massively parallel machines, and 2) that several operating system personalities would execute on the microkernel platform concurrently. This architecture would allow users to switch between applications written for different operating systems while IBM would also benefit by having one common platform for all product lines. The goals of the microkernel and the technical features of design are described in this paper. We also present lessons that may benefit future projects with similar goals.

Also, I get to use the IBM icon!

Permalink for comment 577433
To read all comments associated with this story, please click here.
RE[2]: Interesting
by some1 on Tue 26th Nov 2013 00:30 UTC in reply to "RE: Interesting"
Member since:

The POSIX personality has some special rights, because you need kernel level support for fork().

Fork is built into NT kernel and one doesn't need any special rights to execute it. More specifically, NtCreateProcess is a generalization of fork. Just pass your process handle as InheritFromProcessHandle, don't pass SectionHandle, and you're done. One can quite easily fork a Win32 process (e.g. see example 6.1 in "Windows NT/2000 Native API Reference" book). The main problem with that is that Win32 libraries, including kernel32 and mscvrt, are not fork-safe -- they cache per-process state in global variables. If you don't depend on Win32 libraries or agree to work-around, you can fork all you want.

Reply Parent Score: 4