七月十七日凌晨四点,深圳南山,浩宇基础研究院地下一层。这里是三个月前才完成改造的“隔离实验区”,没有窗户,空气靠独立的净化系统循环,带著一种无菌般的冰冷和乾燥。走廊灯光是惨白的led,照在浅灰色环氧树脂地坪上,反射出毫无温度的光泽。一扇厚重的防电磁屏蔽门紧闭,门禁系统闪烁著微弱的红光,门牌上只有一个简单的白色標籤:“b-7”。
门內是一个六十平米左右的实验室。正中央是一张巨大的白色工作檯,台上杂乱地摆著七八台设备:一台戴尔台式机、一台ibm笔记本、一台索尼vaio超薄本、一台诺基亚n95原型机、一台黑莓8700、一台索尼爱立信的p990智慧型手机、甚至还有一台厚重的东芝windows平板电脑。所有设备都用五顏六色的网线、数据线、转接头连在一起,像某种怪异的机械章鱼。
陈薇站在工作檯前,穿一件实验室白大褂,头髮扎成紧紧的髮髻,没化妆,脸色在屏幕冷光下白得发青。她已经连续工作了四十个小时,咖啡因在血液里像细小的针一样游走,让她太阳穴突突地跳,但精神异常清醒,清醒到能听见自己心臟每一次搏动、血液流过耳膜的细微声响。
她面前的三块屏幕上,运行著同一个测试程序。程序很简单:在戴尔台式机上播放一段视频,然后暂停;接著在诺基亚手机上点击“继续播放”;三秒后,手机屏幕亮起,视频从暂停点开始播放,音画同步,毫无卡顿。她再在平板上点击“切换”,视频瞬间跳到平板,进度条分毫不差。
完美。至少看起来完美。
但陈薇知道,这完美的表象下,是过去三个月她和团队解决的无数个“不可能”:不同作业系统(windows、symbian、blackberry os、windows mobile、linux)之间的进程状態同步;不同架构(x86、arm、mips)的数据格式转换;不同网络(wi-fi、2g、3g、蓝牙)下的传输协议適配;不同硬体(pc的高性能cpu、手机的低功耗晶片)的计算负载迁移。
这套系统,她內部称之为“seamless sync”(无缝同步),但林浩在立项会上给了它一个更宏大的名字:巴別塔。
“《圣经》里,人类想建一座通天的塔,上帝让人类语言不通,工程失败了。”林浩当时在白板上写下“babel”这个单词,“但我们要建的巴別塔,不是让人与天沟通,是让设备与设备、数据与数据、服务与服务之间,语言相通。在pc上没打完的游戏,在手机上继续;在平板上没听完的歌,在车上继续;在手机上没聊完的天,在电视上继续。我们要让用户感觉,他拥有的不是一堆孤立的设备,是一个无缝流动的数字自我。而这座塔的基石,就是一套跨平台的无缝流转协议。”
陈薇记得自己当时的反应是:荒谬。技术上不可能。每个作业系统都是封闭的王国,每个硬体架构都有自己的指令集,每个应用都有自己的数据格式。要打通它们,意味著要从最底层重新设计一套“元协议”,让所有设备、系统、应用,都臣服於这套协议。这不仅是技术挑战,是生態霸权——谁掌握了这套协议,谁就掌握了数字世界的水和电。
但她还是接了。因为林浩说:“这不是一个功能,是未来鸿蒙作业系统的前置技术验证。鸿蒙要做的,不是另一个windows或android,是一个能跑在手机、平板、电脑、电视、手錶、汽车……所有设备上的统一系统。而『巴別塔』,就是那个系统的血管网络。我们要先在现有设备的废墟上,证明这套血管能跑通。然后,再建新的身体。”
所以有了这个地下实验室,有了这堆来自不同时代、不同阵营、支离破碎的设备,有了过去三个月不眠不休的攻坚。而现在,她手里拿著测试报告,上面用红笔圈出了最后一个未解决的问题:延迟。
“从pc切换到手机,平均延迟3.2秒。从手机切换到平板,平均延迟2.8秒。用户可感知的延迟閾值是1秒以內。”她对著空气自言自语,声音在空旷的实验室里迴响,“问题出在状態序列化。pc的进程状態,包含內存映像、寄存器、打开文件句柄,数据量超过500mb。压缩后传输,在wi-fi下需要至少2秒。2秒,用户会觉得卡了。”
她走到白板前,拿起笔,写下“状態序列化”几个字,在下面画了一条分界线。左边写“完整状態”,右边写“最小状態”。然后开始列公式:完整状態 = 內存 寄存器 文件 网络连接 gui状態 … 最小状態 = 应用標识 用户位置 核心数据指针 差异增量。
“只同步用户位置和核心数据指针,”她喃喃道,“让目標设备从云端重新加载应用,但直接跳到指定位置。但这就要求,应用本身必须支持『状態快照』功能,而且云端必须有实时同步的应用数据……”
这是死循环。要么忍受大延迟传输完整状態,要么要求所有应用按照“巴別塔”的规范重构。前者体验差,后者生態做不到。
实验室的门禁发出“嘀”的一声轻响,门滑开了。林浩走进来,手里拎著一个塑胶袋,里面是几个还冒著热气的包子。“早饭。”他把袋子放在工作檯上,然后走到陈薇身边,看著白板上的公式。
“卡住了?”他问。
“延迟下不去。”陈薇没回头,继续盯著公式,“要么传得多,要么传得快。但用户要的是既多又快。”
林浩拿起一个包子,咬了一口,咀嚼著,眼睛盯著白板。过了一会儿,他说:“你听过『分形压缩』吗?”
陈薇转过头看他。
“一种图像压缩算法,”林浩说,“不存储完整的像素数据,存储生成图像的数学公式。需要显示时,实时计算渲染。虽然计算量大,但数据量极小。状態同步能不能用类似的思路?不传输完整的內存映像,传输生成这个状態的『种子』——用户的操作序列、应用的初始状態、时间的流逝。让目標设备根据『种子』,在本地实时重放,直到追上当前状態。”
陈薇愣住了。她大脑飞速运转。操作序列……初始状態……实时重放……这意味著,每台设备上都要运行一个轻量级的“状態虚擬机”,能够根据接收到的操作日誌,快速重演应用的状態变迁。而传输的,只是用户的操作记录(点击、输入、选择)和应用的核心事件(加载、保存、网络响应)。数据量可能压缩到原来的千分之一。
“但计算量……”她喃喃道。
“计算量交给『星核』。”林浩说,“我们设计的晶片,有专门的硬体加速单元,用来做这种確定性的状態重放。未来,每台搭载『星核』的设备,都会內置这个虚擬机。而『巴別塔』协议,就是传输操作日誌的管道。这样,不仅延迟能降到毫秒级,还能实现跨设备、跨应用的任意状態回滚——比如,你可以把手机上的游戏状態,回退到五分钟前,然后在平板上从那个时间点继续。”
陈薇倒吸一口凉气。这个想法,太疯狂了。但疯狂中,有一种冰冷的美感。不传输状態,传输“时间的轨跡”。让目標设备在本地重建时间线,追上源设备。这不仅仅是同步,是创造了数字世界的“时光机”。
“这需要……”她声音发颤,“需要定义一套標准的操作记录格式。需要所有应用上报用户操作和內部事件。需要硬体级別的重放加速。需要……”
“需要鸿蒙。”林浩接过话,“这就是为什么『巴別塔』是前置验证。我们要先在现有设备上,用软体模擬的方式,验证这套理念的可行性。等『星核』晶片流片成功,鸿蒙作业系统有了硬体基础,我们再把虚擬机、加速单元、標准协议,全部做进系统內核。那时候,『巴別塔』就不再是一个实验室项目,是鸿蒙生態的底层能力,像空气一样无处不在。”
他走到工作檯前,拿起那台诺基亚n95,点亮屏幕,上面还播放著刚才测试的视频。“你看,现在用户需要手动点击『切换』。未来,用户什么都不用做。你从办公室起身走向地铁,手机自动感知你的移动,把pc上的视频流无缝切换到手机。你走进家门,电视自动亮起,问你是否继续看手机上的內容。设备之间会『对话』,会『理解』用户的意图,会主动提供服务。而这一切的基础,就是『巴別塔』——那个让数据、状態、服务自由流动的管道。”
陈薇看著林浩,这个比她年轻十岁的男人,眼里有光,那光不是幻想,是某种近乎冷酷的篤定。他看到的不是眼前这堆破铜烂铁,是一个已经成型的未来。而她,正站在那个未来的起点,手里拿著建造蓝图。
“我需要人,”她说,“至少二十个。顶尖的系统工程师、编译器专家、虚擬化专家。还要接触这些设备的厂商,拿到底层驱动和系统接口。这可能会触及专利和法律风险。”
“人,你去招,薪资不设限。厂商,我去谈,浩宇现在有谈判筹码。专利,法务团队隨时待命。”林浩吃完包子,擦了擦手,“但时间很紧。明年三月,『星核』第一次流片。明年六月,鸿蒙作业系统启动开发。在那之前,『巴別塔』必须有可演示的版本,能在至少五种主流设备上,实现三个核心应用(游戏、音视频、即时通讯)的无缝流转。能做到吗?”
陈薇闭上眼睛。脑海里闪过那些公式,那些未解决的难题,那些需要攻克的堡垒。然后,她睁开眼,点头。
“能。”
“好。”林浩拍拍她的肩膀,转身走向门口,走到门边时停住,回头,“对了,这个项目的保密级別,提到最高。『巴別塔』这个名字,只在核心团队內部使用。对外,它是『设备协同实验室』。我不想让腾讯、微软、谷歌,太早看到我们在建什么。”
门滑开,又关上。实验室重新陷入寂静,只有设备散热风扇的低鸣。陈薇走到白板前,擦掉之前的公式,在空白处写下两个词:
传输时间,而非状態。
重建轨跡,而非复製。
然后,在下面画了一座塔。塔基写著“星核晶片”,塔身写著“鸿蒙系统”,塔尖写著“巴別塔协议”。塔的周围,无数细线连接著手机、电脑、平板、电视、汽车、手錶……
她放下笔,拿起一个已经凉掉的包子,咬了一口。很硬,但她嚼得很用力。
窗外,深圳的天应该亮了。但在这个没有窗户的地下实验室里,时间仿佛凝固。而一座名为“巴別塔”的数字通天工程,在这一天,正式打下了第一根桩。
静待它,在无人知晓的黑暗深处,悄然生长,直至刺破苍穹。