随着十月的到来,Theo de Raadt将会和后来的五名开发人员一道,在相当长的一段时间里带上方便食品,在加拿大自己的家乡卡尔加里(Calgary)登山,享用啤酒,并促膝长谈OpenBSD的未来,而Raadt正是这个开放源代码操作系统的项目主管。
而在同一时刻,他们将与OpenBSD于11月1日进行的下一次发布保持着最后的接触,这将是其构思严谨的设计过程的最新一次发布,而这一设计过程在过去10年里每6个月就有一个新的发布。
这六个月周期的最后两个月反映出de Raadt及其十几人的核心开发人员小组照看OpenBSD源代码的慎重。在经过四个月高强度和艰难的开发之后,OpenBSD的API于本周确定下来;剩下的代码将经过高强度的测试,并逐步被确定下来,直到开发人员只剩下对操作手册(MAN)页面进行简单的编辑工作。
在10月份晚些时候,这个代码库将会被冻结起来,母光盘将会被发布供压制新盘。在11月1日,一旦光盘出了门,代码将会被解冻,新一轮的紧张开发工作又将开始,因为该操作系统遍布全球的开发网络的成员又在整装待发开始准备2005年5月1日的发布了。
这就是OpenBSD内部的生活。OpenBSD非常低调,是开放源代码的Linux的一种,Linux自从走出加利福尼亚大学伯克利分校之后已经变得相当成熟了。然而,尽管对Linux的深层次支持已经获得了政府、公司和类似的主要IT供应商的品牌认可和许可,但是OpenBSD仍然在一种相对不为人知的情况下发展——以至于最近关于该操作系统环境的一本书只能列出220个叫得出名字的用户,尽管与de Raadt交谈过的一名分销商在过去的四年里已经安装了11,000台OpenBSD服务器。
de Raadt对这种奇怪的不符的解释是:很多客户都只是在默默地使用OpenBSD,选择它而不是其它操作系统的原因是认同其谨慎的代码编写风格和de Raadt及其小组所主张的严格标准。
“我们正在马不停蹄地争取找到避免程序员的小错误给我们整个源代码库造成问题的方法,”de Raadt在本周于墨尔本召开的2004年AUUG研讨会上在前台同与会代表共享经验时说。“安全的问题在于人们了解到他们应该从例子里学到什么,了解到他们应该以某种方式使用API,了解到他们错了。而在同一时刻,我们必须开始问自己,这个特性是否就是我们所要的,或者质量是否存在问题。我真的认为我们应该把质量放在特性之前来考虑。”
OpenBSD与Linux在设计上的关键不同之处在于,Linux事实上是围绕由LinusTorvalds控制的核心展开的个人开发工作,de Raadt如是说。而OpenBSD相反,是一个完整的操作系统,在单个经过精心管理的代码库上构建而成,并在每次发布之前都经过了连续不断的测试。
由于把安全作为关注的焦点,OpenBSD的努力催生了诸如OpenSSH这样的工具箱,它已经成为了很多Unix和Linux发行版安全在线通信的事实标准。这一努力的其它副产品还包括可靠的BGP实现、IPSec协议栈和数据包过滤器。
由于对自己小组的安全产品被它人采用的程度远不满意,de Raadt鼓励说:“我们是软件安全大师,”他笑着说。“我宁可别人使用我们的软件,而不是编写他们自己的软件,并用它来做很糟糕的工作。如果他们的机器被人攻破了,那么其他所有人在全球Internet上的不安全就变成了我的不安全。”
毕竟,在OpenBSD的世界里没有市场营销机构来压迫新的特性去满足任意指定的最终期限。开发人员一旦提交了新的特性,这些特性就被仔细地测试、修改和重新工作,直到没有错误;如果某个特性还没有准备就绪,那么它只能赶下一次发布了。或者下一个全新的版本。