专利汇可以提供一种多Android系统的容器自动创建及其启动方法专利检索,专利查询,专利分析的服务。并且本 发明 基于Linux 内核 容器技术和显示设备复用技术,具体涉及一种系统级容器技术的多Android系统的容器自动创建及其启动方法。本发明在Linux内核中自动创建容器,启动容器中的系统,确保每个容器独立运行一个Android系统。实现容器管理主 进程 和容器管理从进程的通信,在此 基础 上,实现容器管理主进程向容器管理从进程发送创建和启动消息,容器管理从进程接收并处理消息来完成的。本发明提供的多Android系统的创建及其启动方法,实现了自行地在Linux内核中创建,和启动容器;再次启动设备,容器管理模 块 根据系统中所创建的容器,启动容器。,下面是一种多Android系统的容器自动创建及其启动方法专利的具体信息内容。
1.一种多Android系统的容器自动创建及其启动方法,其过程如下:
步骤1、启动Android设备,待Linux内核启动完成后;init进程运行,解析脚本文件启动系统进程,容器管理主进程和容器管理从进程此时启动,统称为容器管理模块,为后续系统启动作好准备;启动系统进程时主进程阻塞等待从进程准备就绪,当从进程完成初始化后唤醒主进程;该步骤包括以下分步骤:
步骤1-1、启动Android设备,进入引导程序,由引导程序装载Linux内核,内核启动完成后,根命名空间的init进程开始解析init.rc和其他启动脚本,启动系统服务进程;
步骤1-2、修改init.rc启动脚本,使得主进程autostart_pro以守护进程的形式运行在根命名空间;
步骤1-3、再次修改init.rc启动脚本,使得从进程container_pro以守护进程的形式运行在根命名空间;
步骤1-4、当从进程初始化完成之后,向主进程发送消息,表示准备就绪,唤醒主进程;
步骤2、主进程唤醒后读取容器系统配置文件,根据配置文件判断容器是否存在,如果容器不存在,则主进程向从进程发送容器创建消息,从进程在Linux内核中创建容器;
否则主进程向从进程发送容器启动消息,从进程根据发送过来的消息更新配置文件;
然后准备init进程运行环境并创建容器init进程,再结合Linux内核资源隔离机制和空间命名机制将init进程移入命名空间中运行,init进程解析启动脚本,逐步完成容器启动;
该步骤包括以下分步骤:
步骤2-1、主进程唤醒后读取容器系统配置文件,根据配置文件判断容器是否存在,并向从进程发送创建或启动消息;
若不存在,表明容器并未创建,主进程将创建消息中发送给从进程,从进程接受消息并解其,得到创建容器消息实体,进行创建容器:
a调用系统函数创建容器根目录;
b创建容器所必须的配置文件,并初始化配置文件;
否则,主进程将包装的启动消息发送给从进程,从进程解包发送过来的消息,得到启动容器消息实体,开始启动容器;
步骤2-2、解析启动消息,设置容器的内核资源隔离参数,更新配置文件,确保每个容器在完全独立的平台上执行;创建newcgroup,在所创建的newcgroup中初始化容器:
a为容器挂载文件系统,首先在容器根目录下挂载tmpfs用于容器的运行;然后对data目录进行绑定映射;接着映射叠加system目录,最后为容器挂载sd卡;
b将由内核生成的/proc和/sbin目录从根域中拷贝到容器中;
c将配置文件读取到内存中,根据配置文件开启资源隔离机制,设置父子进程隔离属性;
d将容器启动脚本拷贝到容器中;
e创建容器子进程,容器子进程进一步设置容器init进程环境,改变容器根目录和工作路径,将init进程实体加载到子进程中,运行init进程;
f创建newcgroup,将init进程移入其中,作为容器的首进程,保证容器所有进程都完全在所属的newcgroup中运行;
步骤3:待步骤2完成后,根据配置文件信息启动一个容器在前台,其余容器运行在后台;前台容器获取显示设备,初始化系统桌面;后台容器获取虚拟的显示设备,完成后台容器启动;至此,多个容器创建并启动完成,处于前台的Android系统进入运行状态。
2.如权利要求1所述多Android系统的容器自动创建及其启动方法,所述步骤3具体如下:
根据配置文件判断所要启动的容器处于前台还是后台;
若为前台容器,则进入:将所创建容器子进程进程号写入表示设备命名空间的文件中,触发容器获取显存设备;开始执行容器内init进程,init进程解析步骤2中的启动脚本,启动系统服务进程以及zygote进程,zygote进程启动Android Framework层systemserver系统服务进程,再由systemserver系统服务进程启动各个Android服务,最后获取显示设备启动桌面;Launcher完成后通知从进程,表明前台容器启动完成;
否则:执行容器内init进程,init进程解析启动脚本,启动系统服务进程以及zygote进程,zygote进程启动AndroidFramework层systemserver系统服务进程,再由systemserver系统服务进程启动各个Android服务,最后获取虚拟现实设备,完成后台容器启动。
标题 | 发布/更新时间 | 阅读量 |
---|---|---|
具有抽吸单元的洗碗机 | 2020-05-08 | 550 |
用于腰椎穿刺的触觉传感装置 | 2020-05-15 | 798 |
一种嵌入式操作系统的升级方法 | 2020-05-08 | 97 |
用于实施机器学习过程的系统 | 2020-05-08 | 220 |
一种基于Android系统的启动过程完整性度量检测方法 | 2020-05-12 | 489 |
生产线节能运行系统 | 2020-05-13 | 837 |
无人驾驶车辆自动装载或卸载货物的方法和装置以及无人驾驶物流车辆 | 2020-05-11 | 600 |
自主消防无人机系统及消防方法 | 2020-05-12 | 287 |
全视频车位探测器 | 2020-05-14 | 65 |
固件升级方法、电子设备、相机系统和无人飞行器 | 2020-05-15 | 853 |
高效检索全球专利专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。
我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。
专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。