IT之家 12 月 22 日消息,当前,多种 CPU 平台蓬勃发展,指令集架构各不相同,如 X86、ARM 和 RISC-V 等。同时,操作系统技术架构的多样化也形成众多的软硬组合生态体系,如 AA(Android+ARM)、Wintel(Windows+Intel)等。然而,各体系之间的发展相互独立,这给操作系统的软硬件生态统一带来一定挑战。openKylin 社区打造深化“原生兼容”技术,从 CPU 和软件支持两个维度出发,为软硬件生态发展打造底座支撑。
openKylin“原生兼容”技术是指从硬件平台和软件生态两个维度出发,面向不同指令集架构实现多平台同源操作系统版本,并通过原生软件支持和软件兼容技术,构建出统一、融合的软硬件生态体系。
(资料图片仅供参考)
软件兼容技术
软件兼容技术是实现软件生态融合的关键,能够从操作系统 ABI(Application Binary Interface)层实现软件的跨平台运行,主要包括以下技术:
1.二进制翻译
将源平台软件的运行指令进行解析和转化,生成目标平台上的模拟指令或机器指令,实现在目标平台上的兼容运行。
2.动态库本地封装
将源平台软件所需的动态链接库映射和封装到目标平台,使软件在兼容运行时直接从目标平台调用,避免动态库的重复翻译执行,提高兼容运行效率。
3.兼容运行环境
为兼容软件运行提供完整的配置文件、依赖环境和相关资源等,使软件保持与源平台的一致性、完整性和正确性,避免产生运行时错误甚至崩溃。
“原生兼容”技术特性
从构建统一、融合的软硬件生态目标出发,openKylin“原生兼容”技术主要具有以下特性:
1. 多硬件平台支持
对硬件平台的广泛支持,是软硬件生态底座的基础。openKylin 构建了针对不同指令集架构的同源操作系统开发平台,从内核、软件包,再到桌面集成环境,实现多硬件平台的“根”操作系统版本。
2. 原生软件支持
原生软件是构成生态体系的重要组成部分,openKylin 构建底层编译工具链和多编程语言库,实现对原生软件生态的支持。目前,openKylin 在各硬件平台版本中具备了办公、娱乐、互联网和集成开发等应用场景原生软件,能够支撑大部分使用需求。
3. 兼容软件支持
基于软件兼容技术,实现软件的跨平台兼容运行,能够使软件生态之间进行有效互补。目前,openKylin 具有了 KMRE 和 KWRE 两种兼容运行环境,能够实现 Wintel 和 AA 等生态体系在 openKylin 中的兼容运行。
IT之家获悉,openKylin 社区已开展“原生兼容”技术的相关工作,使用户有更多的软硬件生态可供选择。目前,openKylin“原生兼容”技术在已支持和研发中的体系领域如下表所示。接下来,openKylin 将持续深化“原生兼容”技术,构建统一、融合的软硬件生态底座。