Sections:

All contributions in this site reflect the authors' opinions and they are not necessarily endorsed by, or reflect the beliefs of, anarchyinthetubes, as neither do most of the opinions in other sites.

/sys/doc/ Documentation archive

Rio: Design of a Concurrent Window System

By Rob Pike

History

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

Descendant of 8½:

    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.

original page
cat.4l77.com