本发明涉及操作系统技术领域,具体涉及一种基于国产操作系统的国产平板双系统存储与启动方法。
背景技术:
随着国家及军队信息化建设和自主可控建设的发展,平板类设备应用场景不断增加,对国产平板的安全性、可操作性等提出了更高要求。现有国产平板系统已经满足不了多场景应用的需求,双系统成了当前解决多场景应用的一种解决方案。
目前国产平板一般使用android、ubuntu等非安全操作系统作为双系统,系统安全性没有保障。开机可以直接进入任一系统,没有对系统的安全等级做出区分,缺少用户安全等级与可使用系统的匹配。双系统存储在同一个嵌入式多媒体卡上,单个系统可使用容量小,读写速度受限。
这种存储在单个存储设备上的非安全操作系统组成的双系统,没有使用国产操作系统实现关键软硬件的自主可控要求,安全性较差;没有区分用户安全等级,双系统对所有用户都可见;两个系统存储在容量有限的嵌入式多媒体卡不同分区上,无法满足不同应用场景对存储容量和访问速度的不同要求。
技术实现要素:
(一)要解决的技术问题
本发明要解决的技术问题是:如何在国产平板上提供一种支持国产操作系统的双系统存储与启动方法,以根据用户安全等级使用不同系统,满足自主可控和按需启动的要求;并实现双系统存储在不同接口的物理介质上,满足不同应用场景对存储容量及读写性能的要求。
(二)技术方案
为了解决上述技术问题,本发明提供了一种基于国产操作系统的国产平板双系统存储与启动方法,包括以下步骤:
步骤1、使用国产操作系统和android分别作为双系统的第一系统与第二系统,并分别存储在固态盘和嵌入式多媒体卡上,且按照如下方式分区:
将固态盘分为操作系统区,第一系统直接安装在操作系统分区上;
将嵌入式多媒体卡分为固件区、系统参数区、boot分区、内核区、资源区、系统区和用户数据区,固件区存放上电处理器、内存和外设初始化代码;系统参数区存放本nandflash分区参数信息;boot分区存放第二系统的内核、设备树和启动logo;内核区存放第一系统的内核;资源区存放第一系统的设备树和启动logo;系统区存放第二系统的数据;用户数据区存放用户安装的应用和数据;
步骤2、按照如下流程启动双系统:
1)上电后执行固件区代码,初始化处理器、内存、基本输入输出这些硬件设备,建立运行环境;
2)读取系统参数区中分区大小、起始地址这些参数信息;
3)检测是否插入usbkey并验证,如验证通过则进入6),否则进入4);
4)读取boot分区,将第二系统的内核、设备树这些资源加载到内存;
5)构造传递给第二系统的内核参数,执行内核,挂载系统区和用户数据区,完成第二系统启动;
6)向屏幕输出双系统选择界面,等待用户选择需要启动的系统,若用户在预设时间内未选择则默认选择启动第一系统;
7)若用户选择第一系统,则进入8),否则转入4);
8)从内核区加载第一系统的内核,从资源区加载第一系统的设备树、启动logo这些资源到内存,并动态构造需要传递给内核的内核参数;
9)运行内核,根据内核参数挂载固态盘上的操作系统,完成第一系统的启动。
(三)有益效果
本发明针对国产平板设备设计了支持国产操作系统的双系统存储和启动方法,满足自主可控系统要求;通过usbkey验证,高安全等级系统对低安全等级用户透明;将双系统存储在不同接口存储设备中,满足不同应用场景对存储容量和访问速度的不同需求。该方法使双系统物理隔离,既能利用android系统丰富的应用软件,又能根据用户安全等级选择使用存储重要数据的自主可控的国产操作系统,保证信息高安全;通过使用不同接口的存储设备,满足系统对存储容量和读写性能的不同要求。
附图说明
图1是本发明的系统分区图;
图2是本发明的系统启动流程图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
本发明提供了一种基于国产操作系统的国产平板双系统存储与启动方法,包括以下步骤:
步骤1、使用银河麒麟国产操作系统和加固版android分别作为双系统的第一系统与第二系统,并分别存储在固态盘和嵌入式多媒体卡上,且如图1所示,按照如下方式分区:
将固态盘分为操作系统区,第一系统直接安装在操作系统分区上;
将嵌入式多媒体卡分为固件区、系统参数区、boot分区、内核区、资源区、系统区和用户数据区,固件区存放上电处理器、内存和外设初始化代码;系统参数区存放本nandflash分区参数信息;boot分区存放第二系统的内核、设备树和启动logo;内核区存放第一系统的内核;资源区存放第一系统的设备树和启动logo;系统区存放第二系统的数据;用户数据区存放用户安装的应用和数据;
步骤2、如图2所示,按照如下流程启动双系统:
1)上电后执行固件区代码,初始化处理器、内存、基本输入输出这些硬件设备,建立运行环境;
2)读取系统参数区中分区大小、起始地址这些参数信息;
3)检测是否插入usbkey并验证,如验证通过则进入6),否则进入4);
4)读取boot分区,将第二系统的内核、设备树这些资源加载到内存;
5)构造传递给第二系统的内核参数,执行内核,挂载系统区和用户数据区,完成第二系统启动;
6)向屏幕输出双系统选择界面,等待用户选择需要启动的系统,若用户在3秒内未选择则默认选择启动第一系统;
7)若用户选择第一系统,则进入8),否则转入4);
8)从内核区加载第一系统的内核,从资源区加载第一系统的设备树、启动logo这些资源到内存,并动态构造需要传递给内核的内核参数;
9)运行内核,根据内核参数挂载固态盘上的操作系统,完成第一系统的启动。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。