Rio (program)
Encyclopedia
rio is Plan 9 from Bell Labs
Plan 9 from Bell Labs
Plan 9 from Bell Labs is a distributed operating system. It was developed primarily for research purposes as the successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002...

's windowing system
Windowing system
A windowing system is a component of a graphical user interface , and more specifically of a desktop environment, which supports the implementation of window managers, and provides basic support for graphics hardware, pointing devices such as mice, and keyboards...

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

Design concepts

Many of its features embody key Plan 9 design concepts:
  • Each window
    Window (computing)
    In computing, a window is a visual area containing some kind of user interface. It usually has a rectangular shape that can overlap with the area of other windows...

     runs in its own private namespace.
  • It exports a file system
    File system
    A file system is a means to organize data expected to be retained after a program terminates by providing procedures to store, retrieve and update data, as well as manage the available space on the device which contain it. A file system organizes data in an efficient manner and is tuned to the...

     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
    9P
    9P is a network protocol developed for the Plan 9 from Bell Labs distributed operating system as the means of connecting the components of a Plan 9 system. Files are key objects in Plan 9. They represent windows, network connections, processes, and almost anything else available in the operating...

    , rio is network transparent
    Network transparency
    Network transparency in its most general sense refers to the ability of a protocol to transmit data over the network in a manner which is transparent to those using the applications that are using the protocol....

     even if it doesn't include any network-aware code.
  • Windows are treated as completely editable text.

History

rio is the latest in a long series of graphical user interface
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

s developed at Bell Labs
Bell Labs
Bell Laboratories is the research and development subsidiary of the French-owned Alcatel-Lucent and previously of the American Telephone & Telegraph Company , half-owned through its Western Electric manufacturing subsidiary.Bell Laboratories operates its...

, most developed by Rob Pike, including the first graphical window system for UNIX
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 (which predated X
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...

), the concurrent window system, and the Blit
Blit (computer terminal)
In computing, the Blit was a programmable bitmap graphics terminal designed by Rob Pike and Bart Locanthi Jr. of Bell Labs in 1982.When initially switched on, the Blit looked like an ordinary textual terminal, although taller than usual: Similar to the VT100 it had an addressable cursor and...

.

rio was a complete rewrite
Rewrite (programming)
A rewrite in computer programming is the act or result of re-implementing a large portion of existing functionality without re-use of its source code. When the rewrite is not using existing code at all, it is common to speak of a rewrite from scratch...

 of
8½ (Plan 9)
8½ is a window system developed for the Plan 9 from Bell Labs operating system by Rob Pike. According to its documentation, the system has little graphical fanciness, a fixed user interface, and depends on a three-button mouse...

 in Alef
Alef (programming language)
The Alef programming language was designed as part of the Plan 9 operating system by Phil Winterbottom of Bell Labs.In a February 2000 slideshow, Rob Pike noted: "…although Alef was a fruitful language, it proved too difficult to maintain a variant language across multiple architectures, so we took...

. 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, 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 alpha compositing
Alpha compositing
In computer graphics, alpha compositing is the process of combining an image with a background to create the appearance of partial or full transparency. It is often useful to render image elements in separate passes, and then combine the resulting multiple 2D images into a single, final image in a...

, whereas 8½ used bitblt operations.

See also

  • Plan 9 from Bell Labs
    Plan 9 from Bell Labs
    Plan 9 from Bell Labs is a distributed operating system. It was developed primarily for research purposes as the successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002...

     - rio's native environment
  • Plan 9 from User Space
    Plan 9 from User Space
    Plan 9 from User Space is a port of many Plan 9 from Bell Labs libraries and applications to Unix-like operating systems...

     - Includes a window manager that emulates
    Emulator
    In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...

     the rio user interface
  • Rob Pike - The author of rio and 8½
  • Blit
    Blit (computer terminal)
    In computing, the Blit was a programmable bitmap graphics terminal designed by Rob Pike and Bart Locanthi Jr. of Bell Labs in 1982.When initially switched on, the Blit looked like an ordinary textual terminal, although taller than usual: Similar to the VT100 it had an addressable cursor and...

     - A terminal developed at Bell Labs
    Bell Labs
    Bell Laboratories is the research and development subsidiary of the French-owned Alcatel-Lucent and previously of the American Telephone & Telegraph Company , half-owned through its Western Electric manufacturing subsidiary.Bell Laboratories operates its...

    that pioneered some of the UI concepts used in Rio.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK