基于嵌入式操作系统的移动设备的开机控制方法及装置的制造方法

文档序号:8430530阅读:512来源:国知局
基于嵌入式操作系统的移动设备的开机控制方法及装置的制造方法
【技术领域】
[0001]本发明涉及移动终端,尤其是一种基于嵌入式操作系统的移动设备的开机控制方法及装置。
【背景技术】
[0002]目前,随着消费电子行业的迅猛发展,嵌入式Linux系统获得越来越多的关注。然而,嵌入式Linux系统原本是为PC机设计的操作系统,主要特点在于使用Bootloader替代了桌面系统的B1S (Basic Input Output System,基本输入输出系统),同时,对系统进行了规模上的裁剪,但硬件上的劣势往往导致系统启动速度较慢,而嵌入式产品使用者又对系统的开机速度比较敏感。典型的嵌入式Linux系统启动时间一般在几十秒或以上,这对于用户来说是不能容忍的。
[0003]现有的嵌入式产品的开机流程一般包括如下步骤:
[0004](I)在检测到开机事件时,加载启动加载程序Bootloader ;
[0005](2)通过Bootloader加载由kernel (操作系统内核)、root (根文件系统)和DTS (device tree source,设备树资源)镜像打包压缩而成的boot, img文件至DDR(DoubleData Rate,双倍速率同步动态随机存储器);
[0006](3)解压 boot, img 文件得到 kernel、root 和 DTS 镜像;
[0007](4)根据所获取的kernel、root和DTS镜像进行内核初始化,执行用户空间初始化。
[0008]虽然,由于嵌入式Linux系统使用的图形系统不同可能会影响开机时间,但是采用上述方法的开机时间一般约为几十秒,漫长的开机时间严重影响了用户体验。

【发明内容】

[0009]本发明目的在于提供一种基于嵌入式操作系统的移动设备的开机控制方法及装置,提供了一种新的开机控制方法,解决现有移动设备开机时间较长的问题。
[0010]第一方面,本发明提供一种基于嵌入式操作系统的移动设备的开机控制方法,包括:
[0011]在检测到开机触发事件时,加载预设的启动加载程序Bootloader ;
[0012]通过Bootloader将存储器中存储的各未压缩的Linux内核镜像文件加载至内存中;
[0013]通过加载到内存中的所述各未压缩的Linux内核镜像文件控制移动设备开机。
[0014]第二方面,本发明提供一种基于嵌入式操作系统的移动设备的开机控制装置,包括:
[0015]程序加载单元,用于在检测到开机触发事件时,加载预设的启动加载程序Bootloader ;
[0016]内核文件加载单元,用于通过Bootloader将存储器中存储的各未压缩的Linux内核镜像文件加载至内存中;
[0017]开机控制单元,用于通过加载到内存中的所述各未压缩的Linux内核镜像文件控制移动设备开机。
[0018]本发明提供一种基于嵌入式操作系统的移动设备的开机控制方法及装置,在检测到开机触发事件时,加载Bootloader,通过Bootloader将各未压缩的Linux内核镜像文件加载至内存中,并通过加载到内存中的各未压缩的Linux内核镜像文件控制移动设备开机,即该方法通过Bootloader直接将各未压缩的Linux内核镜像文件加载至内存中,无需再对Linux内核镜像文件进行解压,节省了解压时间,缩短了移动设备的开机时间,优化了用户体验。
【附图说明】
[0019]为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
[0020]图1是本发明实施例一提供的基于嵌入式操作系统的移动设备的开机控制方法的流程图;
[0021]图2是本发明实施例二提供的基于嵌入式操作系统的移动设备的开机控制方法的流程图;
[0022]图3是本发明实施例三提供的基于嵌入式操作系统的移动设备的开机控制装置的结构示意图。
【具体实施方式】
[0023]为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0024]下面结合附图并通过【具体实施方式】来进一步说明本发明的技术方案。
[0025]实施例一
[0026]图1是本发明实施例一提供的基于嵌入式操作系统的移动设备的开机控制方法的流程图,该方法可以由基于嵌入式操作系统的移动设备的开机控制装置执行,其中该装置可以由软件和/或硬件实现,可作为移动设备的一部分被内置在移动设备内部。如图1所示,该方法包括如下步骤:
[0027]步骤S100、在检测到开机触发事件时,加载预设的启动加载程序Bootloader。
[0028]在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行的代码,可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。
[0029]在开机时,移动设备的嵌入式系统获得电池的电能,系统自动加载并执行芯片上固化的启动加载程序Bootloader。
[0030]步骤S101、通过Bootloader将存储器中存储的各未压缩的Linux内核镜像文件加载至内存中。
[0031]其中,未压缩的Linux内核镜像文件包括kernel、root和DTS镜像。在移动设备首次设置嵌入式操作系统时,将所述未压缩的内核镜像文件烧录于移动设备的存储器中。具体可以是:在移动设备首次设置嵌入式操作系统时,根据预设的存储器分区与未压缩的Linux内核镜像文件间的对应关系,将各未压缩的Linux内核镜像文件烧录于对应的存储器分区中。例如:在移动设备首次设置嵌入式操作系统时,删除eMMC(Embedded MultiMedia Card)存储器的boot, img分区,添加三个分区以分别存储未压缩的kernel、root和DTS镜像。然后,获取未压缩的kernel、root和DTS镜像在eMMC芯片中的分区地址。通过在eMMC芯片的分区表中写入未压缩的kernel、root和DTS镜像的分区地址,确定所述未压缩的kernel、root和DTS镜像的烧录路径。依照上述烧录路径,将未压缩的kernel、root和DTS镜像烧录于对应的存储器分区中。
[0032]在开机时,运行启动加载程序Bootloader,访问存储器的分区表,以获取各未压缩的Linux内核镜像文件在存储器中的存储地址。访问未压缩的Linux内核镜像文件的存储地址,将未压缩的Linux内核镜像文件加载至内存中。内存可以是随机存取存储器,例如:DDR (DoubIe Data Rate,双倍速率同步动态随机存储器)和 SDRAM (Synchronous DynamicRandom Access Memory,同步动态随机存取存储器)。具体可以是:通过Bootloader分别将存储器中存储的未压缩的kernel、root和DTS镜像加载至DDR中。
[0033]步骤S102:通过加载到内存中的所述各未压缩的Linux内核镜像文件控制移动设备开机。
[0034]通过内存中加载的所述各未压缩的Linux内核镜像文件控制移动设备执行系统初始化、文件系统挂载、加载开机界面以及启动预设的开机自动启动的应用程序等。
[0035]本实施例提供一种基于嵌入式操作系统的移动设备的开机控制方法,通过加载预设的启动加载程序Bootloader,并通过Bootloader将存储器中存储的各未压缩的Linux内核镜像文件加载至内存中,利用加载到内存中的各未压缩的Linux内核镜像文件控制移动设备开机;省略了对加载到内存中的Linux内核镜像文件进行解压的步骤,节省了解压时间,缩短了移动设备的开机时间,优化了用户体验。
[0036]实施例二
[0037]图2是本发明实施例二提供的基于嵌入式操作系统的移动设备的开机控制方法的流程图。本实施例在实施例一的基础上,进一步,将通过Bootloader将各未压缩的Linux内核镜像文件加载至内存中,具体优化为:通过Bootloader获取各未压缩的Linux内核镜像文件的分区路径,通过所述分区路径确定所述各未压缩的Linux内核镜像文件的存储位置,访问所述存储位置对应的存储器分区,以将所述各未压缩的Linux内核镜像文件复制到内存中。
[0038]参见图2所示,所述基于嵌入式操作系统的移动设备的开机控制方法,包括如下步骤:
[0039]步骤S200、在检测到开机触发事件时,加载预设的启动加载程序Bootloader。
[0040]在移动设备检测到开机事件触发时,嵌入式系统加载并执行Bootloader,以完成处理器和相关硬件的初始化,建立内存空间映射图。
[0041]步骤S201、通过Bootloader获取各未压缩的Linux内核镜像文件的分区路径。
[0042]在存储器的分区表中,保存有各未压缩的Linux内核镜像文件存储地址。通过访问存储器的分区表,可以获得未压缩的kernel、root和DTS镜像在存储器中的起止地址。例如:在加载完Bootloader后,执行Bootloader,访问eMMC存储器的分区表,确定分别存储未压缩的kernel、root和DTS镜像的存储器分区在eMMC存储器中的起止地址。
[0043]步骤S202、通过所述分区路径确定所述各未压缩的Linux内核镜像文件的存储位置。
[0044]通过所获取的未压缩的kerne
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1