xv6

From Wikipedia, the free encyclopedia
Jump to: navigation, search
xv6
Xv6 LS Command Output.png
xv6 startup, and using the "ls" command
Company / developer MIT
Official website http://pdos.csail.mit.edu/6.828/xv6/
Available in English
OS family Unix-like
Supported platforms multiprocessor Intel x86
Source model Free Software / Open source
Written in C
License MIT license
Kernel type Monolithic
Default UI Command-line interface
Release information
Latest release rev7 / August 28, 2012; 22 months ago (2012-08-28)

xv6 is a modern reimplementation of Sixth Edition Unix in ANSI C for multiprocessor x86 systems. It is used for pedagogical purposes in MIT's Operating Systems Engineering (6.828) course.

Purpose[edit]

Unlike Linux or BSD, xv6 is simple enough to cover in a semester, yet still contains the important concepts and organization of Unix.[1] Rather than study the original V6 code, the course uses xv6 since PDP-11 machines are not widely available and the original operating system was written in archaic pre-ANSI C.[1]

Self-documentation[edit]

One intriguing feature of the Makefile for xv6 is the option to produce a PDF of the entire source code listing in a readable format. The entire printout is only 92 pages, including cross references.[2] This is reminiscent of the original V6 source code, which was published in a similar form in Lions' Commentary on UNIX 6th Edition, with Source Code.

Educational use[edit]

xv6 has also been used in operating systems courses at Rutgers University,[3] Yale University,[4] Columbia University,[5] Ben-Gurion University,[6] Johns Hopkins University,[7] Tsinghua University,[8] the University of Wisconsin-Madison,[9] the University of Utah,[10] [11] and the Linnaeus University[12] in Sweden.

References[edit]

  1. ^ a b "Xv6, a simple Unix-like teaching operating system". Retrieved 2010-02-05. 
  2. ^ "xv6 source listing" (pdf). Retrieved 2011-10-15. 
  3. ^ "01:198:416: Operating Systems Design". Retrieved 2010-02-05. 
  4. ^ "CS422/522: Operating Systems, Spring 2010 — Overview". Retrieved 2010-02-05. 
  5. ^ "COMS W4118: Operating Systems I, Fall 2013". Retrieved 2013-09-09. 
  6. ^ "Operating Systems - 2012/Spring - Main". Retrieved 2012-03-26. 
  7. ^ "600.318/418: Operating Systems". Retrieved 2010-02-28. 
  8. ^ "FrontPage - OS Teaching Wiki". Retrieved 2010-03-18. 
  9. ^ "CS-537: Introduction to Operating Systems". Retrieved 2011-11-04. 
  10. ^ "CS 6460: Operating Systems". Retrieved 2014-01-20. 
  11. ^ "Embedded in Academia : Xv6". Retrieved 2014-04-08. 
  12. ^ "1DV201: Operating system". Retrieved 2013-03-14. 

External links[edit]