In his keynote speech at UniForum '94, UNIX co-creator Dennis Ritchie discussed the operating system's past and present with a large, appreciative audience. Then he explained his own new operating system of the future.
Ritchie, who developed UNIX with Ken Thompson at AT&T Bell Laboratories in Murray Hill, NJ, today is department head of computing techniques research at the same company.
He said UNIX has succeeded because of its underlying model of computation, the portability that he built in, and the subsequent events that furthered UNIX's development. Expressing mild amazement at the system's success, Ritchie noted that when he and Thompson developed it in 1969, it was not intended to become more than a research project, and that, at 25, it's more than half the age of the commercial computing industry itself. "That's a long time for an operating system to last," he said.
The strength of the underlying model of UNIX is its simplicity, Ritchie said, in that it relies on three basic ideas - a pre-structured file naming system, the idea of a file as just a sequence of bytes, and that devices and objects other than real files can be represented as files. "Even now, the UNIX kernel is really a simple, coherent and powerful model of computation," he asserted.
About portability, Ritchie said, "From a technical point of view, the single most important thing about UNIX for users is that it does run on lots of different platforms without an awful lot of change. The fact that this works as well as it does and has survived as long as it has is the most important thing I've done in my career."
Problems with UNIX
However, UNIX now has built-in problems that make competition with other commercial systems difficult, Ritchie pointed out. For one, commercial UNIX is "not that simple anymore," with complex add-ons such as networks, windowing systems and graphical user interfaces. "It's really hard to see as one simple, well-defined system. It's been transported physically to a lot of different people. There's no one group that owns it."
In addition, many computer users today are bored with operating systems, Ritchie said. "The whole idea of an operating system being simple and coherent is only of interest to a small number of people," he noted. "They just want to use it to run applications. They have no interest in forming a model of what really is happening inside the machine."
Finally, "Software portability is not an advantage to everyone," Ritchie said. "It's an advantage to users but it's not an advantage to the manufacturers because they don't like to be in the commodity business. They want to be in the exclusives business, where only they can sell their own product and of course charge more money for it. Software openness is very valuable but users have to insist on it. They have to take the manufacturers by the neck and say, 'Do it the standard way.'"
Plan 9
Describing his latest project, the Plan 9 operating system, Ritchie said it is based on two concepts used in UNIX and one new concept. The first two are that all objects are either files or file systems, and that all communication with files uses a protocol that can be made into a remote procedure call protocol.
The new concept in Plan 9 is that of a name space in a process - a set of files that a process can see and talk about and that can be adjusted per process. By contrast, in UNIX on any one machine, a set of files is the same for all the processes and every process sees it the same way. In Plan 9, a universe of files can be adjusted dynamically per process. The implication of the concept is that "a lot of things turn out to be easy that were hard before," Ritchie said.
As a result, "You can run a process on any machine and make it believe it is in one location even though it's here one day and there the next," he said. That has economic implications because "lots of operations become cheaper," Ritchie said. "It's cheaper to do graphics and cheaper to run a CPU server."
Another advantage of Plan 9, which is not a product yet, is that it doesn't take much memory, Ritchie said - about 160K on his machine at home and 300K to 400K on RISC servers in the laboratory. The system can be run on a laptop, he said.
"The notion of having a name space that depends on the process is a powerful one and a dangerous one," Ritchie said. "You really have to think about security in a different way when anybody can simulate a password file."