第一百章
萨姆斯开始向超级软件公司的人员和盘托出IBM公司的象棋计划,并且表达了希望超级软件公司能够为IBM公司新开发的准16位微型机编制适用操作系统的想法,当然对这一操作系统的完成时间,萨姆斯也提出了要求。
这时超级软件公司的几人表现稍微有些怪异,张亿诚心情很不平静,IBM这一计算机界的巨人终于迈出了他们进军微型机坚实的步伐,伴随着IBM公司进军微型机,将会有多少老微型机公司陨落,而又将有多少新公司在这一大潮中崛起,超级软件公司总算有机会搭上这趟列车加速发展了。
施雷耶和查尔斯.西蒙尼则真正的看到了公司光明的未来,如果真如同萨姆斯描述的那样,以IBM公司的实力和在普通大众心目中的地位,完全可以断定IBM推出的微型机绝对会获得巨大的成功,这样超级软件公司自然而然的也会从中获得巨大利益。
玛丽.斯科菲尔德小姐利用眼角的余光看了看张亿诚,她实在看不透眼前这个年轻的男人,他对于IBM公司的猜测变成了事实,甚至就连在会谈中有可能提到的问题,他猜测的成功率也高的惊人,这让她都快认为布鲁斯是不是联邦调查局的特工,她实在无法相信如此年轻的人逻辑思维能力会如此严谨,他究竟是如何做到的?
“我知道你们的产品已经提供给新联想计算机公司而且运行良好,所以我在想这一操作系统经过修改能够用到IBM公司的新机器上需要多少时间?”这在萨姆斯看来将是合作与否的关键,不仅可以从中更深入的看出这家公司的技术实力而且最主要的是时间、时间!
施雷耶不禁把目光投向张亿诚,他知道开发操作系统的困难,这比他开发的电笔字处理软件要难的多,这涉及到对硬件的很多动态管理和为运行于其上的各种应用软件的接口和管理,随着施雷耶的目光,IBM公司的谈判人员也把目光投掷到这个自会谈起,一直安静的坐在那里听双方讨论的年轻人。
看到大家投过来的目光,张亿诚并没有表现的受宠若惊的面红耳赤,他反而微微的笑了笑,“我可以保证自接到贵公司的样机后的2个月内,把我们的操作系统修改成可以运行在新机器上。”两个月的时间对张亿诚来说已经是完全的绰绰有余了,如果不是考虑配合圣诞节期间新联想公司的促销,在IBM公司的微型机席卷一切之前,新联想尽可能的为公司带来利润,这个时间将还会提前。
虽然张亿诚的回答基于IBM的需求来说,是他们理想中需要的的回答,但是从事情的难度上这又让他们不得不怀疑这个年轻人是不是在毫无所觉的自吹自擂,如果开发一款操作系统真的如此容易,那么IBM公司也就不会此方面寻求外界的支持了。
面对这种不信任情绪,张亿诚坦然以对,以他的阅历这些已经对他的自信形成不了打击了,“我知道也许大家对我的说法持怀疑态度,所以为了证明我们公司完全有这样的能力,我希望你们可以在此方面提出很多针对性的问题来验证我们说法的真伪。”
旁边的施雷耶和玛丽担心的看着张亿诚,西蒙尼同样为张亿诚捏了一把汗,公司大股东的这种行为实在是太冒失,就算是西蒙尼这种有着近10年软件开发经验的老资格软件开发工程师也不敢夸下如此海口。
IBM公司的谈判代表们彼此看了看,萨姆斯向他身侧的一位随行人员点了点头,得到萨姆斯的许可后,这位40岁左右的长得虎背熊腰的工程师说道:“我们看过你们公司提供给新联想计算机公司的操作系统使用介绍,我们知道你们把操作系统的工作分为进程管理、存储管理、文件管理和设备管理这么4大模块,那么我想问的是在一个进程集合中,假如每个进程都在等待某些事情的发生(释放资源),而这些时间又必须由这个进程集合中的某些进程来产生,那么这就形成了一个死循环,当然我们通行的说法是操作系统近入了死锁状态,如果操作系统的处理机制有问题,就会造成频繁的死机,我想问你们是如何解决这个问题?”
这个问题很有技术含量,无论是对操作系统内部程序的合理性还是对于用户的使用体验上来说,都是必须慎重对待的问题,可以想见如果因此问题频繁死机,那么作为普通用户的使用体验将会多差,如此差的体验还想装有此系统的微型机大火吗?
从这个问题上也可以得知眼前此人对操作系统有很深入的研究,这的确是个刁钻的难题,系统共享资源的不足,资源分配不当和进程的推进顺序不当等都会造成死锁,好在张亿诚前世在自己的研究中也经常会遇到这种让人烦恼的问题,可以说他现在已经对此有了相当的经验,而且这还是80年代,此时很多的难题在他那个时候已经被无数人给解决了,所以他对这种不算深入的难题说道:“我们都知道只有当进程发生互斥、占用并等待、不可抢占和循环等待这4个条件完全具备的时候,才会发生进程死锁,所以我们也就有了明确的解决目标。”
在坐的各位大部分都是工程师,无论是硬件工程师还是软件工程师,他们都是需要对另外一方领域有所了解的,所以这些人也都不自禁的点点头,作为双方的律师和业务人员(萨姆斯)则有些茫然,不过这并不妨碍他们认真倾听下去,从周围人的态度中也可以看出这个年轻人解决问题的方向性的正确性。
张亿诚又慢慢的说道:“针对死锁,我们同样采取了4种对策来解决这个问题,首先我们在设计操作系统的时候就需要尽可能的避免死锁的产生,我们会采用静态、按序和剥夺式的资源分配方法来尽量预防死锁的出现,这将从进程的并发、共享资源、共享资源向量和系统能力向量上做出针对性的设计上优先着手。”
对面的IBM公司的工程师们依然没有出现异样的反对或者准备讨论的声音,张亿诚继续说道:“在采用预防的前提下,我们的操作系统还引入了银行家算法来尽可能的避免死锁,我们设计了这么一个机制,每一个进程在开始前必须事先就声明它需要使用的最大量,而这个进程请求资源,它因此可能需要等待,在这个进程得到所有的资源后,它必须在有限的规定时间内释放它们,通过这些措施,就可以很好的避免这种令人不愉快的体验。当然对于因为系统内自带的进程自动检测而需要用到的资源分配图的使用和真正的产生死锁用到的恢复机制,在UNIX出现很久的今天已经算是操作系统程序员应该具备的最基本的素质体现了。”
看着这个阳光般充满自信,语调缓慢但坚定的年轻人,IBM公司提问的工程师也不禁为他的才智鼓掌:“perfect”