Home      Discussion      Topics      Dictionary      Almanac
Signup       Login
Rio (program)

Rio (program)

Overview
rio is Plan 9 from Bell Labs
Plan 9 from Bell Labs
Plan 9 from Bell Labs is a distributed operating system, primarily used for research. It was developed as the research 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 rio of another window manager.

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. It displays the output of and may allow input to one or more processes....

     runs in its own private namespace.
  • It exports a file system
    File system
    In computing, a file system is a method for storing and organizing computer files and the data they contain to make it easy to find and access them...

     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.
Discussion
Ask a question about 'Rio (program)'
Start a new discussion about 'Rio (program)'
Answer questions from other users
Full Discussion Forum
 
Encyclopedia
rio is Plan 9 from Bell Labs
Plan 9 from Bell Labs
Plan 9 from Bell Labs is a distributed operating system, primarily used for research. It was developed as the research 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 rio 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. It displays the output of and may allow input to one or more processes....

     runs in its own private namespace.
  • It exports a file system
    File system
    In computing, a file system is a method for storing and organizing computer files and the data they contain to make it easy to find and access them...

     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
    Computer networking
    Computer networking is the engineering discipline concerned with communication between computer systems or devices. Networking, routers, routing protocols, and networking over the public Internet have their specifications defined in documents called RFCs...

    -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
A graphical user interface is a type of user interface item that allows people to interact with programs in more ways than typing such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment with images rather than...

s developed at Bell Labs
Bell Labs
Bell Laboratories is the research and development organization of Alcatel-Lucent and previously of the American Telephone & Telegraph Company .Bell Laboratories has had its headquarters at Murray Hill, New Jersey, and it has research and development facilities...

, most developed by Rob Pike
Rob Pike
Robert C. Pike is a software engineer and author. He is best known for his work at Bell Labs, where he was a member of the Unix team and was involved in the creation of the Plan 9 from Bell Labs and Inferno operating systems, as well as the Limbo programming language.He also co-developed the Blit...

, including the first graphical window system for UNIX
Unix
Unix is a 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 graphical user interface for networked computers, and was initially developed as part of Project Athena...

), the concurrent window system, and the Blit
Blit (computer terminal)
In computing, the Blit is a programmable bitmap graphics terminal designed by Rob Pike and Bart Locanthi Jr of Bell Labs in 1982. Acting initially as a "glass Teletype" ASCII terminal, after logging into a Unix system a window manager could be downloaded, with each window attached as a separate...

.

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 by Phil Winterbottom of Bell Labs as part of the Plan 9 operating system.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 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
Alpha compositing
In computer graphics, alpha compositing is the process of combining an image with a background to create the appearance of partial 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 process...

, 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, primarily used for research. It was developed as the research 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
    An emulator in computer sciences duplicates the functions of one system using a different system, so that the second system behaves like the first system...

     the rio user interface
  • Rob Pike
    Rob Pike
    Robert C. Pike is a software engineer and author. He is best known for his work at Bell Labs, where he was a member of the Unix team and was involved in the creation of the Plan 9 from Bell Labs and Inferno operating systems, as well as the Limbo programming language.He also co-developed the Blit...

     - The author of rio and 8½
  • Blit
    Blit (computer terminal)
    In computing, the Blit is a programmable bitmap graphics terminal designed by Rob Pike and Bart Locanthi Jr of Bell Labs in 1982. Acting initially as a "glass Teletype" ASCII terminal, after logging into a Unix system a window manager could be downloaded, with each window attached as a separate...

     - A terminal developed at Bell Labs
    Bell Labs
    Bell Laboratories is the research and development organization of Alcatel-Lucent and previously of the American Telephone & Telegraph Company .Bell Laboratories has had its headquarters at Murray Hill, New Jersey, and it has research and development facilities...

    that pioneered some of the UI concepts used in Rio.

External links