目前,各种不同指令集架构的CPU平台正在蓬勃发展,如X86,ARM和RISC—V等同时,操作系统技术架构的多样化也形成了一批软硬件结合的生态系统,如AA,Wintel等而各系统的开发又相互独立,给操作系统软硬件的生态统一带来了一定的挑战OpenKylin社区构建并深化原生兼容技术,从CPU和软件支持两个维度出发,构建软硬件生态开发的基础支撑
OpenKylin的原生兼容技术,是指从硬件平台和软件生态两个维度,为不同指令集架构实现多平台同源的操作系统版本,通过原生软件支持和软件兼容技术,构建统一集成的软硬件生态系统。
软件兼容性技术
软件兼容技术是实现软件生态集成的关键。它可以从操作系统的ABI层实现软件的跨平台运行,主要包括以下技术:
1.二进制翻译
分析转换源平台软件的运行指令,在目标平台上生成仿真指令或机器指令,实现在目标平台上的兼容运行。
2.动态库的本地封装
将源平台软件所需的动态链接库映射封装到目标平台,使得软件在兼容运行时可以直接从目标平台调用,避免了动态库的重复翻译和执行,提高了兼容运行效率。
3.兼容的操作环境
为兼容软件运行提供完整的配置文件,依赖环境和相关资源,使软件与源平台保持一致性,完整性和正确性,避免运行时出错甚至崩溃。
原生兼容性的技术特征
从构建软硬件统一集成的生态目标出发,openKylin的原生兼容技术主要有以下特点:
1.多硬件平台支持
硬件平台的广泛支持是软硬件生态基础的基础OpenKylin为不同指令集架构搭建了同源的操作系统开发平台,从内核,软件包到桌面集成环境,实现多硬件平台的根操作系统版本
2.本地软件支持
原生软件是生态系统的重要组成部分openKylin构建底层编译器工具链和多编程语言库,支持原生软件生态系统目前,openKylin在各种硬件平台版本中都有针对办公,娱乐,互联网和集成开发的原生软件,可以支持大部分使用需求
3.兼容软件支持
基于软件兼容技术,软件的跨平台兼容运行可以有效地实现软件生态系统之间的互补目前,openKylin拥有KMRE和KWRE两个兼容的运行环境,可以在openKylin中实现Wintel和AA生态系统的兼容运行
本站了解到,openKylin社区已经开展了原生兼容技术的相关工作,让用户有更多的软硬件生态可供选择目前,openKylin的原生兼容性技术支持和未开发的系统领域如下表所示接下来,openKylin将继续深化原生兼容技术,构建统一融合的软硬件生态基地
。