[发明专利]一种安卓兼容环境适配多Linux内核的启动方法有效
申请号: | 202211223999.7 | 申请日: | 2022-10-09 |
公开(公告)号: | CN115292721B | 公开(公告)日: | 2023-01-24 |
发明(设计)人: | 温研 | 申请(专利权)人: | 北京麟卓信息科技有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F8/41;G06F9/445 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100085 北京市海淀区西*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 兼容 环境 适配多 linux 内核 启动 方法 | ||
本发明公开了一种安卓兼容环境适配多Linux内核的启动方法,通过为安卓兼容环境编译两类内存镜像文件,当Linux系统内核对应的目录发生变化时启动位置无关代码类型的内存镜像文件,根据Linux系统动态配置的地址加载内存镜像文件,从而保证了安卓兼容环境在多种不同Linux内核下的正常启动,进一步提高了安卓兼容环境与桌面系统之间的兼容性,改善了用户的使用体验。
技术领域
本发明属于桌面操作系统上运行移动应用的开发技术领域,具体涉及一种安卓兼容环境适配多Linux内核的启动方法。
背景技术
Linux操作系统安卓兼容环境(下文简称安卓兼容环境)是一种在Linux操作系统上运行安卓应用的技术,对丰富Linux操作系统应用生态有着重要的意义。通常情况下,典型的安卓兼容环境主要包括安卓应用显示单元和安卓应用兼容服务,安卓应用显示单元用于在桌面操作系统上实现安卓应用的用户界面,安卓应用兼容服务用于提供运行于桌面操作系统上的安卓兼容环境,通过安卓应用显示单元与安卓应用兼容服务的相互配合实现安卓应用在桌面操作系统上的有效运行,例如,现有安卓兼容环境的实现方案有xDroid,它包括xDroidUI和xDroidServer,xDroidUI为安卓应用显示单元,xDroidServer为安卓应用兼容服务,通过xDroid与xDroidUI的配合即可实现安卓应用与Linux操作系统的兼容。
现有安卓系统为了提高其运行时性能,在其第一次运行时往往会将安卓框架的各种Jar包编译成OAT或ART文件,OAT或ART文件实质上就是ELF格式的Linux的可执行代码即机器指令而不是Java的中间代码,然而这将会导致第一次启动安卓系统的过程耗时较多,尤其是对于安卓兼容环境而言,会导致用户在桌面系统中启动安卓兼容环境的耗时过长,从而影响用户体验。
因此,现有的安卓系统的启动机制为,在编译安卓系统时直接将安卓系统自带的Jar文件编译为OAT或ART文件,这虽然会增大安卓系统镜像文件的数据量,但会显著减少安卓系统第一次启动的时间。在安卓系统启动过程中会加载Boot.art文件,Boot.art文件为包含了安卓框架各组件编译结果的文件,如果Boot.art文件存在,则将Boot.art文件复制到Cache目录并映射到地址空间的某个固定地址进行使用,类似于加载动态库的操作,由此即可减少安卓系统的启动时间,如不存在就需要将安卓框架对应的Jar文件编译生成为ART文件并保存到cache目录中。
然而当在桌面系统中使用安卓兼容环境时,由于安卓兼容环境需要与多种版本的桌面系统进行适配,因此安卓系统现有启动机制中所设定的固定地址则可能会被桌面系统占用,致使安卓兼容环境加载Boot.art文件失败,进而产生安卓兼容环境无法正常启动的问题,为用户的正常操作带来不便。
发明内容
有鉴于此,本发明提供了一种安卓兼容环境适配多Linux内核的启动方法,能够实现安卓兼容环境对多种Linux系统内核的适配。
本发明提供的一种安卓兼容环境适配多Linux内核的启动方法,包括以下步骤:
步骤1、将安卓兼容环境的Jar包编译为非位置无关代码类型和位置无关代码类型的内存镜像文件,并将动态基地址的初始值设置为空,其中,非位置无关代码类型的内存镜像文件记为Boot.art文件,位置无关代码类型的内存镜像文件记为Boot.pic.art文件;
步骤2、在Linux系统内运行安卓兼容环境时,加载未启动的进程,若预设路径下存在Boot.art文件则执行步骤3,否则执行步骤7;
步骤3、若动态基地址为空则执行步骤4,否则执行步骤6;
步骤4、获取Boot.art文件的地址空间作为镜像地址空间;获取当前进程的虚拟地址空间作为进程虚拟地址空间;若镜像地址空间被进程虚拟地址空间所占用则执行步骤5,否则将Boot.art文件映射到镜像地址空间完成进程的启动后执行步骤8;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京麟卓信息科技有限公司,未经北京麟卓信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211223999.7/2.html,转载请声明来源钻瓜专利网。