- 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
- 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
- 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
下载
下 篇
莱昂氏UNIX源代码分析
本书是U N I X操作系统版本6源代码的姐妹
篇。它对U N I X操作系统的源代码进行了分析。
U N I X 软件系统是由贝尔实验室的肯·汤姆森
和丹尼斯·里奇编写的。
本文档包含了贝尔系统专有的信息。仅限
于贝尔系统中工作与此相关的授权雇员使用。
不允许向非授权雇员泄露本书的内容或为其作
复制。在贝尔系统之外,只限于向 U N I X 分时
操作系统版本 6许可证的持有者配售此书。使
用、复制本文档受到 Western Electric 公司发出
的这种许可权上所指明的限制。
下载
前 言
本书力图详细解释一个操作系统的内核,该操作系统在几年内将成为最重要的系统之一。这
个操作系统就是U N I X 分时系统,它在数字设备公司的 P D P 11计算机系统的较大型机上运行,由贝
尔实验室的肯·汤姆森和丹尼斯·里奇设计并实现。《A C M 通信》(Communication of ACM)1974年
7月号上宣布其问世。
在对U N I X稍加研究后,我们就发现 U N I X 可作为学生们深入学习的正式课程,其理由是:
• UNIX 在我们已具有的系统上运行。
• 该系统非常紧凑,源代码和有关资料都可方便取用。
• 它提供非常广泛的可用功能。
• 它是一个非常优良的操作系统,事实上它开辟了许多操作系统的新领地。
在U N I X 分时系统的魅力和优越性中的一个重要点是其源代码的紧凑性。当只提供少量外部设
备时,该系统常驻内存的内核源代码长度大约只有 9 0 0 0行。通常认为一个人能够理解和维护的程
序长度约为 1 0 0 0 0代码行。大多数操作系统或者其长度超过这种限制 1~2个数量级,或者只向用户
提供非常有限的功能,也就是说或者除极少数非常专注、能投入大量时间的学生外大多数学生都
无法了解其详细情况,或者这种系统是专用的,在技术方面没有进行学习的实际价值。
教授操作系统课程大致有三种方法:第一种是“一般原理”法 (general principle) ,这种方法详
细阐述基本工作原理,并引用若干个现存操作系统作为示例,但一般学生对这些系统都缺少直接
经验。这种方法是 C O S I N E委员会所倡导的,但是根据我们的经验,大多数学生的基础和经验都与
这种方法不相适应。
第二种是“积木块”法(building block),这种方法使学生能够设计并实现一个小规模或“玩具式”
的操作系统,毫无疑问,如果组织得当,这会是非常有价值的经验。但是,这种方法通常偏重于操作系
统设计的某些方面,例如进程同步,因此难于使学生体会实际操作系统的复杂性以及有关的技术难度。
第三种是“实例学习”法 (case study), 这是6 8教程对于系统程序设计课程所推荐的方法, 6 8教
程是A C M 计算机科学教程委员会 (ACM Curriculum Committee on Computer Science)编写的一个报
告,发表于《A C M通信》 1 9 6 8年3月号上。
十年前,这种方法所倡导的将该课程的大部分内容和时间安排到一个单一系统的学习上是不现
实的,其原因是,那时为一定数量的学生提供这种了解和使用适当系统所需的开销太高了。
十年后,经济状况发生了很大变化,如果课程学习所需的只是小型计算机,那么费用就不再是主
要的障碍。这种方法的主要优点—对一个现存系统可以作详细分析,现在能够变成现实。
我们的意见是:使学生有机会学习一个实际工作的操作系统是极为有益的。还有,主修计算机
科学专业的学生在他们的学习生涯中至少应该读并理解一道相当规模的程序,这会使他们得益匪浅。
1 9 7 6年,我们在新南威尔士大学的两门操作系统课程中采用 U N I X作为实例进行教学。本书中
对U N I X所作的各种分析最初的目的就是为了帮助选修这些课程的学生。
这两门课程的每一门都安排为一个学期。对选修这些课程学生的要求是,他们已学习过P D P 11系
统结构和汇编语言,并且在他们先修课程的练习中已经得到机会使用
文档评论(0)