Software:xv6
xv6 startup, and using the "ls" command | |||||
Developer | MIT | ||||
---|---|---|---|---|---|
Written in | C and assembly | ||||
OS family | Unix-like | ||||
Source model | Open source | ||||
|Final release|Latest release}} |
| ||||
Available in | English | ||||
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 pedagogical purposes in MIT's Operating System Engineering course in 2006.[1]
Purpose
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]
Self-documentation
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.
Educational use
xv6 has been used in operating systems courses at many universities, including:
- Ben-Gurion University[3]
- Binghamton University
- CentraleSupélec
- Columbia University[4]
- Ghulam Ishaq Khan Institute[5]
- Federico Santa María Technical University
- George Washington University[6]
- Nile University[7]
- Georgia Tech[8]
- IIIT Allahabad
- IIT Bhubaneswar and PEC Chandigarh
- IIT Bombay[9]
- IIT Delhi
- IIT Madras
- IIIT Delhi
- IIIT Bangalore
- IIIT Hyderabad
- Iran University of Science and Technology[10]
- Johns Hopkins University[11]
- Karlsruhe Institute of Technology[12]
- Linnaeus University[13]
- Milwaukee School of Engineering
- Motilal Nehru National Institute of Technology Allahabad
- National Taiwan University[14]
- National University of Córdoba[15]
- National University of Río Cuarto[16]
- New York University
- Northeastern University[17]
- Northwestern University[18]
- Portland State University[19]
- Rutgers University[20]
- Slovak University of Technology in Bratislava[21]
- Southern Adventist University[22]
- Stony Brook University[23]
- Technion – Israel Institute of Technology[24]
- Tsinghua University[25]
- Federal University of Minas Gerais[26]
- University College Dublin[27]
- University of Belgrade School of Electrical Engineering[28]
- University of California, Irvine
- University of California, Riverside[29]
- University of Hyderabad
- University of Illinois at Chicago[30]
- University of Leeds[31]
- University of Modena and Reggio Emilia[32]
- University of Otago[33]
- University of Palermo[34]
- University of Pittsburgh[35]
- University of Strasbourg[36]
- University of South Florida[37]
- University of Tehran[38]
- University of Utah[39][40]
- University of Virginia[41]
- University of Wisconsin–Madison[42]
- Yale University[43]
See also
References
- ↑ 1.0 1.1 "Xv6, a simple Unix-like teaching operating system". https://pdos.csail.mit.edu/6.828/xv6. "Xv6 is a teaching operating system developed in the summer of 2006"
- ↑ "xv6 source listing" (pdf). https://pdos.csail.mit.edu/6.828/2018/xv6/xv6-rev11.pdf.
- ↑ "Operating Systems – 2012/Spring – Main". http://www.cs.bgu.ac.il/~os122/Main.
- ↑ "COMS W4118: Operating Systems I, Fall 2013". https://www.cs.columbia.edu/~junfeng/13fa-w4118/index.html.
- ↑ "Operating Systems , Fall 2022". https://giki.edu.pk/.
- ↑ "CSCI 3411 – Operating Systems, Fall 2018". https://www2.seas.gwu.edu/~gparmer/classes/2018-08-01-Operating-Systems.html.
- ↑ "ECEN427 - Operating Systems, Fall 2023". http://www.nu.edu.eg/.
- ↑ "General Information — CS-3210, Fall 2017 1 documentation". https://cs3210.cc.gatech.edu/info.html.
- ↑ "Lecture Notes on Operating Systems". https://www.cse.iitb.ac.in/~mythili/os/.
- ↑ "iust os". http://os-course.github.io/fall19/.
- ↑ "600.318/418: Operating Systems". http://gaming.jhu.edu/~phf/2015/fall/cs318/.
- ↑ "Basispraktikum Betriebssystementwicklung, ST 2015". https://os.itec.kit.edu/2993.php.
- ↑ "1DV201: Operating system". https://coursepress.lnu.se/kurs/operativsystem/.
- ↑ "課程大綱". https://nol.ntu.edu.tw/nol/coursesearch/print_table.php?course_id=902%2036700&class=01&dpt_code=9020&ser_no=86710&semester=109-2.
- ↑ "SistOp14: Operating Systems". http://www.famaf.proed.unc.edu.ar/course/view.php?id=171.
- ↑ "Operating Systems". http://dc.exa.unrc.edu.ar/moodle/course/view.php?id=4.
- ↑ "CS 3650: Computer Systems, Fall 2014". http://www.ccs.neu.edu/course/cs3650/.
- ↑ "EECS 343: Operating System, Fall 2016–17". http://www.aqualab.cs.northwestern.edu/class/333-eecs343-xv6.
- ↑ "CS 333 Introduction to Operating Systems". https://www.pdx.edu/computer-science/cs333.
- ↑ "01:198:416: Operating Systems Design". http://www.cs.rutgers.edu/~iftode/cs416_2008.html.
- ↑ "Operačné systémy" (in sk-SK). https://uim.fei.stuba.sk/predmet/b-os/.
- ↑ "School of Computing at Southern Adventist University". http://www.southern.edu/academics/academic-sites/computing/.
- ↑ "CSE 306 -- Course Information". https://bsd7.cs.stonybrook.edu/~cse306/syllabus.html.
- ↑ "094210 Computer Organization and Operating System, Spring 2020". https://moodle.technion.ac.il/course/view.php?id=642.
- ↑ "FrontPage – OS Teaching Wiki". http://os.cs.tsinghua.edu.cn/oscourse.
- ↑ "DCC605: Sistemas Operacionais". http://homepages.dcc.ufmg.br/~cunha/teaching/20132/os.html.
- ↑ "COMP20180 Intro to Operating Systems". https://hub.ucd.ie/usis/!W_HU_MENU.P_PUBLISH?p_tag=MODULE&MODULE=COMP20180.
- ↑ "Operativni sistemi 2 - Projektni zadatak" (in sr-RS). http://os.etf.bg.ac.rs/OS2/projekat/. "Zadatak studenta je da izmeni deo operativnog sistem xv6 tako da podrži raspoređivače čije je opis dat u ovom projektu."
- ↑ "CS 202: Advanced Operating System". http://www.cs.ucr.edu/~heng/teaching/cs202-fall17/.
- ↑ "CS385 – Operating Systems Concepts and Design". http://www.cs.uic.edu/CS385.
- ↑ "Module and Programme Catalogue". http://webprod3.leeds.ac.uk/catalogue/dynmodules.asp?Y=201718&M=COMP-2211.
- ↑ "Progettazione di Sistemi Operativi". http://www.ingmo.unimore.it/site/home/didattica/insegnamento.html?P0_cds_cod=20-262&P0_aa_ord_id=2009&P0_pds_cod=20-262-1&P0_aa_off_id=2017&P0_lang=ita&P0_ad_cod=IIM-36&P0_aa_corso=1&P0_fac_id=10005&P0_coorte=2017&P0_pagpre=880010930.
- ↑ "COSC440: Advanced Operating system". http://www.cs.otago.ac.nz/cosc440/.
- ↑ "Sistemi Operativi". https://classroom.google.com/c/MjQyMjM4ODM5.
- ↑ "CS 1550 Introduction to Operating Systems (COE 1550) -Fall 2020". https://people.cs.pitt.edu/~skhattab/cs1550/.
- ↑ "Conception des Systèmes d'Exploitation". https://mathinfo.unistra.fr/formations/master/master-informatique/science-et-ingenierie-des-reseaux-de-linternet-et-des-systemes-siris/rof/ME192/FRUAI0673021VCOEN655?cHash=2fa0e98c7ede59af4faea3525d272954.
- ↑ "COP6611 Operating Systems - Fall 2023". https://cse.usf.edu/~lohall/cop6611/.
- ↑ "Operating Systems instructed by Dr. Mehdi Kargahi". https://cecm.ut.ac.ir/course/view.php?id=2475.
- ↑ "CS 6460: Operating Systems". https://utah.instructure.com/courses/272234.
- ↑ "Embedded in Academia : Xv6". http://blog.regehr.org/archives/1114.
- ↑ "CS4414: XV6 introduction". https://www.cs.virginia.edu/~cr4bd/4414/S2022/xv6intro.html.
- ↑ "CS-537: Introduction to Operating Systems". http://pages.cs.wisc.edu/~remzi/Classes/537/Fall2011/.
- ↑ "CS422/522: Operating Systems, Spring 2010 — Overview". http://zoo.cs.yale.edu/classes/cs422/2010/info.
External links
RISC-V:
- xv6 source code
- xv6 book source code
- xv6: a simple, Unix-like teaching operating system, xv6 book rev3.
x86 (unmaintained):
- xv6 source code
- xv6 book source code
- xv6: a simple, Unix-like teaching operating system, xv6 book rev11.
- Printable version of the xv6 source code, rev11.
Original source: https://en.wikipedia.org/wiki/Xv6.
Read more |