xv6

维基百科,自由的百科全书
跳到导航 跳到搜索

xv6
Xv6 LS Command Output.png
xv6启动,并使用“ls”命令
开发者MIT
编程语言C语言x86汇编语言
作業系統家族类Unix系统
源码模式开源
最新版本rev11 / 2018年9月2日,​2年前​(2018-09-02
支持的语言英语
支援平台x86多处理器
内核类别宏内核
默认用户界面命令行界面
许可证MIT许可证
官方網站pdos.csail.mit.edu/6.828/xv6

xv6是在ANSI C中针对多处理器x86系统的Unix第六版的现代重新实现。它在麻省理工学院的操作系统工程(6.828)课程中用于教学目的。

目的[编辑]

LinuxBSD不同,xv6非常简单,足以在一个学期内讲完,但仍然包含Unix的重要概念和组织[1]。由于PDP-11机器没有被广泛使用,而且最初的操作系统是用过时的pre-ANSI C编写的,所以该课程没有学习原始的V6代码,而是使用xv6[1]

自文档化[编辑]

xv6 Makefile的一个特性是能够以可读的格式生成整个源代码清单的PDF文档。整个打印输出只有99页,包括交叉引用[2]。这让人想起原始的V6源代码,该代码在《Lions' Commentary on UNIX 6th Edition, with Source Code》一书中以类似的形式发布。

教学使用[编辑]

xv6已被用于许多著名大学的操作系统课程,包括:

美国的西北大学 (伊利诺伊州)[3]喬治·華盛頓大學[4]东北大学 (美国)[5]耶鲁大学[6]哥伦比亚大学[7]约翰·霍普金斯大学[8]波特蘭州立大學[9],南方耶稣复临大学[10]威斯康星大学麦迪逊分校[11]宾汉顿大学犹他大学[12][13]加利福尼亚州大学欧文分校[14]加利福尼亞大學河濱分校[15]伊利诺伊大学芝加哥分校[16]罗格斯大学[17],纽约大学。

中国清华大学[18]

以色列內蓋夫本-古里安大學[19]

印度的印度理工学院孟买校区、印度理工学院马德拉斯校区和印度理工学院布巴内斯瓦尔校区。

瑞典林奈大学[20]

新西兰奥塔哥大学[21]

阿根廷国立科尔多瓦大学[22]National University of Río Cuarto英语National University of Río Cuarto[23]

智利的费德里科圣玛利亚理工大学。

意大利的摩德纳大学[24]巴勒莫大学[25]

伊朗德黑兰大学[26]

巴西米纳斯吉拉斯联邦大学[27]

生产使用[编辑]

  • TrustKernel的T6[28]安全内核是一个xv6 ARM移植的操作系统,已经部署到中国的许多安全手机上。

参考文献[编辑]

  1. ^ 1.0 1.1 Xv6, a simple Unix-like teaching operating system. [2014-09-22]. 
  2. ^ xv6 source listing (pdf). [2018-01-10]. 
  3. ^ EECS 343: Operating System, Fall 2016-17. [2018-11-11]. (原始内容存档于2018-10-24). 
  4. ^ CSCI 3411 - Operating Systems, Fall 2018. [2018-09-27]. 
  5. ^ CS 3650: Computer Systems, Fall 2014. [2014-12-09]. 
  6. ^ CS422/522: Operating Systems, Spring 2010 — Overview. [2010-02-05]. (原始内容存档于2012-07-30). 
  7. ^ COMS W4118: Operating Systems I, Fall 2013. [2013-09-09]. 
  8. ^ 600.318/418: Operating Systems. [2015-11-07]. (原始内容存档于2015-11-04). 
  9. ^ CS 333 Introduction to Operating Systems. [2018-04-10]. 
  10. ^ School of Computing at Southern Adventist University. [2017-12-10]. 
  11. ^ CS-537: Introduction to Operating Systems. [2011-11-04]. 
  12. ^ CS 6460: Operating Systems. [2014-01-20]. 
  13. ^ Embedded in Academia : Xv6. [2014-04-08]. (原始内容存档于2014-04-13). 
  14. ^ University of California, Irvine, Wikipedia, 2018-11-10 [2018-11-14] (英语) 
  15. ^ CS 202: Advanced Operating System. [2017-12-02]. 
  16. ^ CS385 - Operating Systems Concepts and Design. [2015-03-18]. 
  17. ^ 01:198:416: Operating Systems Design. [2010-02-05]. (原始内容存档于2012-07-30). 
  18. ^ FrontPage - OS Teaching Wiki. [2010-03-18]. (原始内容存档于2012-07-30). 
  19. ^ Operating Systems - 2012/Spring - Main. [2012-03-26]. 
  20. ^ 1DV201: Operating system. [2013-03-14]. 
  21. ^ COSC440: Advanced Operating system. [2015-07-14]. 
  22. ^ SistOp14: Operating Systems. [2015-08-06]. 
  23. ^ Operating Systems. [2015-08-06]. [永久失效連結]
  24. ^ Progettazione di Sistemi Operativi. [2017-10-09]. 
  25. ^ Sistemi Operativi. [2015-10-18]. 
  26. ^ Operating Systems instructed by Dr. Mehdi Kargahi. 
  27. ^ DCC605: Sistemas Operacionais. [2015-11-16]. 
  28. ^ T6: TrustZone Based Trusted Kernel. [2015-01-12]. 

外部链接[编辑]