现代操作系统(原书第4版)

[荷] Andrew S. Tanenbaum

出版时间

2017-07-01

ISBN

9787111573692

评分

★★★★★

标签

编程

书籍介绍
这本书最引争议之处,恰是它的价值所在:它不教你怎么写代码、怎么调API,而是逼你理解操作系统'为什么这么设计'。读者反复提到'抽象'二字——好的抽象把不可管理的复杂性切成两半,一半是定义,一半是随时拿来解决问题。作者用'所有进程都平等,但某些进程更平等'来解释优先级调度,用'个体重复系统发育'说明技术如何把'过时'概念卷土重来,这种思维方式比知识点更耐嚼。它适合愿意慢读、愿意重读的人:知识架构清晰,进程、内存、文件、死锁一目了然,但深度有限,想亲手实现一个OS会失望。真正的收获,是获得一种审视计算机系统的视角,而非一份速查手册。
作者简介
Andrew S. Tanenbaum拥有麻省理工学院的理学学士学位和加州大学伯克利分校的博士学位,如今他是阿姆斯特丹自由大学计算机科学学院的教授。他曾经是计算与图像高级学院的院长,这是一个跨大学的研究生院,主要研究高级并行、分布式以及图像系统。他同时也是荷兰皇家艺术与科学院的教授,这使得他没有变成一个刻板的人。他还赢得过享有盛名的欧洲研究理事会卓越贡献奖。 过去一段时间,他的主要研究方向是编译器、操作系统、网络以及分布式系统。现在他的主要研究方向是安全可靠的操作系统。他在这个研究方向已经发表了超过175篇经常被引用的期刊和会议论文。Tanenbaum教授还撰写或参与撰写了5本教材,并被翻译成20种语言,其中包括巴斯克语和泰语。这些教材被全球的大学使用,总计有163个版本(语言和版本加起来)。 Tanenbaum教授还编写了大量的软件,特别是MINIX,这是一个小型的UNIX。其灵感直接源于Linux以及Linux最初开发的平台。如今的MINIX版本是MINIX 3,专注于成为一个非常可靠和安全的操作系统。只有当任何用户都不会遭遇操作系统崩溃的情况时,Tanenbaum教授才认为他完成了自己的工作。MINIX 3是一个欢迎所有人来完善的开放源代码项目,请访问www.minix3.org下载MINIX 3的免费版本,并试着运行它。x86和ARM版本都可用。 Tanenbaum教授的博士生在毕业后都有很好的前途,对于这一点教授本人非常自豪。在这方面,他如同一只爱孩子的母鸡。 Tanenbaum教授是ACM会士、IEEE会士,也是荷兰皇家艺术与科学院院士。他荣获了相当多的ACM、IEEE和USENIX奖项。如果你对此感到好奇,可以去他的Wikipedia主页查看。他还有两个荣誉博士学位。 Herbert Bos在特温特大学获得硕士学位,在剑桥大学计算机实验室获得博士学位。此后,他为Linux等操作系统的可信I/O架构做了大量工作,同时也基于MINIX 3研究系统。他现在是阿姆斯特丹自由大学计算机科学学院系统与网络安全系的教授,主要研究方向是系统安全。他与学生一起以新颖的方式检测并阻止攻击,分析并对恶意软件进行反向工程,还共同拆卸过僵尸网络(横跨几百万台计算机的恶意网络基础设施)。2011年,他因在反向工程领域的研究获得了ERC奖。他的三个学生因所写的与系统相关的论文被评为欧洲最佳博士论文而获得了Roger Needham奖。
AI导读
核心看点
  • Tanenbaum经典教材,内容全面涵盖进程、内存、文件系统等核心概念。
  • 紧跟时代更新,新增Android、虚拟化、云技术及最新安全防御机制。
  • 习题极具挑战性,结合理论与动手实践,深入理解操作系统精髓。
读者共识
  • 公认的经典教材,知识架构清晰,是操作系统领域的权威参考书。
  • 翻译水平争议极大,部分术语错误严重,影响阅读体验和理解。
  • 适合复习巩固或高阶学习,纯零基础入门可能感到吃力且枯燥。
精彩摘录
  • "抽象是管理复杂性的一个关键。好的抽象可以把一个几乎不可能管理的任务划分为两个可管理的部分。其第一部分是有关抽象的定义和实现,第二部分是随时用这些抽象解决问题。"
  • "个体重复系统发育:一些技术暂时消失的结果会造成我们有时需要反复考察一些“过时”概念,即那些在当代技术中并不理想的思想。而技术的变化会把一些“过时”概念带回来。正由于此,更重要的是要理解为什么一个概念会过时,而什么样的环境的变化又会启用“过时”概念。"
  • "多线程(即 Intel 所谓的超线程,前文注)不提供真正的并行处理。在一个时刻只有一个进程在运行,但线程的切换时间则减少到纳秒数量级。"
  • "从中我们可以看出,计算机工业有着不断用新的前缀或后缀来扩展首字母缩写词的习惯。我们还能看出,像“高级”这样的形容词应当谨慎使用,否则30年后再回首时会显得非常愚昧。"
  • "在每台计算机上有一块双亲板(在政治因素影响到计算机产业之前,它们曾称为“母板”)。"
  • "为了说明George Orwell关于 “所有进程都是平等的,但是某些进程更平等一些” 的含义,可以给更重要的进程额外的彩票,以便增加它们获胜的机会。"
  • "Main memory is divieded up into cache lines, typically 64bytes..."
  • "1、考察操作系统有两种观点:资源管理观点和扩展的机器观点。在资源管理的观点中,操作系统的任务是有效地管理系统的各个部分。在扩展的机器观点中,系统的任务是为用户提供比实际机器更便于运行的抽象。这些抽象包括进程、地址空间以及文件。 2、操作系统的历史很长,从操作系统开始替代操作人员的那天开始,到现代多道程序系统,主要包括早期批处理系统、多道程序系统以及个人计算机系统。 3、由于操作系统同硬件的交互密切,掌握一些硬件知识对它们是有益的。计算机由处理器、存储器以及I/O设备组成。这些设备通过总线连接。 4、所有操作系统构建所依赖的基本概念是进程、存储管理、I/O管理、文件管理和安全。 5、任何操作系统"
目录
目录
出版者的话
译者序
前言
作者简介

显示全部
用户评论
写得多好啊,比什么公开视频都好。非常概括。
行文欠条理,翻译无水准。
◼︎◻︎◻︎◻︎◻︎◻︎ Tanenbaum 文风幽默,内容全面,力荐
很好的入门!
比较好的入门操作系统书籍
从头读到文件系统部分,并跳跃到后面看了Linux。从宏观角度来说,本书是对操作系统领域发展历程的全面总结,其介绍的内容范围极为广泛,几乎没有任何同类著作能够与之匹敌。从微观角度来说,本书对操作系统核心内容(进程/线程调度,虚拟内存管理,文件系统等)的介绍非常的清晰和深入,书的后半部分通过几个具体的操作系统实例让读者进一步深化对操作系统基本概念的理解。但我并不认为本书完美无缺,理由如下:首先,我认为本书不适合新手入门,因为其内容较为抽象,缺乏对操作系统的感性认知。第二,对于云计算,虚拟化,安全等领域的介绍不够平易近人,想读懂需要很多的知识和经验积累。(当然,作为一本操作系统书籍,能够介绍这些本就极为复杂的主题实属不易,即使略不平易近人,也无可厚非)第三,翻译是败笔,建议结合英文原版对比阅读
书是极好极全面的书 但是翻译太垃圾了
大哥你这书真的不太好看懂。。不知道是原作者的问题还是翻译的问题,被迫换了本书+看讲课视频才弄懂
挺好的,但不建议一口气读完
信息冗余低,本人太垃圾,一页十个坑,让人心头血直滴。 看了一天,发觉还是导论比较合适。 这一本,比较适合复习。
下载
收藏