V (operating system)

From Wikipedia, the free encyclopedia

The V operating system (sometimes written V-System, not to be confused with System V) is a microkernel operating system that was developed by faculty and students in the Distributed Systems Group at Stanford University in the 1980s, led primarily by Prof. David Cheriton. V was the successor to the Thoth and Verax operating systems that Cheriton had worked on previously.

The original V terminology uses "process" for what is now commonly called a "thread", and "team" for what is now commonly called a "process" consisting of multiple threads sharing an address space, but this article will use modern terminology.

The key concepts in V are multithreading and synchronous message passing. Communication between threads in V uses synchronous message passing, with short, fixed-length messages that can include access rights for the receiver to read or write part of the sender's address space before replying. The same message-passing interface is used both between threads within one process, between threads of different processes within one machine, and between threads on different machines connected by a local Ethernet. A thread receiving a message is not required to reply to it before receiving other messages; this distinguishes the model from Ada rendezvous.

One common pattern for using the messaging facility is for clients to send messages to a server requesting some form of service. From the client side, this looks much like RPC (remote procedure call). The convenience of an automatic stub generator is lacking, but on the other hand, the client can pass one parameter by reference, which is not possible with RPC. From the server side the model differs more from RPC, as by default all client requests are multiplexed onto one server thread. The server is free to explicitly fork threads to handle client requests in parallel, however; if this is done, the server-side model is much like RPC too.

V was never an end in itself for Cheriton's group; rather, it was used as a vehicle for many different research projects in distributed operating systems and networking. Much like other operating system efforts of its day (Sprite, etc.), V was a complete system that was mostly self hosting. Many students ran V as the only operating system on their diskless Sun or MicroVAX workstations. Compiles could be done either on V itself or on VAX Unix machines that provided file service in a more stable environment than the ever-changing research system.

In more recent years, with the wide availability of Linux and BSD Unix for PC-class machines, self-hosting research operating systems of this sort seem to have become rare, as there is little motivation to do so much work just to provide oneself with infrastructure. V is mostly forgotten now, but it did leave some footprints on the sands of time: The little-known W Window System got its name partly because it was first hosted (atop the VGTS Graphics Package) on the V operating system, and the well-known X Window System in turn got its name because its first version was based partly on W. V also spawned a more "pure" microkernel effort at Apple Computer known as Vanguard, which added a number of improvements to the basic system. Vanguard later disappeared in a reorganization. The Tektronix VM700 television measurement instrument was developed in a networked V environment in the late 1980s and runs a lightly-modified version of the V operating system; this device is still being manufactured and sold today.

[edit] References

[edit] External links