美国之行巧遇Windows首席架构师David Cutler畅聊实录(一)

taiji2525 2011-11-15 11:16:32
美国之行巧遇Windows首席架构师David Cutler畅聊实录(一)

美国之行巧遇Windows首席架构师David Cutler,作为来自中国大陆的软件工程师,与这位当世天神级别的大宗师相遇,话当然少不了啦。

笔者:总有很多人用UNIX KISS设计哲学批判WINDOWS的集成特性,请问您怎么看待这个事情呢?从来没有见到您发表过什么看法哦。我猜您一定有您的原因吧,想听您是怎么看待UNIX KISS设计哲学的,(KISS=Keep it Stupid and Simple 几个简单的小程序,排列组合,便解决了很复杂的问题。)

David Cutler:哦,孩子,很多人都向我鼓吹Ken Thompson和Dennis Ritchie 的那一套,说Windows为什么不象UNIX那样设计呢?其实,我看计算机界多是一群低能动物缺乏人类的心智,上个世纪初,同样的问题发生在了数学界,最后哥德尔卓越的证明了希尔伯特是错误的,其实也就是UNIX KISS设计哲学是错误的,可是一直到今天计算机界却还推崇着UNIX的那一套错误的哲学。

你知道,欧几里德几何学,几条简单的基本公理,排列组合,推导出整个几何学体系,这一套严密精确的推理系统,数学家希尔伯特非常欣赏,上个世纪初的数学家大会上他说“我们必须知道,我们必将知道”,号召世界上的数学家把整个数学体系都形式化,将整个数学体系严格公理化,要把整个数学建立在几条几条简单的基本公理上,然后用机器逻辑排列组合,推导出所有的数学定理,在当时这是一个非常美妙的梦想。但是后来,哥德尔的出现,彻底粉碎了希尔伯特的计划。哥德尔证明的“哥德尔不完备性定理”,是人类认识到的宇宙最深邃的真理,对于任意包含算术系统的数学系统,如果这个系统不是自相矛盾的,那么一定存在无穷多的定理,它们是真的,却无法证明,超出了该数学系统判定的极限能力。一致性和完备性,假定数学不是自相矛盾的话,我们就必须承认数学是不完备的,也就是说有这么一些数学命题是不可判定的:我们既不能证明它们为真,也不能证明它们为假。包括一些很普通的事情,比如连续统假设,比如哥德巴赫猜想,我知道你们中国很多人都想证明它,其实,这是一个不可判定命题,任何人如果宣称他证明了哥德巴赫猜想,那么他的证明就一定是错误的。数论中很多命题都超出了数学证明的极限能力,甚至一些是不能判定是不是能判定的,甚至不能判定它是不是不能判定是不是能判定的。也就是说,把整个数学建立在几个公理排列组合的逻辑推理体系上是一个错误的想法。有无穷多的数学定理是不能通过逻辑推理证明的。

那么,UNIX,把人类要做的事情建立在几个基本程序排列组合数据流推理的体系上,不一样的吗,这根本不可能!有无数的事情,都不能这样做。UNIX KISS设计哲学其实是一种极端错误的设计哲学。

希尔伯特的想法被后来人称作是独裁者的思想,金字塔尖上的几个公理当皇帝统治压迫着层层的定理,UNIX KISS设计哲学其实就是希尔伯特想法的翻版而已。我当年还在上学时就写文章批判过这种设计哲学,但是一直到现在,这种哲学还是这样流行。

只有不复杂的问题能化繁为简,真正复杂的问题,是不能化繁为简的,这样的怎么办?整体不可拆分为部分,面对这样的东西,怎么办?VMS是我早年主持设计的OS,里边几个关键处的代码,没有规律,不能复用,但是却真正的解决了问题。面对怪物般的问题,有时候,就是需要怪物般的代码。

当然,局限于计算机的实质,任何操作系统,从指令上讲,都是那几条CPU指令的排列组合,从最终能力上讲,任何操作系统都没有差别,但是它们的设计理念却对实际做的事情有至关重要的影响。

其实VMS/WINDOWS是远远比UNIX更先进的设计理念,最终集成起来的软件,能让用户比用UNIX那几条命令的排列组合干更多的事情。但是这个世界上,优秀的往往被人们所抛弃,垃圾思想垃圾哲学堆砌出的UNIX却被大量的应用在服务器上。我有时候就想不明白,UNIX的希尔伯特独裁逻辑哲学为什么被那么多人接受呢?世界上太多的人奴性太强了。

笔者:据说VMS是最稳定的操作系统?有连续开机10年不死机的,而UNIX/LINUX没有能超过2年的。稳定性的差别是否就是源于这种设计理念的问题?

David Cutler:是的,UNIX从来没有正视过系统中的不稳定因素,总是通过化繁为简的方式躲避开,很多问题是根本不能这样解决的,而UNIX从来不想着真正的解决。UNIX是一个非常落后的垃圾系统,但是人类社会,却常常是这样的垃圾系统大行其道,甚至统治了真正的文明世界。

笔者:关于软件集成和多程序分治组合,在我们中国有个叫王垠的清华学生,说VISUAL STUDIO 一个 IDE 集成了编辑器,编译器,汇编器,调试器,跟踪器…… 这个编辑器功能肯定比不上 VIM 或 Emacs,编译器比不上 GCC,汇编器比不上 as,调试器比不上 gdb, ddd, 跟踪器比不上 strace, ltrace, truss……我说,那我想“调试时编辑并继续”呢?

David Cutler:整体并不是部分的组合,整体的功能大于个体功能的和。所以软件集成优于软件组合的解决方案。

笔者:我很早就也感觉到,WINDOWS其实确实是一种比UNIX更先进的设计理念,但是,为什么您不把这些早些时候公诸于众呢?

David Cutler:你可能没有感觉,美国其实是一个最专制最独裁的国度,是美国政府不让我说这些。哥德尔当年在爱因斯坦的陪同下移民美国时,要学习美国法律,哥德尔经过仔细分析,发现了美国法律不完全性,有一个漏洞,会让美国逐步加速走向独裁,他跟移民法官说了,但是后来却被政府禁止发表这个言论,一直到今天我们也不知道那个漏洞是什么,那么我们有理由相信,哥德尔的预言已经成真了。
...全文
571 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
flytoparis 2011-11-18
  • 打赏
  • 举报
回复
从上面的对话看出,他还不如我,楼主是杜撰的吗
机智的呆呆 2011-11-16
  • 打赏
  • 举报
回复
downmooner 2011-11-16
  • 打赏
  • 举报
回复
David Cutler天生脾气火爆,和人争论时喜欢双手猛击桌子以壮声势。 日常交谈F-word不离口。他面试秘书时必问:”what do you think of the word ‘****’?” ,让无数美女刹羽而归。终于有一天,一个同样火爆的女面对这个问题脱口而出:”That’s my favorite word”。于是她被录取了,为David Cutler工作到NT3.5发布。
downmooner 2011-11-16
  • 打赏
  • 举报
回复
百科上写这人性格是很火爆。但不知道上面的话是不是真的。
abc78400123 2011-11-16
  • 打赏
  • 举报
回复
David Cutler这家伙想不到比我还厉害
实在是佩服佩服
AnYidan 2011-11-16
  • 打赏
  • 举报
回复
人民的眼睛是雪亮的
luciferisnotsatan 2011-11-16
  • 打赏
  • 举报
回复
真的假的?如果是转载,请注明
nevergone 2011-11-16
  • 打赏
  • 举报
回复
是不是真的啊?
本书是著名的操作系统内核专家Mark Russinovich和David Solomon撰写的Windows操作系统原理的最新版著作,全面和深入地阐述了Windows操作系统的整体结构以及内部工作细节。本书针对 Windows Server 2003、Windows XP和Windows 2000做了全面更新,通过许多练习实验让你直接感受到Windows的内部行为。另外,本书还介绍了一些高级诊断技术,以便使你的系统运行得更加平稳和高效。无论你是开发人员还是系统管理员,你都可以在本书中找到一些关键的、有关体系结构方面的知识,通过这些知识你可以更好地做系统设计、调试,以及性能优化。
全书内容丰富、信息全面,主要包括的Windows操作系统深度知识有:理解Windows的关键机制,包括系统服务分发和调度机制、启动和停机,以及注册表;挖掘Windows的安全模型,包括访问控制、特权和审计;利用内核调试器和其他的工具来检查内部系统结构;检查与进程、线程和作业相关的数据结构和算法;观察Windows如何管理虚拟内存和物理内存;理解NTFS的操作和格式,诊断文件系统访问问题;从上往下查看Windows的网络栈,包括映射、API、名称解析和协议驱动程序;诊断引导问题,执行崩溃分析。本书适合广大Windows平台开发人员、IT专业从业人员等参考使用。

“本书是有关Windows内部机理核心的权威之作。如果你想要知道Windows内部是如何工作的,那么,这就是你想要的书。……如果你跟我一样,想要“深入浅出”地看一看Windows,那么,这本书正好是你的一个起点。”
——Windows系统之父、Windows平台开发副总裁Jim Allchin

“每一位认真的操作系统开发人员都应该在他或她的案头有这本书。”
——微软公司Senior Distinguished Engineer、Windows NT首席设计师David N. Cutler
本书是著名的操作系统内核专家Mark Russinovich和David Solomon撰写的Windows操作系统原理的最新版著作,全面和深入地阐述了Windows操作系统的整体结构以及内部工作细节。本书针对 Windows Server 2003、Windows XP和Windows 2000做了全面更新,通过许多练习实验让你直接感受到Windows的内部行为。另外,本书还介绍了一些高级诊断技术,以便使你的系统运行得更加平稳和高效。无论你是开发人员还是系统管理员,你都可以在本书中找到一些关键的、有关体系结构方面的知识,通过这些知识你可以更好地做系统设计、调试,以及性能优化。
全书内容丰富、信息全面,主要包括的Windows操作系统深度知识有:理解Windows的关键机制,包括系统服务分发和调度机制、启动和停机,以及注册表;挖掘Windows的安全模型,包括访问控制、特权和审计;利用内核调试器和其他的工具来检查内部系统结构;检查与进程、线程和作业相关的数据结构和算法;观察Windows如何管理虚拟内存和物理内存;理解NTFS的操作和格式,诊断文件系统访问问题;从上往下查看Windows的网络栈,包括映射、API、名称解析和协议驱动程序;诊断引导问题,执行崩溃分析。本书适合广大Windows平台开发人员、IT专业从业人员等参考使用。

“本书是有关Windows内部机理核心的权威之作。如果你想要知道Windows内部是如何工作的,那么,这就是你想要的书。……如果你跟我一样,想要“深入浅出”地看一看Windows,那么,这本书正好是你的一个起点。”
——Windows系统之父、Windows平台开发副总裁Jim Allchin

“每一位认真的操作系统开发人员都应该在他或她的案头有这本书。”
——微软公司Senior Distinguished Engineer、Windows NT首席设计师David N. Cutler

15,445

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧