林卫国笑了笑,从兜里掏出个东西搁在桌上。
那是一个用木头和胶水粘起的方疙瘩,
下面是玩具车拆下的轮子。
疙瘩上面粘着个微动开关,屁股后头还拖一根电线。
“用这个,我管它叫‘鼠标’。”
他把这简陋的模型在桌上推推。
“你们想,它在桌上动,屏幕上那个箭头就跟着动。”
“箭头指到哪儿,咱们就能操作哪儿。”
“比如打开文件,不用再敲一长串命令。”
“只要移动‘鼠标’,让箭头指到代表文件的‘图标’上。”
“然后按两下开关,‘双击’一下。”
周静手里的铅笔直接掉在地上,呆呆看着林卫国,
又看看那张图纸,脑子里跟炸开一样。
她全想通了!
那些“窗口”能同时显示不同任务,
这就是分时操作系统的可视化!
那些“图标”是文件和程序的快捷方式!
那个叫“鼠标”的玩意儿,
是人手在大脑和机器之间延伸的桥梁!
我靠!这套设计根本不是改良,是彻头彻尾的颠覆!
这是要把计算机从专家工具,变成人人都能上手的家用电器!
“林大哥……”周静的声音都在抖。
指着那张图跟看着什么神迹似的。
“您……您的脑子到底是什么做的?
这……这简直是神才能想出来的!”
何雨水和孙燕也回过神,俩人张着嘴,半天合不拢。
她们感觉自己辛苦快一年的成果,
在这张图纸面前就像个泥娃娃。
而图纸上画的已经是个成熟、智慧的巨人。
“不是我想的。”林卫国笑着摇头,
想起儿子林安国玩游戏时那副专注的样子。
“这是一个十岁的孩子在玩游戏时,给我的启示。”
一个十岁的孩子?
三个人面面相觑,脸上的表情比刚才更夸张。
感觉自己的智商被按在地上反复摩擦。
“现在,我给你们一个全新的任务。”
林卫国收起笑,脸色变得严肃。
“以你们现有的分时操作系统为内核,
把这套图形界面给我做出来!”
“项目代号,就叫‘窗’(window)!”
“我要咱们共和国的计算机,
比m国人更早拥有一扇属于我们自己的窗!”
何雨水、周静、孙燕三个人看着那张充满未来感的蓝图。
再看看林卫国那双充满信任的眼睛,感觉浑身的血都在烧。
之前因为硬件瓶颈带来的沮丧,
瞬间被一股巨大的兴奋和使命感冲散。
“是!保证完成任务!”
何雨水挺直腰杆,替团队立下军令状。
“好。”林卫国点点头,“别怕犯错,也别怕花时间。”
“做‘鼠标’的滚轮和传感器,我去找人给你们特制。”
“你们的任务就是把所有精力都放在软件实现上。”
林卫国交代完便离开机房,留下三个已经亢奋到极点的姑娘。
“我的天……我的天……”孙燕还在喃喃自语,
“图形……鼠标……这世界太疯。”
“别疯了,赶紧干活!”
周静一把抢过蓝图,眼睛里冒着吓人的光。
“这套系统比我们之前搞的,复杂度高一百倍!
图形渲染、窗口管理、事件驱动……
全是新东西,咱们得从零开始!”
“没错!”何雨水也冷静下来,
拿起笔在黑板上飞快地分解任务。
“老规矩,分工!周静,你理论最好,
负责最底层的图形引擎和窗口管理器。”
“孙燕,你负责硬件接口,
等‘鼠标’原型拿来,你要写出最稳的驱动。”
“我负责把你们俩的东西整合起来,搭建整个系统的应用层框架!”
“咱们要让这扇‘窗’在最短的时间内亮起来!”
三个姑娘对视一眼,都从对方眼中看见熊熊燃烧的火焰。
华科大的机房从此成为“窗”项目组的专属领地。
对何雨水她们来说,白天和黑夜已经没有区别。
林卫国的效率高得离谱。
不到一个星期,第一只“鼠标”的工程样品就送过来。
不再是木头疙瘩,而是用白色工程塑料制作,
符合人体工学的漂亮玩意儿。
底部的钢芯滚轮顺滑无比,
内部的光栅传感器更是长春光机所的新产品。
孙燕拿到这个“新玩具”立刻扑了上去,把自己关在角落,
对着一堆电路图和数据手册,开始艰难的驱动编写。
而周静那边则陷入更深的理论泥潭。
“不行,位图操作太慢!”
她把一沓写满算法的草稿纸揉成团扔在地上。
“我们这台破电脑的cpU根本没法在短时间刷新整个屏幕!”
“移动一个窗口画面卡得像幻灯片,还带着满屏的拖影!”
这是图形界面最要命的难题之一。
何雨水看着一筹莫展的周静也陷入沉思。
她不像周静精通算法,但她修了这么多年电器,
总能从奇怪的角度看问题。
“周静,你过来。”
何雨水把她拉到一台黑白电视机前,这是她们的显示器。
“你记不记得我们修电视的时候,有个东西叫‘显像管’?”
“记得啊,那玩意儿……”
周静话说到一半突然卡住。
“电子枪从上到下一行行扫描打出亮点,才组成一幅画面。”
何雨水接着说,
“它不是一次性把整个画面画出来,是一行一行‘刷’的。”
“你的意思是……”周静的眼睛一下亮起来。
“我们能不能也学它?”
何雨水在黑板上画起来。
“我们没必要每次都重绘整个屏幕。
比如拖动一个小窗口,大部分区域没变。”
“我们能不能只计算那些‘被改变’的区域,
然后只重绘这些地方?”
“我靠!”周静一拍大腿,“我怎么就没想到!”
“脏矩形算法!我只在论文角落里见过,
以为是屠龙之技,没想到能用在这!”
这个思路像一把钥匙,瞬间打开所有的死结。
周静立刻重新设计她的图形引擎。
不再傻乎乎地刷新整个屏幕,
而是像个精明的管家,只去修补那些“脏了”的地方。
代码重写,编译,运行。
当周静再次用键盘模拟鼠标,
在屏幕上拖动一个白色方块时,奇迹发生。
那个方块不再卡顿地跳跃,而是平滑地在屏幕上移动。
虽然还略有延迟,但已经完全可用!