动态开机系统及方法,与操作系统映像文件建构方法技术方案

技术编号:2845794 阅读:255 留言:0更新日期:2012-04-11 18:40
一种动态开机系统及方法,与操作系统映像文件建构方法,具体为适用于一嵌入式系统的动态开机系统,其包括一存储器、一区块储存装置、一开机载入程序。区块储存装置至少储存一可执行映像文件,如操作系统映像文件、与一开机信息文件。其中开机信息文件至少记录可执行映像文件于区块储存装置中的一可执行映像文件位置、相应可执行映像文件的一可执行映像文件长度、与可执行映像文件需写入存储器的一写入开始位置。当嵌入式系统开机时,开机载入程序由区块储存装置读取开机信息文件,依据开机信息文件中记录的可执行映像文件位置与可执行映像文件长度读取可执行映像文件,并依据开机信息文件中记录的写入开始位置将可执行映像文件复制至存储器。

【技术实现步骤摘要】

本专利技术是有关于开机管理,且特别有关于一种可以提供动态开机的系统与方法,与运用于动态开机系统与方法的操作系统映像文件建构方法。
技术介绍
随着可携式装置的便利,个人数字助理(PDA)、移动电话、智能型手机等嵌入式系统(Embedded System),已经成为人们的必需品之一。在供数据储存的存储器中,大致可以分为两种不同类型的存储器一种为并行式(Parallel)存储器,如NOR类型闪存(Flash),而另一种为串行式(Serial)存储器,如NAND类型存储器,或称为区块储存装置(Block Storage Device)。由于并行式存储器是透过一并列输出/入接口来进行存取,所以,并行式存储器可以提供系统较高的存取速率。此外,由于并行式存储器可以提供处理器系统所存取的最小单位,如字节,因此,并行式存储器通常被处理器系统使用作为系统存储器,用来储存程序数据,以便处理器系统可以于并行式存储器中进行就地执行(Execute In Place,XIP)的能力。反之,串行式存储器因通常作为数据备份之用,如一般的数据高速缓存(Data Flash)、硬盘(Hard Disc)等,由于每次读取的数据大小是限制于一个区块(Block)大小,因此,无法提供处理器系统进行就地执行的能力。嵌入式系统通常具有至少一系统存储器,与一区块储存装置,用以储存可执行映像文件(Executable Image)。由于区块储存装置无法提供就地执行的能力,因此,当欲执行储存于区块储存装置的可执行映像文件时,必须将可执行映像文件从区块储存装置复制至系统存储器中,然后,将中央处理单元的程序计数器指定到系统存储器中相应可执行映像文件的地址,方可正确地执行。类似地,当嵌入式系统开机时,必须透过一开机载入程序(BootLoader)将储存于区块储存装置中的操作系统映像文件复制至系统存储器中。值得注意的是,开机载入程序必须依据操作系统映像文件的起始地址来决定其复制至系统存储器中的寻址位置,以及开始执行的寻址位置,如此,才能正确启动执行操作系统。由于不同语系、相关附加软件、与驱动程序将会影响操作系统映像文件的大小,因此,为了达到最大化系统存储器的使用率的目的,操作系统映像文件的起始地址必须随着操作系统映像文件的大小而调整。此外,若嵌入式系统所配备的系统存储器的大小改变时,操作系统映像文件的起始地址也必须随着变动。由于现有嵌入式系统的开机机制必须将操作系统映像文件的起始地址写死于开机载入程序中,使得开机载入程序与操作系统映像文件的相依性太高,并无法独立进行开发。当操作系统映像文件的版本改变或是嵌入式系统的系统存储器扩充之后,必须花费额外的作业与时间来更新相应的开机载入程序。此外,在开机载入程序与操作系统映像文件间亦存在版本控管的问题。由于现有开机机制亦缺乏有效的版本验证能力,使得嵌入式系统运作时的稳定度与可靠度受到极大的危害。
技术实现思路
有鉴于此,本专利技术是用以提供来解决前述开机问题。因此,本专利技术的目的为提供一种可以提供动态开机的系统与方法。本专利技术的另一目的为提供一种操作系统映像文件建构方法。本专利技术提供一种动态开机系统,适用于一嵌入式系统。动态开机系统包括一存储器、一区块储存装置、与一开机载入程序。区块储存装置至少储存一可执行映像文件,如操作系统映像文件、与一开机信息文件。其中开机信息文件至少记录可执行映像文件于区块储存装置中的一可执行映像文件位置、相应可执行映像文件的一可执行映像文件长度、与可执行映像文件需写入存储器的一写入开始位置。当嵌入式系统开机时,开机载入程序由区块储存装置读取开机信息文件,依据开机信息文件中记录的可执行映像文件位置与可执行映像文件长度读取可执行映像文件,并依据开机信息文件中记录的写入开始位置将可执行映像文件复制至存储器。本专利技术所述动态开机系统,更包括一开机信息产生模块,用以解读一封装设定文件,从而得到开机信息文件。其中,封装设定文件是用以设定一可执行文件于存储器中的一执行位置,并依据封装设定文件将可执行文件封装为可执行映像文件。本专利技术所述动态开机系统,开机载入程序更验证开机信息文件中记录的一签名信息,且当签名信息的验证不通过时,停止将可执行映像文件复制至存储器。本专利技术所述动态开机系统,开机载入程序更验证开机信息文件中记录的一总合检查值(Checksum),且当总合检查值的验证不通过时,停止将可执行映像文件复制至存储器。本专利技术所述动态开机系统,开机载入程序更检查开机信息文件中记录的一版本信息,且当版本信息不符合一既定版本时,停止将可执行映像文件复制至存储器。本专利技术所述动态开机系统,该可执行映像文件为一操作系统映像文件。本专利技术另提供一种动态开机方法,首先,由一区块储存装置读取一开机信息文件。其中,开机信息文件至少记录一可执行映像文件于区块储存装置中的一可执行映像文件位置、相应可执行映像文件的一可执行映像文件长度、与可执行映像文件需写入一存储器的一写入开始位置。接着,依据开机信息文件中记录的可执行映像文件位置与可执行映像文件长度读取可执行映像文件,并依据开机信息文件中记录的写入开始位置将可执行映像文件复制至存储器。本专利技术所述动态开机方法,更包括解读一封装设定文件以得到开机信息文件,且依据封装设定文件设定一可执行文件于存储器中的一执行位置,并将可执行文件封装为可执行映像文件。本专利技术所述动态开机方法,更包括验证开机信息文件中记录的一签名信息,且当签名信息的验证不通过时,停止将可执行映像文件复制至存储器。本专利技术所述动态开机方法,更包括验证开机信息文件中记录的一总合检查值,且当总合检查值的验证不通过时,停止将可执行映像文件复制至存储器。本专利技术所述动态开机方法,更包括检查开机信息文件中记录的一版本信息,且当版本信息不符合一既定版本时,停止将可执行映像文件复制至存储器。本专利技术所述动态开机方法,该可执行映像文件包括一操作系统映像文件。依据本专利技术一实施例的操作系统映像文件建构方法,首先,产生相应一嵌入式系统的一系统配置文件,其中系统配置文件指定至少一特征。接着,依据系统配置文件与一制作文件(Makefile)编译连接相应特征需要的原始程序代码与链接库文件,且依据编译过的原始程序代码、链接库文件、与一封装设定文件产生一操作系统映像文件。之后,解读封装设定文件,从而得到一开机信息文件,其中开机信息文件至少记录操作系统映像文件于一区块储存装置中的一操作系统映像文件位置、相应操作系统映像文件的一操作系统映像文件长度、与操作系统映像文件需写入一存储器的一写入开始位置。本专利技术上述方法可以透过程序代码方式收录于实体介质中。当程序代码被机器载入且执行时,机器变成用以实行本专利技术的装置。本专利技术的技术效果是a、将可运用的RAM的有效空间最大化。B、OS的开机地址可以为非固定地址,因此OS的开发与Bootloader的开发程序可以脱钩,没有任何相依性。C、可以方便验证即将烧录的OS影像文件是否合法,避免误烧到不合法的版本。D、如果误烧到不合法的版本,也可以在开机阶段拦阻其开机程序。附图说明图1为一示意图是显示依据本专利技术实施例的动态开机系统;图2为一示意图是显示依据本专利技术实施例的可执行映像文件产生方法;图3为一示意图是显示依据本专利技术实施例的开机信息文件产生方法本文档来自技高网
...

【技术保护点】
一种动态开机系统,适用于一嵌入式系统,其特征在于所述动态开机系统包括:一存储器;一区块储存装置,至少储存一可执行映像文件与一开机信息文件,其中该开机信息文件至少记录该可执行映像文件于该区块储存装置中的一可执行映像文件位置、相 应该可执行映像文件的一可执行映像文件长度、与该可执行映像文件需写入该存储器的一写入开始位置;以及一开机载入程序,用以当该嵌入式系统开机时,由该区块储存装置读取该开机信息文件,依据该开机信息文件中记录的该可执行映像文件位置与该可执行映 像文件长度读取该可执行映像文件,并依据该开机信息文件中记录的该写入开始位置将该可执行映像文件复制至该存储器。

【技术特征摘要】
1.一种动态开机系统,适用于一嵌入式系统,其特征在于所述动态开机系统包括一存储器;一区块储存装置,至少储存一可执行映像文件与一开机信息文件,其中该开机信息文件至少记录该可执行映像文件于该区块储存装置中的一可执行映像文件位置、相应该可执行映像文件的一可执行映像文件长度、与该可执行映像文件需写入该存储器的一写入开始位置;以及一开机载入程序,用以当该嵌入式系统开机时,由该区块储存装置读取该开机信息文件,依据该开机信息文件中记录的该可执行映像文件位置与该可执行映像文件长度读取该可执行映像文件,并依据该开机信息文件中记录的该写入开始位置将该可执行映像文件复制至该存储器。2.根据权利要求1所述的动态开机系统,其特征在于更包括一开机信息产生模块,用以解读一封装设定文件,从而得到该开机信息文件。3.根据权利要求2所述的动态开机系统,其特征在于该封装设定文件是用以设定一可执行文件于该存储器中的一执行位置,并依据该封装设定文件将该可执行文件封装为该可执行映像文件。4.根据权利要求1所述的动态开机系统,其特征在于该开机载入程序更验证该开机信息文件中记录的一签名信息,且当该签名信息的验证不通过时,停止将该可执行映像文件复制至该存储器。5.根据权利要求1所述的动态开机系统,其特征在于该开机载入程序更验证该开机信息文件中记录的一总合检查值,且当该总合检查值的验证不通过时,停止将该可执行映像文件复制至该存储器。6.根据权利要求1所述的动态开机系统,其特征在于该开机载入程序更检查该开机信息文件中记录的一版本信息,且当该版本信息不符合一既定版本时,停止将该可执行映像文件复制至该存储器。7.根据权利要求1所述的动态开机系统,其特征在于该可执行映像文件为一操作系统映像文件。8.一种动态开机方法,适用于一嵌入式系统,其特征在于所述动态开机方法包括下列步骤由一区块储存装置读取一开机信息文件,其中该开机信息文件至少记录一可执行映像文件于该区块储存装置中的一可执行映像文件位置...

【专利技术属性】
技术研发人员:陈昭宏
申请(专利权)人:光宝科技股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1