Pragmatic nonblocking synchronization for real-time systems USENIX '01: http://os.inf.tu-dresden.de/~hohmuth/prj/usenix2001.html Phd Thesis: http://os.inf.tu-dresden.de/~hohmuth/prj/phd.pdf
Summary: pragmatic methodology for developing systems using nonblocking synchronization with following properties: o excellent real-time properties and low synchronization overhead o applicable to kernels and user-mode programs o extends to multi-processor systems o not restricted to CPUs that provide atomic CAS2 instruction o straightforward interfaces similar to mutual exclusion using only simple lock-free data structures o wait-free lock designs for low-overhead priority inheritence o real-time serializer o address spaces The mechanisms described in the papers were used to create Fiasco, an implementation of an L4 microkernel interface. Fiasco is actively developed and available under GPL at http://os.inf.tu-dresden.de/fiasco/. The author states it is used daily at TU Dresden with a user-level Linux server running a variety of applications. I.e., it isn't just an academic prototype. It currently runs on arm, ia32, ia64, and the Linux system-call interface. A microkernel running atop an OS' system-call interface, is perhaps not so dissimilar from a common language interpreter like parrot that these papers may hopefully prove useful to someone... -- Garrett Goebel IS Development Specialist ScriptPro Direct: 913.403.5261 5828 Reeds Road Main: 913.384.1008 Mission, KS 66202 Fax: 913.384.2180 www.scriptpro.com garrett at scriptpro dot com