/sys/doc/ Documentation archive

Rio: Design of a Concurrent Window System

By Rob Pike.


Topic: the external and, particularly, internal design of Rio, the (new) Plan 9 window system.

Descendant of :

    Pike, Rob, ``8½, the Plan 9 Window System'', Proceedings
    of the Summer 1991 USENIX Conference, Nashville, 1991,
    pp. 257-265.

8½ originally written in C, using processes and hand-built coroutines based on setjmp and longjmp (an interesting exercise).

For Brazil, rewritten from scratch in Alef in 1995, and converted to true threads and procs.

Converted (in an afternoon) in 1999 to use the thread library. Historical note: although Alef was a fruitful language, it proved too difficult to maintain a variant language across multiple architectures, so we took what we learned from it and built the thread library for C.

See Also