第350章 昆仑系统(1 / 1)

1983年5月,北京。

中关村新楼三层最东头那间屋子,门口连块牌子都没挂。

窗户朝东,早上太阳一出来就晃眼,下午又晒得跟蒸笼似的。

但王溯不在乎这个。

他站在屋子中间,看着眼前这几个人。

胡志远,坐角落那台机器前,头发还是乱糟糟的,眼镜片厚得像啤酒瓶底。

来了一多月了,说的话加起来不超过一百句。

李卫国,二十八岁,软件组最早的骨干之一,话多,手快,一个人能顶三个用。

还有两个新面孔。

一个叫刘春生,二十五岁,北大数学系毕业的,去年分来的;一个叫孙晓梅,二十四岁,唯一的女生,清华计算机系的高材生。

五个人,五台机器,一间朝东的屋子。

这就是操作系统的全部家当。

“人都齐了。”王溯开口,“咱们开个会。”

胡志远没动,继续盯着屏幕。

李卫国拉过一把椅子坐下。刘春生和孙晓梅站在旁边,等着。

王溯走到黑板前,拿起粉笔,写下两个字:

“昆仑”

“这是咱们的系统,叫‘昆仑’。”他转过身,“这名儿,是赵总工起的。”

胡志远的头抬了一下,又低下去了。

李卫国念出声来:“昆仑……挺有气势。”

王溯点点头。

“咱们的任务,是在这儿,从零开始,写一个操作系统。”

他看着那几个人。

“不是改别人的,不是抄别人的,是自己从头写的。内核、文件系统、内存管理、进程调度、设备驱动、用户界面——全得自己写。”

屋里安静了几秒。

刘春生举手。

“王组长,我问一下,咱们为什么要自己写?不能改别人的吗?”

王溯看着他。

“改谁的?”

刘春生想了想:“CP/M,或者……那个刚出来的MS-DOS?”

王溯摇摇头。

“改不了。”

他从桌上拿起一沓资料,递给刘春生。

“这是咱们的硬件架构。跟别人的不一样。别人的系统,跑不了。”

刘春生翻着资料,没说话。

孙晓梅开口。

“王组长,咱们有多少人?”

“五个。”

“时间呢?”

“不知道。可能三年,可能五年。”

孙晓梅沉默了几秒,然后点点头。

“行。”

王溯看着她。

“你不怕?”

孙晓梅摇摇头。

“怕什么?干就是了。”

王溯笑了。

他转向胡志远。

“老胡,你说两句?”

胡志远抬起头,看着他。

“说什么?”

“说点……鼓励的话?”

胡志远想了想。

然后他转回去,继续盯着屏幕。

“代码写出来,就是鼓励。”

王溯愣了一下,然后笑了。

“行。那就不说了。”

他走到那台机器前,坐下。

把手放在键盘上。

“第一行代码,谁来写?”

没人说话。

王溯看着屏幕,沉默了几秒。

然后他敲下了第一行。

那是一个注释:

“/*KUnlUnOS-kernelStart*/”

屋里安静极了。

只有键盘敲击的声音,噼里啪啦,一下一下。

胡志远的嘴角,翘了一下。

没让别人看见。

第一个月,最难熬。

五个人,五台机器,每天从早上八点干到晚上十二点。饿了就在机房吃,困了就在椅子上眯一会儿。

王溯买了五张折叠床,靠墙放着。谁实在扛不住了,就躺一会儿。但很少有人躺。躺下去,脑子里还是那些代码,翻来覆去睡不着,还不如起来接着写。

胡志远最拼。

他每天来得最早,走得最晚。有时候王溯早上七点半到,他已经在那儿了。问他几点来的,他说六点。问他晚上几点走的,他说不知道。

李卫国悄悄跟王溯说:“老胡这人,不是人。”

王溯瞪他一眼。

“我说真的。”李卫国压低声音,“他一天能写我三天的量。而且bUg少,基本上写完就能跑。他是怎么长的?”

王溯看着胡志远的背影,没说话。

但他心里清楚。

这人,是真喜欢写代码。

不是当工作,是真喜欢。

刘春生和孙晓梅也拼。

两个新人,刚来就赶上这种强度,谁也没叫苦。刘春生负责文件系统,天天抱着那本《数据结构》翻,翻烂了还在翻。孙晓梅负责内存管理,遇到难题就追着王溯问,问完了自己琢磨,琢磨通了就写,写完了再问。

有一天晚上,王溯十一点多要走,看见孙晓梅还趴在桌上,对着一屏幕代码发呆。

“晓梅,还不走?”

孙晓梅抬起头,眼睛红红的。

“王组长,这个bUg,我找了一天了,没找着。”

王溯走过去,看了看屏幕。

是一个内存分配的问题。代码看着没问题,但跑起来就死机。

他坐下来,一行一行看。

看了二十分钟,他指着一行代码。

“这儿。”

孙晓梅凑过去看。

“少了一个判断。”王溯说,“边界条件没处理。”

孙晓梅盯着那行代码,愣了几秒。

然后她一拍脑袋。

“对!对啊!我怎么没想到!”

她抬起头,看着王溯。

“王组长,你太厉害了。”

王溯笑了。

“不是我厉害。是你太累了。回去睡觉,明天再看。”

孙晓梅点点头,关掉机器,站起来。

走到门口,她忽然回过头。

“王组长,咱们这个系统,真能做成吗?”

王溯看着她。

“你觉得呢?”

孙晓梅想了想。

“我觉得能。”

“为什么?”

孙晓梅指了指胡志远的座位——人早就走了,但桌上那沓打印纸还摊着,上面密密麻麻的代码,每一行都写得整整齐齐。

“因为有老胡。”她说,“还有你。还有我们。”

王溯愣了一下,然后笑了。

“那就做下去。”

第二个月,出了事。

那天下午,王溯正在调试一段代码,忽然听见李卫国喊了一声。

“坏了!”

他抬起头。

李卫国盯着屏幕,脸色煞白。

“怎么了?”

李卫国没说话,只是指着屏幕。

王溯走过去一看,心里咯噔一下。

屏幕上,一行红字:

“FATAL:KERNELPANIC”

内核崩溃。

整个系统,死了。

“怎么回事?”王溯问。

李卫国摇头。

“不知道。我刚加了一段代码,编译完一跑,就成这样了。”

王溯坐下来,开始查。

查了一个小时,没查出来。

刘春生过来帮忙,又查了一个小时,还是没查出来。

孙晓梅也过来,三个人一起查,又查了两个小时。

天黑了。灯亮了。

还是没查出来。

李卫国坐在那儿,脸色越来越难看。

“王组长,是我写崩的。我……”

“别急。”王溯打断他,“代码是人写的,bUg也是人写的。找出来,改掉,就行。”

他又低下头,继续看。

九点多,门开了。

胡志远走进来。他今天出去办了点事,下午不在。

看见几个人围着屏幕,他愣了一下。

“怎么了?”

王溯抬起头。

“内核崩了。找了一下午,没找着。”

胡志远走过去,在李卫国旁边坐下。

“最后一次提交是什么时候?”

李卫国报了个时间。

胡志远调出代码,开始看。

看了十分钟。

他指着屏幕。

“这儿。”

几个人凑过去看。

一行代码,看起来没什么问题。

“这儿少了一个括号。”胡志远说,“语法上没错,但逻辑不对。编译能过,跑起来就崩。”

李卫国盯着那行代码,看了半天。

然后他一拍脑袋。

“对!对啊!我写的时候少敲了一个!”

他转过头,看着胡志远。

“老胡,你……你怎么看出来的?”

胡志远没回答,只是站起来,走到自己的座位,坐下。

“改完重新编译。”

李卫国愣在那儿,半天没动。

王溯拍拍他肩膀。

“愣着干嘛?改啊。”

李卫国这才回过神来,开始改代码。

改完,重新编译。

跑了二十分钟,没崩。

又跑了半小时,还是好好的。

李卫国长出一口气,靠在椅背上。

“老胡,我服了。”

胡志远没回头。

但他的手,在键盘上停了一下。

那天晚上,李卫国非要请胡志远吃饭。

胡志远不去。李卫国就拽着他,生拉硬拽,拽到那个小馆子。

点了几个菜,要了两瓶啤酒。

李卫国端起酒杯。

“老胡,我敬你。今天要不是你,我可能得熬一宿。”

胡志远没端杯。

“不用。”

李卫国也不尴尬,自己喝了一口。

“老胡,我问你个事儿。”

胡志远看着他。

“你这么厉害,以前在计算所,怎么没人知道?”

胡志远沉默了一会儿。

“没人问。”

李卫国愣了一下。

“什么?”

“没人问。”胡志远说,“我在计算所干了六年。没人问过我,想干什么,能干什么,需要什么。”

他拿起筷子,夹了一口菜。

“后来我就不说了。”

李卫国看着他,不知道该说什么。

胡志远把菜嚼完,放下筷子。

“王溯来的时候,问了我三个问题。”

他顿了顿。

“你会干活儿吗?你有什么条件?你什么时候能来?”

他转过头,看着李卫国。

“六年了,第一次有人问这些。”

李卫国沉默了很久。

然后他举起酒杯。

“老胡,以后有人问了。”

胡志远看着他。

李卫国把酒干了。

“以后咱们就是兄弟。你有事儿,说话。我扛不住,还有王溯。王溯扛不住,还有赵总工。”

他放下酒杯。

“你不是一个人了。”

胡志远低着头,没说话。

但他的手,在桌子底下,握成了拳头。

第三个月,有了进展。

那天下午,王溯把几个人叫到一起。

“今天,咱们跑个完整的。”

几个人互相看了看。

“完整的?”李卫国问,“内核、内存、文件系统、进程调度,全跑?”

王溯点头。

“全跑。”

胡志远没说话,但手指在键盘上敲了几下。

屏幕上开始滚动一行行信息。

内存初始化……完成。

进程表初始化……完成。

文件系统挂载……完成。

调度器启动……完成。

最后,屏幕上跳出一行提示符:

“KUnlUnOSv0.1>”

屋里安静极了。

几个人盯着那行字,谁也没说话。

然后李卫国嗷一嗓子。

“成了!”

他跳起来,在屋里转圈。

刘春生和孙晓梅也笑了,使劲鼓掌。

王溯没动。他就坐在那儿,盯着那行提示符,盯着那几个字。

“KUnlUnOS”

那是他写的。是他们五个人,三个月,一天一天熬出来的。

他的眼眶有点红。

胡志远也没动。他就坐在那儿,看着屏幕。

但他的嘴角,翘得老高。

门被推开了。

赵四站在门口。

“听说跑起来了?”

王溯站起来。

“赵总工,您怎么来了?”

赵四走进来,走到那台机器前。

他看着屏幕,看着那行提示符。

看了很久。

然后他转过头,看着那五个人。

胡志远,头发还是乱糟糟的,眼镜片厚得像啤酒瓶底。

李卫国,笑得跟个傻子似的。

刘春生和孙晓梅,站得笔直,眼睛亮亮的。

王溯,站在最前面,眼眶红红的。

赵四点点头。

“好。”

就一个字。

但王溯听见了。

那一个字里,有太多东西。

那天晚上,赵四请他们吃饭。

还是那个小馆子,还是那几张破桌子。但这次,赵四点了八个菜,要了四瓶二锅头。

“喝。”他举起酒杯,“今天高兴。”

大家举杯,一饮而尽。

喝着喝着,李卫国话多起来。

“赵总工,您知道吗,今天跑起来那一刻,我差点哭了。”

赵四看着他。

“是吗?”

“真的。”李卫国说,“三个月,天天熬,天天写。有时候真想放弃,觉得太难了。但今天一看那行字,就觉得值了。”

赵四点点头。

“值就好。”

他转向胡志远。

“老胡,你呢?”

胡志远沉默了一会儿。

“还行。”

赵四笑了。

“还行,就是挺好。”

他又倒了一杯酒,端起来。

“来,敬你们。敬昆仑。”

大家举杯。

“敬昆仑!”

喝完了,赵四放下酒杯,看着他们。

“你们知道,我今天为什么来吗?”

几个人摇头。

赵四说:“因为我年轻的时候,也经历过今天。”

他看着窗外。

“1969年,在那个废弃的气象站里,我们第一次把‘天河’的通信跑通。那天晚上,我们七个人,就着咸菜,喝了三瓶二锅头。”

他转过头。

“那种感觉,跟你们今天一样。”

他看着那五个人。

“你们今天跑起来的,不是几行代码。是一个开始。是从零到一的那一步。”

他顿了顿。

“这条路,你们走出来了。”

屋里安静了几秒。

然后孙晓梅忽然说。

“赵总工,我能问您个问题吗?”

赵四看着她。

“说。”

孙晓梅想了想。

“您觉得,咱们这个系统,将来能赶上美国的吗?”

赵四沉默了一会儿。

然后他笑了。

“赶上?”

他看着孙晓梅。

“孩子,不是赶上。是走自己的路。”

他站起来。

“美国有美国的系统,咱们有咱们的。不一样,但一样用。一样能让老百姓用上计算机,一样能让工厂用上数控,一样能让学校开上计算机课。”

他拍拍孙晓梅的肩膀。

“这就够了。”

孙晓梅听着,若有所思。

赵四走到门口,忽然回过头。

“对了,王溯。”

王溯站起来。

赵四看着他。

“明天,把这行字打印出来,贴在门口。”

王溯愣了一下。

“哪行字?”

赵四指了指那台机器。

“KUnlUnOSv0.1”

王溯笑了。

“好。”

赵四推门出去。

五个人坐在那儿,谁也没动。

过了一会儿,李卫国忽然说。

“王溯,你说,等咱们把v1.0搞出来,赵总工会不会再来请咱们吃饭?”

王溯想了想。

“会。”

“为什么?”

王溯指着那台机器。

“因为他知道,这条路,咱们走出来了。”

他顿了顿。

“而且,还会走下去。”

夜深了。

小馆子里,灯还亮着。

那五个人,还在喝着,聊着,笑着。

窗外,月亮很亮。

照在中关村的街上,照在那栋老楼的窗户上。

那扇窗户里,有一台机器,还亮着屏幕。

屏幕上,有一行字:

“KUnlUnOSv0.1>”