acm-header
登录

ACM通信

最后一个字节

问答:系统思考


Andrew S. Tanenbaum在linux.conf.au

Andrew S.Tanenbaum在linux.conf.au 2007上做主题演讲。

信贷:丹尼尔·史密斯

安德鲁·s·塔南鲍姆(Andrew S. Tanenbaum)是阿姆斯特丹自由大学(Vrije Universiteit in Amsterdam)的计算机科学教授,20多年来一直处于操作系统设计的最前沿。想要欣赏塔南鲍姆的幽默感、学术思考和生活哲学,请查看他主页上的FAQ (http://www.cs.vu.nl/~ast/home/faq.html).

您最出名的是MINIX,这是您在1987年创建的类unix操作系统。

UNIX的Version 6在大学中得到了广泛的应用,它是操作系统课程中流行的工具。然后AT&T的一些会计说,“哎呀,如果我们保守这个秘密,我们可以赚更多的钱,”所以他们在第七版合同中加入了一个条款,说你不能再教它了。那时,我决定编写一些看起来很像UNIX的代码,但这是我自己的代码,不受UNIX许可的约束。

MINIX现在怎么了?我知道你多年来一直在不断地开发和完善它。

是的,在2004年,我决定重新拾起它,并真正表明我认为微内核是一种更可靠的做事方式。

这就是我们可以通过分解组件来构建更可靠的操作系统的想法。

我觉得很奇怪的是,有人相信你可以把一个复杂的操作系统当成一个巨大的程序来运行。这太复杂了。我的意思是,世界上还有其他复杂的东西,但它们通常是模块化的。

这就是为什么决定将MINIX基于微内核而不是单片内核的原因。

是的,微内核是在内核模式下运行的一小段代码,它为系统提供了基础,本身并没有做太多的工作。然后,操作系统作为其他进程的集合在用户模式下运行。所以,不是一个大程序做所有的事情,你有一个程序驱动磁盘,一个程序处理音频,一个程序管理内存,每个程序做一个特定的任务,并通过定义良好的协议与其他程序通信。

因此,通过将操作系统分解为定义良好的部分,您可以使它更可靠。

这还意味着您可以独立替换部件,这将产生各种后果,比如安全性。MINIX有所有这些组件,这些服务器和设备驱动程序运行用户进程。每一块都有一定的力量。内核中有一个数据结构,它告诉每个进程,它被允许做什么。因此,如果黑客在音频驱动程序中发现了一个漏洞,并接管了它,并想要派生它,内核会说:“对不起,你没有派生的权限,音频驱动程序没有理由这样做。”当然,它并不完美,但它给试图进入系统的人设置了很多障碍。

您认为微内核系统如何能够渗透到更广泛的消费者市场?

我不认为这很容易,但我能想到一些可能发生的途径。欧盟的一些人已经在讨论改变法规,要求软件和其他所有东西一样受同样的责任法律的约束。如果你制造了一个轮胎,一千万分之一会爆炸,你不能说,“嗯,轮胎有时会爆炸。”为什么软件不像其他产品?想象一下,如果它不能工作,会有一些责任。制造商会突然对制造可靠的产品非常感兴趣。

您还参与过与安全相关的项目,比如电子投票系统。

投票机的问题在于知道这个软件是可以信任的。在这一领域工作的密码学家有复杂的方案来解决这个问题,但这些方案是如此复杂,几乎只有专业的密码学家才能理解它们。我们设计了一个方案,虽然它使用了密码学,但更简单,更容易使用。


“我认为微内核是一种更可靠的做事方式。”


我们假设软件是开源的。在你去投票的时候,你可以带着一些手持设备来查询投票机,“给我一个当前存储在你内存中的软件的密码校验和。”然后你就可以检查它,知道机器上运行的软件是应该在那里的软件。我们还有很多其他的设计问题,比如如何分配密钥,以及不相信任何一方。但基本上,我们正在尝试设计一个比现有系统更安全、更不容易被黑客攻击的系统。

这听起来像是一个非常全面的方法。

我总是试图从系统的角度来看待问题。我也做过传感器网络的研究,有人提议在国家边境投放传感器,以防止人们偷偷潜入。他们唯一担心的是,“如果有人捕获了传感器,偷走了所有的钥匙?”他们没有考虑的是,“传感器的范围是多少?”它如何分辨非法移民和兔子?”任何系统都会在最薄弱的环节受到攻击,所以你必须注意最薄弱的环节在哪里,而不是哪一个是数学上最有趣的问题。

回到顶部

作者

利亚霍夫曼是一位住在纽约布鲁克林的科技作家。

回到顶部

脚注

DOI: http://doi.acm.org/10.1145/1721654.1721680

回到顶部

数据

UF1数字Andrew S. Tanenbaum在linux.conf.au 2007上做主题演讲。

回到顶部


©2010 acm 0001-0782/10/0400 $10.00

允许制作本作品的全部或部分的数字或硬拷贝用于个人或课堂使用,但前提是该拷贝不是为了盈利或商业利益而制作或分发,并且该拷贝在第一页上带有本通知和完整引用。以其他方式复制、重新发布、在服务器上发布或重新分发到列表,需要事先获得特定的许可和/或付费。

数字图书馆是由计算机协会出版的。版权所有©2010 ACM有限公司


没有发现记录

登录为完全访问
»忘记密码? *创建ACM Web帐户
文章内容:
Baidu
map