第8部分(第1/4 页)
究竟什么是操作系统?卡特勒的团队想创造出什么呢?
我们来描绘一下20世纪初一个富裕的英国家庭。把电脑硬件想象成一座大房子,这个家庭的住所。房子里有管道、照明、砖、灰浆墙、窗户和门——所有实体的物件应有尽有。
接下来,想象一下计算机软件就是生活在房子里的人。家政人员住楼下,他们提供全套及时的家政服务。管家立在门边,司机在洗车,保姆在熨着衬衫,厨师提供一日三餐并烤着面包,园艺师在草坪上扫落叶。所有活动,看起来都像是分别在按照自己的进度进行,但实际上全部都由管家来协调和组织。这就是楼下居民的生活,在某种意义上,它是存在于背景中的。
第3章 部落(7)
接着考虑一下楼上的人。他们是楼下人辛苦劳作的全部理由。丈夫需要一个司机,不仅是为了省心,更是因为他想要外出旅行。妻子请来一个厨师,这样她的家人就可以吃得很好。孩子们从园艺师的工作中受益,他清除院子里的碎石片,让孩子们在室外可以安全地嬉戏。
对楼上家庭和楼下忠诚的仆人的生活的描述清晰地说明了软件世界里的重要分工。楼上的居民是应用软件:文字处理、电子表格、数据库、电子排版和大量其他能满足人们需要和愿望的程序。而楼下的居民则共同发挥了操作系统的功能:他们是服务的领域,有些是自动的,有些则有特殊请求的。这些服务是提供优越生活物质条件的基础。
卡特勒对他的操作系统有三个期望:
可移植性:这可是软件业的圣杯——创造出一个可以适合每一种硬件的操作系统。当时,每种商业操作系统都是为特定系列的芯片而量身定做的,所以只能在装载这些芯片的电脑里发挥作用。程序员用最接近于目标硬件的汇编语言写了大量的编码。将软件和硬件联系在一起。当硬件成本远大于软件成本时,没有人介意这些。不过,后来当消费者发现在应用程序上的投资大过于购买硬件时,他们就不愿意抛弃他们已安装的但已过时的应用软件。NT便是创造一个通用系统的机会,它将在电脑世界开创一个新纪元。
可靠性:在苹果机上应用的是OS/2和DOS操作系统,一个应用程序的运行失败往往会导致整个系统停止工作或崩溃,数据消失,迫使使用者重新启动机器。如果许多应用程序在同一时间运行——NT的未来特色之一——其中一个的运行失败会导致其他应用程序的停止运行。卡特勒想用“防弹”系统来结束这种不必要的崩溃。有了“防弹”系统,个人电脑的价值会增大,因为它们能可靠地支持在商业世界中所谓“关键任务”的服务,比如航空订票或者银行自动柜员机。卡特勒和他的团队知道如何来保证可靠性,他们的DEC操作系统是在电脑还是十分昂贵和稀有的时代诞生出来的,卡特勒解释说:“如果系统死了一个小时,那就糟糕透了。首先,当时你不能像现在那样,对一台电脑做那么多操作,所以每一分钟都损失惨重。”
个性化:NT应该灵活十足,它将拥有不止一种用户界面,或“个性”。当时的个人电脑操作系统往往只有一种个性,也就是说,为DOS写的应用程序就只能运行在DOS上。NT将会支持OS/2的表示层管理器界面,但它也会设计成可以——如果微软选择这么做——支持其他诸如DOS或Windows或还没发明出来的操作系统的个性。
在构思NT的时候,卡特勒及其部落们首先攻克可移植性的难题。
可移植性的代码比较容易编写但效率比较低。理论上,用高级语言写出来的代码在经过编译后,可以在不同的微处理器上运行,而高等级的语言写出来的程序相对较慢,所占空间也大。微软的DOS、DEC的VMS和苹果的麦金塔操作系统,用的都是汇编语言,因为它写出来的程序小而紧凑,充分地发挥了特定硬件的作用。紧凑的编码固然是好的,因为它节约了内存的空间。内存空间包含了很多芯片,名叫DRAM(动态随机存取存储器),就好比一个汽油箱。汽油箱越大,汽车就跑得越远。操作系统越小,就有更多的油留给其他程序使用。txt电子书分享平台
第3章 部落(8)
因为NT是可移植的,所以卡特勒知道它会很大。问题是,它将有多大?这取决于他的程序员们有多聪明,以及NT自己的设计特色和功能。卡特勒需要花很多时间才能知道NT究竟需要多大一个内存油箱。可是,他已经意识到NT会消耗很多内存——也许比现有的个人电脑操作系统所需的要多得多。