这部分的技术都由沃洛克领导,或者应该讲约翰博士,他喜欢人们这么叫。作为一名资深的PARC成员,他了解计算机图形学的每一个细节,甚至在他上大学的时候就曾经独立的写出了一个消隐算法。
字符型的操作系统是不讲究什么二维三维的,比如dos、godson,它们只需要显示文本就可以了,具体的操作全由处理器完成,内存中移动的都是一行行的命令与文字。
到了图形界面时代,这就是个灾难,窗口的出现让cpu苦不堪言。经典的mac就是这样,所有图形的绘制工作都是由我们伟大而神圣的68完成的,任劳任怨,让我们对它表示一下敬意。一般的处理流程是这样的:
所有图形的显示都是一行一行的,因此cpu先是在内存中寻找窗口的地址,然后将每一行的数据拷贝到目的地显示,重复这一工作知道一个窗口显示完成。
因此当一个窗口图形很大的时候,cpu的工作量则是成正比的增长,而我们每完成一个移动的操作都会让cpu重复这一过程,可以想见若是cpu不强劲那效果会是如何。
还有一个问题那就是内存,窗口所有的数据都是先在内存中然后被画到显示器上,这得占用不少的资源,这就是为什么512k内存的pc机不能支持windows系统,而mac则慢如蜗牛的原因。
沃洛克带领的开发小组则借鉴了游戏机的加速原理,利用专门的显示芯片来加速处理这部分图形数据,配合本已强大的k32处理器,立即让工作站如虎添翼。
至于MIT研究的窗口系统,这其中还有个故事。
话说经苏教授的穿针引线,长久投资了一笔钱,将图形操作界面的开发任务交给了MIT研究室,谁知道左等不来右等还是没影,每次询问的结果都是一个回答:版本不高,不宜发布。
一次两次长久还能容忍,但是都到了85年这玩意还磨磨蹭蹭就有点不对劲了,MIT研究室不出成果要钱还要的特别狠,这就让长久很不爽,于是特地去做了一次考评,结果却让他差点气歪了鼻子。
原来在MIT的实验室中,这套被命名为x-window的图形界面已经具备了基本的形态,说的不客气点,就算拿出去卖都可以算是一个成功的产品,可是MIT研究室却死死扣着不发。
他们的理由很简单,x-window计划的主要目的就是要在所有运行unix的机器上完美实现,现在这个版本依旧没有达到这个标准,因此不宜发行。
长久了解了来龙去脉之后才恍然大悟,感情MIT研究室做的是这个工作,人家并不是专为VS工作的,同时还为DEC服务,而且还优先于VS。
我说咋这么便宜那,感情着这家伙到处拉赞助啊,长久暗想。MIT的人解释道,这个项目难处在于要制定一个图形界面的标准,兼容所有的unix机器及其变种,因此才要花大力气测试,时间就是这么消耗的。
听了MIT的解释,长久抹了一把汗,乖乖,好伟大的理想,可是咱不是那种胸怀世界的人,你们自己玩去吧。
于是一怒之下,长久要求收回投资,MIT的人自然不肯,漫天要价就地还钱,这才加了点钱购买了这套半成品的所有技术。
后来长久才知道X-window并不是MIT原创,他们是从斯坦福得到了一个实验性的视窗系统叫W,加以改进到足够的区别之后才改名X的。
有了这个发现长久顺藤摸瓜,由沃洛克博士出面找到了这套W视窗系统的研究人员,许以重利挖来继续开发图形界面。
长久完全抛弃了MIT那套过于理想化的做法,居然想兼容所有unix变种,这简直荒唐,商业化的unix系统五花八门,各家公司为了自己的利益总想着和别人不兼容,如何能统一?
因此长久让沃洛克的图形开发小组全面的修改x视窗系统,坚决的要打击这种洒水式的兼容方式,一切要以现在研发的工作站、EC平台及386为优化对象。
得到了x视窗系统的所有资料之后,长久也专门下了一番功夫,不得不承认这是专门为了小型机和工作站设计的。
同mac系统和windows那样的高集成度的图形系统不同,MIT的人将这套X视窗系统分为了三个部分,服务端、客户端和通信函数库。
其中服务端就相当于总控硬件的显示程序,它接收服务端的绘图指令操作硬件完成绘图任务,将得到的数据传输给客户端。客户端不需要接触硬件指令,只需要请求、显示即可。
因此理论上只要硬件足够强大,可以运行许多服务端、客户端而互不干扰,颇有点服务器的意思。
而最让人惊讶的是X视窗系统仅提供基础的系统调用,长久第一感觉则是应该将之封闭起来提供一个图形API函数库,这样可以做成一个开发工具包,让那些程序员们不需要一步步的使用那些基础调用,简化编程工作量缩短开发时间。
在长久的示意下,沃洛克小组开发了一组图形套件,提供了菜单、按钮、对话框等图形接口的标准构件,还提供基本的视窗管理器,所有使用这套基本构件的程序员都可以非常轻松的创建一个视窗程序。
为了配合图形系统,长久发动了大批的程序员对现有程序进行移植和图形化包装,包括正在开发中的VS-office85系列套件。
长久厌烦了1.0、2.0式的版本命名方法,以年份命名简单直观,非常的平易近人,已经提出立即让所有人全票通过,因此就这么顺理成章的用来了公司的主力产品office系列上。
Vs-office不愧为印钞机,仅仅在84年viewsoft就凭着它取得了3.2亿美元的收入,名列软件销量排行榜的第一位。
在85年长久针对变化的市场特意制订了一个火箭计划,秘密开发全新的基于图形界面的office系列,主要目的就是要借着图形操作系统的更新将那些在字符型系统下强劲的竞争对手彻底甩开。
比如wordprofect,这东西就是一个vs-word的强劲威胁,用户据说与office的不相上下,至于其他的公司或多或少都有一两项绝活,毕竟第一个吃螃蟹的人最美味。
因此借着图形操作系统的开发,长久准备对应用程序市场进行一次洗牌,本来乔伊意图使图形版的godson更加的开放和亲近程序员,长久毫无疑问的否决了,特地在核心和应用程序之间加了一层,称之为API(用户程序接口),完全断绝了程序员绕过系统直接操作硬件的可能,因此新系统的结构也就对其它公司模糊起来,第三方开发完全兼容之的程序变的不太那么爽利。
这招不折不扣的是和微软学的,长久还挺仁慈,只不过掌握了这一新层而已,只要不公开这套API的具体细节,日后根本就不可能有任何公司能够在应用软件层面超过VS公司。
当然,这样一来所有的开发工具就得重新设计和修改,虽然增大了vs公司程序员的工作量,但是为了日后的利润和优势,这是不得不投入的。
这些说的都很容易,其过程艰难无比,对VS研究院的所有成员来说这些东西几乎都是全新的挑战,除了长久,没人能够想象最终的产品会是什么样子,涵盖软硬件,二三百人的开发队伍也显得庞大了一点。
幸好徐志行在规划管理这方面做的确实尽心尽力,他虽不是这一行的技术人员,但是却深知组织与管理的重要性。
相对这帮各有一套的狂人来讲,技术上的难题或者并不构成障碍,花上足够的时间与金钱自然会跨越的,难得是如何将这些家伙捏合到一起协同工作。
这可忙坏了徐志行,不过也锻炼了他,让其超速成长为一个合格的经理人,他将所有人的特长归类,根据任务划分成了几个部门,各司其责。而长久则只负责总体框架和发展方向,保证了开发进度有序而快速。
研究院的进展如火如荼,长久的目标是要在85年底发行成品,不过看来这种目标实在太宏大了一点,系统或许能够成型,具体应用的软件则不知猴年马月才能移植完毕。
“挨踢”行业就是这样,不能有一丝一毫的懈怠,否则你会发现一夜之间天翻地覆,因为大家都在疯狂的奔跑。
同样的事情在每个公司上演,无论是英特尔还是微软还是IBM,这方面的情况大同小异,特别是在85年中这个阶段。
英特尔公司当时最重要的任务就是为难产的386催生,在圣塔克数以百计的工程师为着386这一几乎是全新的架构在忙碌着。
不同于以往的设计模式,总设计师葛洛夫认为286这个架构缺点颇多,已经完全不能胜任日后的芯片发展,因此主张设计一个全新的架构用以兼容286之前的软件,而不是继续在286上改进。
这可要了开发组的命了,葛洛夫偏执的可以任谁也不能劝动,因此本来84年即可出世的386硬生生的半路扭转了方向,几乎是从头再来了一遍。
负责架构设计的是资深编译器程序员克劳福,由于其在硬件上的天赋,被葛老大提拔成了架构设计小组组长,这点同长久颇有相似之处。
克劳福和其组员们绞尽脑汁的想着葛老大的构想,既要兼容以前的软件还要有性能上的飞跃,这点对于老旧的8086结构更显的难能。
费尽心思之后,克劳福总算完成了任务,其实很简单,他将386处理器设计成了可切换的三种工作模式,8086模式、286模式和386模式。
顾名思义,8086模式是用来运行16位的软件,286模式专门兼容针对存储器管理特性优化的软件,而386模式才是真真正正的高性能运算模式。
他老人家一股脑的把所有硬件全集成到了一块,的确是个笨办法。不过是哪个伟人说的来着,只要能解决问题,笨办法就是好办法,这点克劳福做到了。
鉴于286的外围控制芯片开发被AMD放了鸽子,葛洛夫深刻的意识到了一点,就是不能为了开发微处理器而开发,因此386被定位成了一个新的微机平台。
由于同长久签订了长达10年的交叉授权协议,葛洛夫对长久这边的芯片组开发关注度非常之高,几乎逼着长久将开发基地弄到美国来。
长久欣然从命,毕竟在美国本土可以更快的同英特尔的处理器设计部门交流,对386的架构可以实时的了解。
所幸长久同样重视这个部门,毕竟这是所有微机系统的命脉,而且因为有了英特尔公司的支持和成功的经验,小组的开发进度非常之快,几乎是和386的进度等同。
正是由于这些软硬件上的合作,长久了解了一些386上应用的最新技术,比如cahce(高速缓冲存储器)。
客观上来讲,微机上所有的技术通常都是由大型机转化而来,Cahce技术同样也不例外。这东西通常被应用于处理器与内存之间,速度比处理器慢比内存快,作为一个数据和命令的缓冲存在。
实践表明,没有cache技术的计算机同应用了cache技术的计算机相比性能差距不可以道里计,甚至可以达到100%的性能飞跃。
早在k32处理器开发的时候长久就曾经想过要在其中加入这种技术,毕竟在设计大型机的时候长久很熟悉这套流程,但是用在大型机上同用在微处理器的芯片上完全是两码事,这东西在4~5微米的工艺下显得是那么的庞大,而且k32作为长久的第一块处理器成品,加入cache使得开发风险加大,逼不得已长久不得不放弃之。
~~~~~~~~
我好热啊……