Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
V (operating system)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Microkernel operating system}} {{for |the Unix variant |UNIX System V}} {{Infobox OS | name = V | logo = | screenshot = | caption = | developer = [[David Cheriton]] | family = [[Distributed operating system]] | working state = Discontinued | source model = | released = {{Start date and age|1981}} | latest release version = Final | latest release date = {{Start date and age|1988}} | marketing target = Research | language = English | programmed in = [[C (programming language)|C]] | update model = Compile from [[source code]] | package manager = | supported platforms = [[Workstation]]s:<br/>[[SUN workstation|SUN]], [[MicroVAX]], [[DEC Firefly]] | kernel type = [[Microkernel]] | userland = | ui = VGTS | license = [[Stanford University]] | preceded by = [[Thoth (operating system)|Thoth]], Verex | succeeded by = | website = }} The '''V''' operating system (sometimes written '''V-System''') is a discontinued [[microkernel]] [[Distributed operating system|distributed]] [[operating system]] that was developed by faculty and students in the [[Distributed computing|Distributed Systems]] Group at [[Stanford University]] from 1981 to 1988, led by Professors [[David Cheriton]] and Keith A. Lantz.<ref name="site">{{cite web |url=http://dsg.stanford.edu/History.html |title=Past Research in the DSG |date=20 July 1995 |access-date=14 September 2020 |website=Distributed Systems Group |archive-url=https://web.archive.org/web/20120727195157/http://dsg.stanford.edu/History.html |archive-date=27 July 2012}}</ref> V was the successor to the [[Thoth (operating system)|Thoth]] operating system and Verex [[Kernel (operating system)|kernel]] that Cheriton had developed in the 1970s.<ref>{{cite book |title=The Thoth system: multi-process structuring and portability |year=1982 |last=Cheriton |first=David R. |author-link=David Cheriton |publisher=North-Holland |isbn=0-444-00701-6}}</ref><ref>{{cite book |last=Cheriton |first=David R. |title=Proceedings of the ACM '81 conference on - ACM 81 |chapter=The design of a distributed kernel |date=January 1981 |author-link=David Cheriton |pages=46β52 |doi=10.1145/800175.809831 |isbn=0-89791-049-4|s2cid=14212831 }}</ref> Despite similar names and close development dates, it is unrelated to [[UNIX System V]]. ==Features== The key concepts in V are ''[[Thread (computing)|multithreading]]'' and ''synchronous [[message passing]]''. The original V terminology uses ''process'' for what is now commonly called a ''thread'', and ''team'' for what is now commonly called a ''[[Process (computing)|process]]'' consisting of multiple threads sharing an address space. 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]].<ref>{{cite journal |title=The V Distributed System |last=Cheriton |first=David R. |author-link=David Cheriton |journal=Communications of the ACM |date=March 1988 |volume=31 |number=3 |pages=314β333 |doi=10.1145/42392.42400 |s2cid=7523994 |url=http://eia.udg.es/~teo/sd/documents/articles/p314-cheriton.pdf |access-date=June 25, 2011 |archive-date=August 12, 2017 |archive-url=https://web.archive.org/web/20170812073612/http://eia.udg.es/~teo/sd/documents/articles/p314-cheriton.pdf |url-status=dead }} Reprinted in ''Innovations in Internetworking'' {{ISBN|0-89006-337-0}}</ref> A thread receiving a message is not required to reply to it before receiving other messages; this distinguished the model from [[Ada (programming language)|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 a [[remote procedure call]] (RPC). The convenience of an automatic stub generator was lacking, but in contrast, the client can pass one parameter by reference, which is not possible with other RPC implementations. From the server side the model differs more from RPC, since 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 the Stanford 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 (such as [[Sprite (operating system)|Sprite]]), V was a complete system that was mostly self hosting. Many students ran V as the only operating system on their diskless [[SUN workstation]]s or [[MicroVAX]] workstations. Compiles could be done either on V, or on [[VAX]] [[Unix]] machines that provided file service in a more stable environment than the ever-changing research system. V did have some notable impacts. After the initial implementation on one computer, the Versatile Message Transaction Protocol (VMTP) was developed to extend the send-receive-reply system call semantics over a [[local area network]].<ref>{{cite journal |title=Versatile Message Transaction Protocol |last=Cheriton |first=David R. |author-link=David Cheriton |journal=RFC 1045 |date=February 1988 |doi=10.17487/RFC1045 |url=https://tools.ietf.org/html/rfc1045 |access-date=June 25, 2011|url-access=subscription }}</ref><ref>{{cite journal |last=Cheriton |first=David R. |title=VMTP: A transport protocol for the next generation of communication systems |journal=ACM SIGCOMM Computer Communication Review |author-link=David Cheriton |year=1986 |volume=16 |issue=3 |pages=406β415 |doi=10.1145/1013812.18217 |isbn=0-89791-201-2|doi-access=free }}</ref> The protocol included multicast support developed by [[Steve Deering]] as a graduate student in the group. The [[Internet Protocol]] layer to support this evolved into the [[IP multicast]] standard.<ref name="site"/><ref>{{cite journal |title=Host Extensions for IP Multicasting |last=Deering |first=Steve |journal=RFC 1112 |date=August 1989 |doi=10.17487/RFC1112 |url=https://tools.ietf.org/html/rfc1112 |access-date=September 4, 2013|url-access=subscription }}</ref> The V-System was used for [[graphical user interface]] (GUI) research. The Virtual Graphics Terminal Service (VGTS) provided a modular [[windowing system]] for both local and remote applications.<ref>{{cite book |title=Partitioning of Function in a Distributed Graphics System |last=Nowicki |first=William I. |date=March 1985 |publisher=Stanford University |url=http://bitsavers.org/pdf/stanford/v-system/nowicki_CSL-85-282_VGTS.pdf}} Technical Report CSL-85-282</ref> The little-known [[W Window System]] got its name because it was first hosted on the V operating system, and the better-known [[X Window System]] in turn got its name because its first version was based partly on W.<ref>{{cite book |title=The Unix Companion |last=Hahn |first=Harley |date=1995 |publisher=Osborne McGraw-Hill |pages=45 |isbn=0-07-882149-5}}</ref> V also spawned another pure microkernel effort at [[Apple Computer]] known as [[Vanguard (microkernel)|Vanguard]], which added a number of improvements to the basic system.<ref>{{cite journal |last1=Finlayson |first1=Ross S. |last2=Hennecke |first2=Mark D. |last3=Goldberg |first3=Steven L. |title=From V to Vanguard: the evolution of a distributed, object-oriented microkernel interface |journal=USENIX Symposium on Microkernels and Other Kernel Architectures |year=1993 |page=3 |url=http://portal.acm.org/citation.cfm?id=1295468.1295471&coll=DL&dl=GUIDE&CFID=30892190}}</ref> Vanguard later disappeared in a reorganization. The [[Tektronix]] VM700 television measurement instrument was developed in a networked V environment in the late 1980s and ran a lightly modified version of the V operating system; this device was manufactured and sold for many years.<!-- How long? --> [[Ridge Computers]]' Ridge Operating System (ROS) was a commercial system based on Stanford's V-System.<ref name="auug-jan1985">{{cite magazine |last=Meer |first=Veigh S. |title=After Newcastle, What? A Report on the Distributed UNIX Meeting |url=http://vtda.org/pubs/AUUGN/AUUGN-V05.6.pdf#page=43 |magazine=Australian Unix Users Group Newsletter |volume=5 |number=6 |pages=5β9 |location= |publisher=Australian Unix Users Group |date=January 1985 |access-date=}}</ref> === Commands === The following is a list of workstation [[command (computing)|commands]] that are supported by the V operating system version 6.0 [[command-line interface]].<ref>[http://bitsavers.org/pdf/stanford/v-system/V_6.0refMan_Jun86.pdf V-System 6.0 Reference Manual]</ref> {{Div col|colwidth=6em}} * addcorr * amaze * [[ar (Unix)|ar]] * biopsy * bitcompile * bits * boise * build * [[cat (Unix)|cat]] * cc68 * [[cd (command)|cd]] * checkers * checkexecs * [[ci (command)|ci]] * [[clear (Unix)|clear]] * clock * [[co (command)|co]] * [[cp (Unix)|cp]] * cpdir * cx * dale * [[date (Unix)|date]] * debug * debugvgts * define * delcorr * delexec * destroy * [[diff]] * do * domake * dopar * doseq * draw * [[echo (command)|echo]] * fexecute * freemem * gftodvi * gftyoe * [[grep]] * hack * [[ident (command)|ident]] * instances * internetserver * iphost * [[kill (command)|killprog]] * listdir * listdesc * [[login]] * [[logout]] * [[mail (Unix)|mail]] * memserver * mf * migrateprog * mon * name * newterm * pagemode * [[password]] * pc68 * [[pwd]] * pwx * Q * query * queryexec * ranlib68 * [[rcs (command)|rcs]] * [[rcsdiff]] * [[rcsmerge]] * rename * [[rlog]] * [[rm (Unix)|rm]] * [[sed]] * serial * show * [[sleep (command)|sleep]] * [[sort (Unix)|sort]] * startexec * storagestats * stuffboot * [[tail (Unix)|tail]] * [[talk (software)|talk]] * [[telnet]] * [[telnet|telnetserver]] * testexcept * timeipc * timekernel * [[tsort]] * type * undefine * ved * [[Emacs|vemacs]] * w * [[wc (Unix)|wc]] * wh * whi {{Div col end}} ==References== {{Reflist}} ==External links== * [http://bitsavers.org/pdf/stanford/v-system V-System documentation] at Bitsavers.org {{Microkernel}} {{Distributed operating systems}} [[Category:Microkernels]] [[Category:Stanford University]] [[Category:Discontinued operating systems]] [[Category:Distributed operating systems]] [[Category:Microkernel-based operating systems]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite book
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite magazine
(
edit
)
Template:Cite web
(
edit
)
Template:Distributed operating systems
(
edit
)
Template:Div col
(
edit
)
Template:Div col end
(
edit
)
Template:For
(
edit
)
Template:ISBN
(
edit
)
Template:Infobox OS
(
edit
)
Template:Microkernel
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)