rio (program)

From Wikipedia, the free encyclopedia

rio windows during a Plan 9 installation
rio windows during a Plan 9 installation

rio is Plan 9 from Bell Labs's windowing system.

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.

It is most notably known for making its window management transparent to the application. This allows running rio inside rio of another window manager.

[edit] History

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

rio in June 2000
rio in June 2000

rio was a complete rewrite of 8½ 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 insipired by Alef and had most of its features, like blocking channels for interthread and interprocess communication. Another important change, due more to the environment than to rio per se, was that rio supported full colour, using a Porter-Duff algebra, whereas 8½ used bitblt operations.

[edit] See also

[edit] External links