xv6
一个类Unix的自由操作系统
此条目翻译品质不佳。 |
xv6是以ANSI C重新编写的Unix第六版现代实作版本,适用于多处理器x86或RISC-V系统。xv6于2006年问世,作为麻省理工学院的作业系统工程(6.828)课程的教学使用。
开发者 | MIT | ||||
---|---|---|---|---|---|
编程语言 | C语言和汇编语言 | ||||
作业系统家族 | 类Unix系统 | ||||
源码模式 | 开源 | ||||
当前版本 |
| ||||
支持的语言 | 英语 | ||||
支援平台 | 多处理器x86RISC-V | ||||
内核类别 | 宏内核 | ||||
默认用户界面 | 命令行界面 | ||||
许可证 | MIT许可证 | ||||
官方网站 | pdos |
目的
与Linux或BSD不同,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],纽约大学。
印度的印度理工学院孟买校区、印度理工学院马德拉斯校区和印度理工学院布巴内斯瓦尔校区。
阿根廷的国立科尔多瓦大学[22]和National University of Río Cuarto[23]。
智利的费德里科圣玛利亚理工大学。
生产使用
- TrustKernel (页面存档备份,存于互联网档案馆)的T6[29]安全内核是一个xv6 ARM移植的操作系统,已经部署到中国的许多安全手机上。
参考文献
- ^ 1.0 1.1 Xv6, a simple Unix-like teaching operating system. [2014-09-22]. (原始内容存档于2015-08-23).
- ^ xv6 source listing (PDF). [2018-01-10]. (原始内容 (pdf)存档于2021-12-09).
- ^ EECS 343: Operating System, Fall 2016-17. [2018-11-11]. (原始内容存档于2018-10-24).
- ^ CSCI 3411 - Operating Systems, Fall 2018. [2018-09-27]. (原始内容存档于2021-12-17).
- ^ CS 3650: Computer Systems, Fall 2014. [2014-12-09]. (原始内容存档于2016-12-16).
- ^ CS422/522: Operating Systems, Spring 2010 — Overview. [2010-02-05]. (原始内容存档于2012-07-30).
- ^ COMS W4118: Operating Systems I, Fall 2013. [2013-09-09]. (原始内容存档于2021-09-21).
- ^ 600.318/418: Operating Systems. [2015-11-07]. (原始内容存档于2015-11-04).
- ^ CS 333 Introduction to Operating Systems. [2018-04-10]. (原始内容存档于2018-10-25).
- ^ School of Computing at Southern Adventist University. [2017-12-10]. (原始内容存档于2018-10-20).
- ^ CS-537: Introduction to Operating Systems. [2011-11-04]. (原始内容存档于2021-11-14).
- ^ CS 6460: Operating Systems. [2014-01-20]. (原始内容存档于2021-09-21).
- ^ Embedded in Academia : Xv6. [2014-04-08]. (原始内容存档于2014-04-13).
- ^ University of California, Irvine, Wikipedia, 2018-11-10 [2018-11-14] (英语)
- ^ CS 202: Advanced Operating System. [2017-12-02].
- ^ CS385 - Operating Systems Concepts and Design. [2015-03-18]. (原始内容存档于2021-09-21).
- ^ 01:198:416: Operating Systems Design. [2010-02-05]. (原始内容存档于2012-07-30).
- ^ FrontPage - OS Teaching Wiki. [2010-03-18]. (原始内容存档于2012-07-30).
- ^ Operating Systems - 2012/Spring - Main. [2012-03-26]. (原始内容存档于2021-09-21).
- ^ 1DV201: Operating system. [2013-03-14]. (原始内容存档于2022-04-01).
- ^ COSC440: Advanced Operating system. [2015-07-14]. (原始内容存档于2022-02-09).
- ^ SistOp14: Operating Systems. [2015-08-06].
- ^ Operating Systems. [2015-08-06].[永久失效链接]
- ^ Progettazione di Sistemi Operativi. [2017-10-09]. (原始内容存档于2021-09-21).
- ^ Sistemi Operativi. [2015-10-18].
- ^ Operating Systems instructed by Dr. Mehdi Kargahi.[失效链接]
- ^ DCC605: Sistemas Operacionais. [2015-11-16]. (原始内容存档于2021-09-21).
- ^ 課程大綱. [2023-03-20]. (原始内容存档于2023-03-20).
- ^ T6: TrustZone Based Trusted Kernel. [2015-01-12]. (原始内容存档于2021-10-29).
外部链接
- xv6源代码 (页面存档备份,存于互联网档案馆)
- xv6 book源代码 (页面存档备份,存于互联网档案馆)
- xv6源代码的可打印版本 (页面存档备份,存于互联网档案馆), rev11.
- xv6:一个简单的,类Unix的教学操作系统。 (页面存档备份,存于互联网档案馆), xv6 book rev11.
- 操作系统工程(6.828) (页面存档备份,存于互联网档案馆)
- T6 (页面存档备份,存于互联网档案馆), xv6 based secure OS using ARM TrustZone.