导读

本期FCS Perspective栏目,特邀上海交通大学陈海波教授的观点分享——Embracing connected intelligence with the YuanOS architecture: one OS kit for all。该文发表在Frontiers of Computer Science期刊2024年第1期(了解原文详情请点击左下方“阅读原文”)。为帮助读者更精准地理解这篇文章,FCS特别邀请本文作者,对该文进行了翻译,以飨读者。

陈海波,上海交通大学特聘教授、并行与分布式系统研究所所长,领域操作系统教育部工程研究中心主任。国家杰出青年基金获得者、IEEE Fellow、ACM杰出科学家,曾获陈嘉庚青年科学奖(信息技术科学)、中国青年科技奖等。曾任ACM SIGOPS ChinaSys主席、ACM SOSP 2017年大会联席主席等。他也是OpenHarmony技术指导委员会创始主席。

Frontiers of Computer Science, 2024, 18(1): 181107

https://doi.org/10.1007/s11704-023-3997-5

元OS:面向万物智联时代的操作系统

01 背景

操作系统需要为应用程序提供合适的硬件抽象与执行环境,因此是当今IT行业不可或缺的“基础设施”。自操作系统在1956年首次问世以来,其已经经历了三个主要的演变阶段,分别为大型机时代、PC主导的互联网时代,以及智能手机主导的移动互联网时代。随着设备智能化程度的提升(如智能穿戴、智能家居、智能车),以及跨设备的通讯协同需求日益增长,我们将迎来万物智联的新时代。新时代呼唤新型操作系统以满足万物智联的新特征与新需求。万物智联时代具有以下几点特征:

  • 设备多样化、交互沉浸化:万物智联时代,智慧互联的设备数量预计可达数十亿之多,且采用更为沉浸的交互方式,如语音、手势、乃至视线跟踪。

  • 以场景为中心:万物智联时代,用户更关心以场景为中心的体验,而非单一设备的体验。

  • 以软硬件生态为导向:万物智联时代,由于智能设备数量庞大,需要共同合作形成一个更加统一的软硬件生态。

这些特征为操作系统带来了巨大的挑战。 “昆虫纲悖论”是东京大学的坂村健(Ken Sakamura)教授在分析了个性化与通用型之间的矛盾后提出的一个形象比喻,在这里用于解释操作系统面临的挑战也十分合适。该理论指出地球上大约有5,000种哺乳动物(正如万物智联时代的智能手机、PC和服务器),而昆虫的种类数超一百万(正如万物智联时代的AIoT设备)。如果我们只看数量,昆虫本应主宰我们的星球。而为什么昆虫没有主宰世界呢?这是因为哺乳动物可以更紧密的合作,正如手机与PC能够更好的协同。而AIoT设备虽数量众多,却无法高效协作。究其本质是由于这些设备具有完全不同的硬件特征(如指令集、硬件资源),以及完全不同需求(如功能、性能、安全性等),这为应用开发和维护带来了巨大的挑战。因此,万物智联亟需新型操作系统这一基础设施提供统一的生态底座,为智能设备互联互通打下坚实根基。

02 观点:元OS架构

为此,我们提出了元OS架构。为了给不同场景、设备提供统一的生态底座,历史上曾经有过几次失败的尝试,他们试图使用单一操作系统来适应所有的场景,比如Workplace OS。这种过于”一刀切“的方案被证明面临诸多挑战,乃至于无法持续。因此,元OS架构尝试以一种更加”宽松“的方式解决生态碎片化的问题。元OS并非提供一个单一的操作系统,而是尝试提出一个统一的架构。该架构包含一系列操作系统组件,而这些组件可以灵活地组装在一起,从而形成一个满足特定场景需求的操作系统(如图1)。元OS的核心理念是“One OS Kit For All”。

图1:元OS架构

元OS架构虽抽象上十分简洁,但其面临一系列挑战:

  • 状态共享:操作系统组件化实质上只是将代码解耦,但分布在不同组件之间的状态(State)依然需要共享以相互协同。我们目前通过明确地将状态划分到不同组件,并检查不同组件之间共享的状态来解决这个问题。

  • 性能问题:组件解耦会造成跨组件调用以及状态共享的性能开销。我们提出了一种“开发时解耦,运行时聚合“的技术来解决这一问题。使得组装后的组件可以在紧耦合的方式下运行,无需额外的机制如IPC,但同时仍然保证了隔离性与安全性。

  • 维护问题:操作系统组件将不断演进,这可能导致组件间接口发生改变,最终无法组装。我们通过统一控制组件间API的定义及升级,并提供检查工具来解决。

03 元OS的实践:OpenHarmony

OpenHarmony是为万物智联时代设计的开源操作系统。OpenHarmony践行了元OS的设计理念,因此它可以灵活运用在各种场景、各种智能设备,为万物智联奠定坚实基础。OpenHarmony提供了一个开源的、统一的生态,从而实现共赢合作。为实现这一目标,OpenHarmony具有以下架构特征。

  • 分离架构、弹性部署。OpenHarmony为多样化的智能设备提供了组件化且弹性的架构。

  • 无缝流转、智能协同。OpenHarmony实现了跨设备的无缝流转以及跨场景的无缝协同。

  • 简化开发、一致体验。OpenHarmony实现了一端开发、多端部署,且保证用户体验一致。

OpenHarmony可以运行在海量智能硬件上,为开发者提供了更多的选择和灵活性,实现了元OS架构的目标。OpenHarmony已经成为增长最快的开源智能设备操作系统社区,并在Gitee指数中一直保持第一的位置。此外,OpenHarmony已应用于350多种商业产品中,并适配了54种芯片,涵盖了包括能源、航空航天、工业、金融、交通、医疗和教育在内的广泛领域。

04 结论

在万物智联的时代,我们相信元OS架构可以解决“昆虫纲悖论”问题,使得海量智能设备互联互通、无缝协作。元OS仍然存在一系列挑战,比如状态共享、提供更好的性能和安全性,以及增强组件分开演进的能力。我们提供了初步的解决方案。我们希望与社区共同努力,以更系统的方式解决这些问题。

声明:本文来自FCS,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。