rio is
Plan 9 from Bell LabsPlan 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 systemA 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
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
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.
rio is
Plan 9 from Bell LabsPlan 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 systemA 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
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
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 9P9P 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 transparentNetwork 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 networkComputer 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 interfaceA 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 LabsBell 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 PikeRobert 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
UNIXUnix 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
XThe 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
BlitIn 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 rewriteA 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½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
AlefThe 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 algebraIn 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 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 is a port of many Plan 9 from Bell Labs libraries and applications to Unix-like operating systems...
- Includes a window manager that emulatesAn 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
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
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 LabsBell 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