[发明专利]一种基于PCM的系统启动方法有效
申请号: | 201410188631.0 | 申请日: | 2014-05-06 |
公开(公告)号: | CN103955389B | 公开(公告)日: | 2017-09-29 |
发明(设计)人: | 陈岚;戴正元;郝晓冉 | 申请(专利权)人: | 中国科学院微电子研究所 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京维澳专利代理有限公司11252 | 代理人: | 王立民,吉海莲 |
地址: | 100029 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 pcm 系统启动 方法 | ||
技术领域
本发明涉及存储器领域,尤其涉及一种基于PCM的系统启动方法。
背景技术
近年来,随着移动终端设备的兴起,嵌入式技术得到了飞速的发展,尤其是嵌入式Linux系统的应用越来越广泛。
嵌入式系统在加电或复位后,会执行一段启动程序Bootloader,以初始化好硬件和软件环境,之后调用Linux内核。Bootloader和Linux内核映像一般都存储在Flash或者磁盘等非挥发性存储器上,但由于Flash或磁盘的读写速度慢,Bootloader执行一小段程序后就会将其自身搬移到DRAM上继续执行,初始化好环境之后会将Linux内核映像从Flash中搬移到内存上然后调用内核,该启动方法由于Flash或磁盘的读写速度慢,需要占用内存进行启动,同时内核的搬运也会造成启动时间的增加。
发明内容
本发明的实施例提供了一种基于PCM的系统启动方法,实现PCM作为内存及存储设备的新策略,减小了时间开销。
为实现上述目的,本发明实施例提供了如下技术方案:
一种基于PCM的系统启动方法,包括:
引导程序和内核映像存储在PCM中;
在PCM上执行引导程序,在执行中将可读写的部分分配至DRAM中,包括:采用U-Boot作为应用于嵌入式CPU的引导程序,在整个执行过程中,将其中可读写的部分分配至DRAM中,引导程序中可读写的段包括数据DATA段、未初始化BSS段、动态内存分配、全局变量和堆栈段,除此之外,引导程序代码都直接在PCM上直接执行;
在PCM上执行内核映像,在执行中将可读写的部分分配至DRAM中,包括:首先,设置好本地执行内核的物理位置,该物理位置设置为内核映像在PCM上的首地址,然后在内核建立页表的阶段,页表将内核虚拟空间的代码段映射到PCM上,而将内核虚拟空间的数据段和堆栈段映射到DRAM上,然后开启内存管理单元之后,内核开始以虚拟地址访问内存,复制内核的数据段到DRAM中,并且在DRAM上建立BSS段、堆栈段。
可选的,系统启动参数和根文件系统也存储在PCM中。
可选的,在执行内核映像之前,还包括步骤:等待用户命令。
可选的,该用户命令设置为内核映像在PCM上的首地址。
可选的,通过在引导程序的头文件中设置宏,并在引导程序起始阶段采用预处理语句的方式,运行拷贝数据部分,以实现将可读写的部分分配至DRAM中。
可选的,在PCM上执行内核映像时,内核的分配步骤具体包括:
设置内核的物理地址;
在建立页表时,将内核虚拟空间的代码段映射到PCM上,将内核虚拟空间的可读写部分映射到DRAM上;
以虚拟地址访问内存,复制内核的可读写部分到DRAM中。
本发明实施例提供的基于PCM的系统启动方法,利用PCM存储并执行引导程序和内核映像,在执行中,将可读写的部分分配至DRAM中,由于启动中需要搬移的数据段仅占引导程序和内核映像的不到十分之一,同时PCM的读延迟与DRAM相当,从而可以有效地减少系统启动的时间,提高系统效率。
附图说明
图1为根据本发明实施例的基于PCM的系统启动方法的流程示意图;
图2为根据本发明实施例的基于PCM的系统存储映像分布示意图;
图3为根据本发明实施例的启动方法在引导程序执行时的存储分布示意图;
图4为根据本发明实施例的启动方法在内核映像执行时的内存空间映射示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以下实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内,因此本发明不受下面公开的具体实施例的限制。
本发明提出了一种基于PCM的系统启动方法,将PCM(Phase Change Random Access Memory)作为系统启动的设备,在PCM中存储系统启动的代码与映像,将DRAM作为内存,从而提高系统启动的效率,减小启动的时间开销。
为此,本发明提供了如下技术方案:
一种基于PCM的系统启动方法,参考图1所示,包括:
引导程序和内核映像存储在PCM中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院微电子研究所,未经中国科学院微电子研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410188631.0/2.html,转载请声明来源钻瓜专利网。