| xv6 | |||||||
|---|---|---|---|---|---|---|---|
| xv6 startup, and using the " ls " command | |||||||
| Developer | MIT | ||||||
| Written in | C and assembly | ||||||
| OS family | Unix-like | ||||||
| Source model | Open source | ||||||
| Latest release |
| ||||||
| Available in | English | ||||||
| Supported platforms | multiprocessor Intel x86 and RISC-V | ||||||
| Kernel type | Monolithic | ||||||
| Default user interface | Command-line interface | ||||||
| License | MIT license | ||||||
| Official website | pdos | ||||||
xv6 is a modern reimplementation of Sixth Edition Unix in ANSI C for multiprocessor x86 and RISC-V systems. It was created for educational purposes in MIT's Operating System Engineering course in 2006. [1]
MIT's Operating System Engineering course formerly used the original V6 source code. xv6 was created as a modern replacement, because PDP-11 machines are not widely available and the original operating system was written in archaic pre-ANSI C. Unlike Linux or BSD, xv6 is simple enough to cover in a semester, yet still contains the important concepts and organization of Unix. [1]
One 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 99 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.
xv6 source code is paired by a commentary book that explains key concepts of operating systems using xv6 as an example. It also mentions which parts of the OS can be improved further, and how. For example, Version 5 of RISC-V xv6 [3] book, among others, introduces following topics:
xv6 has been used in operating systems courses at many universities, including:
Xv6 is a teaching operating system developed in the summer of 2006
Zadatak studenta je da izmeni deo operativnog sistem xv6 tako da podrži raspoređivače čije je opis dat u ovom projektu.
RISC-V:
x86-32 (unmaintained):
x86-64 (maintained by University of Strasbourg):