亲,双击屏幕即可自动滚动
第350章 昆仑系统
    1983年5月,北京。

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

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

    但王溯不在乎这个。

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

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

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

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

    还有两个新面孔。

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

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

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

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

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

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

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

    “昆仑”

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

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

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

    王溯点点头。

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

    他看着那几个人。

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

    屋里安静了几秒。

    刘春生举手。

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

    王溯看着他。

    “改谁的?”

    刘春生想了想:“cp/,或者……那个刚出来的s-dos?”

    王溯摇摇头。

    “改不了。”

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

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

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

    孙晓梅开口。

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

    “五个。”

    “时间呢?”

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

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

    “行。”

    王溯看着她。

    “你不怕?”

    孙晓梅摇摇头。

    “怕什么?干就是了。”

    王溯笑了。

    他转向胡志远。

    “老胡,你说两句?”

    胡志远抬起头,看着他。

    “说什么?”

    “说点……鼓励的话?”

    胡志远想了想。

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

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

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

    “行。那就不说了。”

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

    把手放在键盘上。

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

    没人说话。

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

    然后他敲下了第一行。

    那是一个注释:

    “/*kunlunos-kerrt*/”

    屋里安静极了。

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

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

    没让别人看见。

    第一个月,最难熬。

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

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

    胡志远最拼。

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

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

    王溯瞪他一眼。

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

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

    但他心里清楚。

    这人,是真喜欢写代码。

    不是当工作,是真喜欢。

    刘春生和孙晓梅也拼。

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

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

    “晓梅,还不走?”

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

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

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

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

    他坐下来,一行一行看。

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

    “这儿。”

    孙晓梅凑过去看。

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

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

    然后她一拍脑袋。

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

    她抬起头,看着王溯。

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

    王溯笑了。

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

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

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

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

    王溯看着她。

    “你觉得呢?”

    孙晓梅想了想。

    “我觉得能。”

    “为什么?”

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

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

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

    “那就做下去。”

    第二个月,出了事。

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

    “坏了!”

    他抬起头。

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

    “怎么了?”

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

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

    屏幕上,一行红字:

    “ftl:kernelpnc”

    内核崩溃。

    整个系统,死了。

    “怎么回事?”王溯问。

    李卫国摇头。

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

    王溯坐下来,开始查。

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

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

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

    天黑了。灯亮了。

    还是没查出来。

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

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

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

    他又低下头,继续看。

    九点多,门开了。

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

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

    “怎么了?”

    王溯抬起头。

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

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

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

    李卫国报了个时间。

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

    看了十分钟。

    他指着屏幕。

    “这儿。”

    几个人凑过去看。

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

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

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

    然后他一拍脑袋。

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

    他转过头,看着胡志远。

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

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

    “改完重新编译。”

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

    王溯拍拍他肩膀。

    “愣着干嘛?改啊。”

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

    改完,重新编译。

    跑了二十分钟,没崩。

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

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

    “老胡,我服了。”

    胡志远没回头。

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

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

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

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

    李卫国端起酒杯。

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

    胡志远没端杯。

    “不用。”

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

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

    胡志远看着他。

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

    胡志远沉默了一会儿。

    “没人问。”

    李卫国愣了一下。

    “什么?”

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

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

    “后来我就不说了。”

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

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

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

    他顿了顿。

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

    他转过头,看着李卫国。

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

    李卫国沉默了很久。

    然后他举起酒杯。

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

    胡志远看着他。

    李卫国把酒干了。

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

    他放下酒杯。

    “你不是一个人了。”

    胡志远低着头,没说话。

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

    第三个月,有了进展。

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

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

    几个人互相看了看。

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

    王溯点头。

    “全跑。”

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

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

    内存初始化……完成。

    进程表初始化……完成。

    文件系统挂载……完成。

    调度器启动……完成。

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

    “kunlunosv0.1>”

    屋里安静极了。

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

    然后李卫国嗷一嗓子。

    “成了!”

    他跳起来,在屋里转圈。

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

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

    “kunlunos”

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

    他的眼眶有点红。

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

    但他的嘴角,翘得老高。

    门被推开了。

    赵四站在门口。

    “听说跑起来了?”

    王溯站起来。

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

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

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

    看了很久。

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

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

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

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

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

    赵四点点头。

    “好。”

    就一个字。

    但王溯听见了。

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

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

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

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

    大家举杯,一饮而尽。

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

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

    赵四看着他。

    “是吗?”

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

    赵四点点头。

    “值就好。”

    他转向胡志远。

    “老胡,你呢?”

    胡志远沉默了一会儿。

    “还行。”

    赵四笑了。

    “还行,就是挺好。”

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

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

    大家举杯。

    “敬昆仑!”

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

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

    几个人摇头。

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

    他看着窗外。

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

    他转过头。

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

    他看着那五个人。

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

    他顿了顿。

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

    屋里安静了几秒。

    然后孙晓梅忽然说。

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

    赵四看着她。

    “说。”

    孙晓梅想了想。

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

    赵四沉默了一会儿。

    然后他笑了。

    “赶上?”

    他看着孙晓梅。

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

    他站起来。

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

    他拍拍孙晓梅的肩膀。

    “这就够了。”

    孙晓梅听着,若有所思。

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

    “对了,王溯。”

    王溯站起来。

    赵四看着他。

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

    王溯愣了一下。

    “哪行字?”

    赵四指了指那台机器。

    “kunlunosv0.1”

    王溯笑了。

    “好。”

    赵四推门出去。

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

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

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

    王溯想了想。

    “会。”

    “为什么?”

    王溯指着那台机器。

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

    他顿了顿。

    “而且,还会走下去。”

    夜深了。

    小馆子里,灯还亮着。

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

    窗外,月亮很亮。

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

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

    屏幕上,有一行字:

    “kunlunosv0.1>”