rio (windowing system)

rio is Plan 9 from Bell Labs' windowing system. It is well known for making its window management transparent to the application. This allows running rio inside of another window manager.

rio
rio windows during a Plan 9 installation
Developer(s)Rob Pike
Initial releaseFourth Edition / April 28, 2002 (2002-04-28)
Written inC
Operating systemPlan 9 from Bell Labs
TypeWindowing system
Websitecm.bell-labs.com/plan9/ 

History

rio is the latest in a long series of graphical user interfaces developed at Bell Labs, mostly developed by Rob Pike, the concurrent window system, and the Blit (which predated X).

rio was a complete rewrite of in Alef. Its main change was that it stopped parsing and rewriting graphical commands and let the client write pixels directly. This was done mainly for efficiency. As Alef disappeared due to being too difficult to maintain given the number of people working on Plan 9 at the time, rio was rewritten in C. This was done using the Plan 9 thread library which was inspired by Alef and had most of its features, such as blocking channels for interthread and interprocess communication. Another important change, due more to the environment than to rio per se, is that rio supports full colour, using alpha compositing, whereas 8½ uses bitblt operations.

Design concepts

Many of its features embody key Plan 9 design concepts:

  • Each window runs in its own private namespace.
  • It exports a file system interface to running applications. This interface is the same rio receives from the operating system, so rio can run inside a rio window without any special arrangements. Because the interface uses 9P, rio is network transparent even if it doesn't include any network-aware code.
  • Windows are treated as completely editable text.
gollark: > 1003 Unsupported Data The connection is being terminated because the endpoint received data of a type it cannot accept (for example, a text-only endpoint received binary data).
gollark: It is a websocket error code.
gollark: Oh no.
gollark: Is this the desktop version or mobile one?
gollark: Invoke dark bee god #145.

See also

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.