Modern Operating System 4th 中译

前言

本书的第四版与第三版有很大的不同,众多变化不一一列举。为了给增加的内容提供空间并且避免本书的厚度变得难以控制,多媒体系统的章节被移至Web。由于Windows Vista操作系统并没有像微软想象的那么成功,关于Windows Vista的章节也被移除。并且由于Symbian不再流行,相关的章节也被从书内去除。Windows Vista的部分被Windows 8所取代,而Symbbian的章节被Android所取代。另外新增了关于虚拟化和云的章节。以下是各章的概要。

  • 第一章有大规模的更新改动,但是除了关于移动计算机的内容,没有主要章节被增加或者删除。
  • 第二章对材料进行了更新,移除了老旧的内容并且增加了与时俱进的内容。比如我们增加了futex同步原语, 以及在Read-Copy-Update操作时如何避免死锁。
  • 第三章更多关注于现代硬件,同时分段以及MULTICS的比重下降。
  • 在第四章我们移除了CD-Rom,原因是它们不再流行。同时使用更加现代的解决方案替换(比如闪存)。同时在RAID小节中增加了RAID 6。
  • 第五章有较大的变化,移除了CD-Rom,CRT等老旧设备,同时加入了触摸屏等新技术。
  • 第六章变化不大,因为死锁这个话题本身并没有太多变化。加入了一些新内容。
  • 第七章是全新的,主要内容为虚拟化和云。作为学习例程,加入了一节介绍VMware
  • 第八章是之前多处理器系统的升级版。这个版本更多的关注于现在越来越重要的多核及众核系统。这一章也会包含越来越明显的缓存一致性问题。
  • 第九章经过了大量的修订,增加了关于bug利用,恶意软件以及它们的防御手段。同时空指针解引用(null pointer dereference)以及缓冲区溢出(buffer overflow)也增加了更多细节。还增加了防御机制,比如canaries,NX bit及地址空间随机化(address-space randomization)等,及其对策的详细介绍。
  • 第十章经历了重大变化,Unix及Linux的相关内容被更新,并且加入了在智能手机及平板电脑上广泛使用的Android操作系统。
  • 第十一章由第三版中的Windows Vista更新到了Windows 8/8.1。
  • 第十二章是之前版本第十三章的修订版。
  • 第十三章是彻底更新的推荐读物列表。同时参考书目也被大规模更新。
  • 为控制篇幅,原先版本的第七章被移至本书的网站。
  • 此外,贯穿全书的Research部分被全部重做,以反映最新的操作系统研究。各章的课后习题也增加了新内容。

本书附有大量的学习资料,可以在 www.pearsonhighered.com/tanenbaum 获取。其中包含 PowerPoint幻灯片,学习操作系统所需的软件工具,学生的实验,模拟器以及其他课程材料。使用本书的教员应当看一看。合作伙伴的网站为 www.pearsonhighered.com/tanenbaum 。网站部分内容被密码保护,需要使用注册。学生资源包括:

  • 一个Multimedia Operating System的在线章节
  • 实验室实验
  • 在线练习
  • 仿真练习

众多人员参与了第四版的写作,首先是合著者Prof. Herbert Bos of the Vrije University in Amsterdam。他是一名安全领域及Unix领域的专家并且给予了很大帮助,他写了大量的新内容,除了以下列出的部分。

我们的编辑 Tracy Johnson 做了出色的工作,像往常一样,拼接项目,救火,并且保证项目进度。我们也有幸请回了我们的长期编辑 Camille Trentacoste,她的技能大大节约了我们的时间。我们很高兴在阔别数年后再次合作。Carole Snyder在协调各路人马上做的很棒。 第七章中关于VMware的部分(Sec. 7.12)由 Edouard Bugnion ,工作于Switzerland, Lausanne的EPFL,编写。Edouard是VMware公司的创建者之一并且比世界上任何人都熟悉这份工作。对于他的慷慨帮助我们非常感谢。

Ada Gavrilovska of Geogia Tech, 一名Linux领域的专家,更新了她自己写的第三版的第十章。第十章的Android部分由Android操作系统的核心开发者之一,于Google就职的 Dianne Hackborn 编写。Android是如今智能手机操作系统的领跑者,所以对于Dianne的帮助我们十分感激。第十章非常长并且细节很多,但是UNIX,Linux以及Android粉们可以从中学到很多。这个可能是本书中最长并且技术性最强的章节由两名女性编写,我们仅仅做了简单的工作。

我们也没有忘记Windows。就职于Microsoft的 Dave Probert 更新了第十一章,加入了Windows 8.1 。Dave非常清楚Windows并且可以洞悉Microsoft设计的优劣。Windows粉一定会非常喜欢这一章。

因为有众多的专家作贡献,这本书明显要好得多。在这里我们再次对他们无价的帮助表示感谢。

我们也得到了几个评论家的帮助,他们帮忙阅读手稿并且指出其中的错误。他们是 Trudy Levine, Shivakant Mishra, Krishna Sivalingam, 以及 Ken Wong。 Steve Armstrong 制作了本书的教员用的PowerPoint幻灯片。

通常情况下文字编辑和校对人员不会得到感谢,但是 Bob Lentz (文字编辑) 和 Joe Ruddick (校对人员)做了非常出色的工作,Joe 可以在20m外指出Roman Period及Italic字体的区别。然而,作者对任何剩余的错误承担全部责任。读者若发现任何错误都应当联系任一作者。

最后,但并非最不重要的,Barbara 和 Marvin 仍然是最棒的,各自有各自的个性。 Daniel 和 Matilde 是我们家庭的重要补充。 Aron 和 Nathan 是非常棒的小伙子并且 Olivia 是个宝贝。当然,我要感谢 Suzanne 的爱和耐心,更不必说 Druiven , Kersen 和 Sinaasappelsap。

最重要的是,我必须感谢 Marieke, Duko 和 Jip。感谢 Marieke 的爱和对我连夜写作的容忍,感谢 Duko 和 Jip,让我知道生活中有更重要的事情。比如 Minecraft。


Andrew.S.Tanenbaum

Herbert Bos