存储设备启动系统的方法及存储设备技术方案

技术编号:10286551 阅读:318 留言:0更新日期:2014-08-06 11:42
本发明专利技术公开一种存储设备启动系统的方法及存储设备,其方法包括:对存储设备进行分区,至少分为系统分区和若干数据块,将内核镜像文件存放在所述系统分区,将引导加载程序存放并备份在若干数据块中;通过判断找到并执行正确的引导加载程序,通过所述正确的引导加载程序加载并执行内核镜像文件,启动操作系统。本发明专利技术将存储设备分为系统分区、主引导记录区和若干数据块,将引导加载程序存放并备份在若干数据块中,保证了引导加载程序的正确性,从而提高了引导加载程序加载系统分区中内核镜像文件的成功率,让存储设备启动系统的可靠性更高。

【技术实现步骤摘要】
【专利摘要】本专利技术公开一种存储设备启动系统的方法及存储设备,其方法包括:对存储设备进行分区,至少分为系统分区和若干数据块,将内核镜像文件存放在所述系统分区,将引导加载程序存放并备份在若干数据块中;通过判断找到并执行正确的引导加载程序,通过所述正确的引导加载程序加载并执行内核镜像文件,启动操作系统。本专利技术将存储设备分为系统分区、主引导记录区和若干数据块,将引导加载程序存放并备份在若干数据块中,保证了引导加载程序的正确性,从而提高了引导加载程序加载系统分区中内核镜像文件的成功率,让存储设备启动系统的可靠性更高。【专利说明】存储设备启动系统的方法及存储设备
本专利技术涉及系统的引导启动领域,尤其涉及一种存储设备启动系统的方法及存储设备。
技术介绍
目前,传统的存储设备启动系统的方式是模拟NAND(闪存)启动的方式,把存储设备划分成多个数据块,每个数据块中存储不同的数据,比如第一个数据块存储Boot (引导程序),第二个数据块存储Linux kernel (Linux操作系统内核镜像文件),第三个数据块保存文件系统,如果按照这样的方式来把存储设备作为启动盘,会存在如果其中一个数据块中的数据损坏就无法启动的问题,特别是Boot(引导程序)数据块和Linux kerneKLinux操作系统内核镜像文件)数据块,其中一个损坏的话就无法启动了,不能保证系统启动的可靠性。再有就是由于没有采用MBR (主引导记录)加FAT (文件分配表)文件系统的管理方式,因此如果后续需要升级Linux kernel (Linux操作系统内核镜像文件)和文件系统内容的话又需要重新烧入数据,重新烧录数据是个比较麻烦的过程,不能在产品现场进行操作,给升级带来了很大的不便。
技术实现思路
本专利技术的主要目的在于提供一种存储设备启动系统的方法及存储设备,旨在提高存储设备启动系统时的可靠性。为了达到上述目的,本专利技术提出一种存储设备启动系统的方法,包括:Al对存储设备进行分区,至少分为系统分区和若干数据块,将内核镜像文件存放在所述系统分区,将引导加载程序存放并备份在若干数据块中;A2通过判断找到并执行正确的引导加载程序,通过所述正确的引导加载程序加载并执行内核镜像文件,启动操作系统。优选地,所述对存储设备进行分区的步骤还包括:对存储设备分一主引导记录区,将主引导记录文件存放在主引导记录区;将系统弓I导程序存放在所述系统分区。优选地,所述通过判断找到并执行正确的引导加载程序的步骤包括:判断所述若干数据块中一数据块的引导加载程序是否正确,如果正确,执行该数据块中正确的引导加载程序;否则,继续判断若干数据块中另一个数据块,直到找到引导加载程序正确的数据块,执行该正确的弓I导加载程序。 优选地,所述通过正确的弓I导加载程序加载并执行内核镜像文件的步骤包括:通过所述正确的引导加载程序,并根据所述主引导记录文件加载所述系统引导程序,通过所述系统弓I导程序加载所述内核镜像文件。优选地,所述步骤Al之后还包括:格式化所述系统分区,拷贝更新的系统引导程序和内核镜像文件到所述系统分区。本专利技术还提出一种启动系统的存储设备,包括:分区模块,用于对存储设备进行分区,至少分为系统分区和若干数据块,将内核镜像文件存放在所述系统分区,将引导加载程序存放并备份在若干数据块中;启动模块,用于通过判断找到并执行正确的引导加载程序,通过所述正确的引导加载程序加载并执行内核镜像文件,启动操作系统。优选地,所述分区模块还用于对存储设备分一主引导记录区,将主引导记录文件存放在主引导记录区;将系统引导程序存放在所述系统分区。优选地,所述启动模块包括:判断单元,用于判断所述若干数据块中一数据块的引导加载程序是否正确,如果正确,执行该数据块中正确的引导加载程序,否则,继续判断若干数据块中另一个数据块,直到找到引导加载程序正确的数据块,执行该正确的引导加载程序。优选地,所述启动模块还包括:加载单元,用于通过所述正确的弓I导加载程序,并根据所述主引导记录文件加载所述系统引导程序,通过所述系统引导程序加载所述内核镜像文件。优选地,所述分区模块之后还包括:更新模块,用于格式化所述系统分区,拷贝更新的系统引导程序和内核镜像文件到所述系统分区。本专利技术提出的一种存储设备启动系统的方法及存储设备,将存储设备分为系统分区、主引导记录区和若干数据块,将引导加载程序存放并备份在若干数据块中,保证了引导加载程序的正确性,从而提高了引导加载程序加载系统分区中内核镜像文件的成功率,让存储设备启动系统的可靠性更高。【专利附图】【附图说明】图1是本专利技术存储设备启动系统的方法第一实施例的流程示意图;图2是本专利技术存储设备启动系统的方法第一实施例中通过正确的引导加载程序加载并执行内核镜像文件,启动操作系统的流程示意图;图3是本专利技术存储设备升级系统的方法第二实施例的流程示意图;图4是本专利技术启动系统的存储设备第一实施例的结构示意图;图5是本专利技术启动系统的存储设备第一实施例中启动模块的结构示意图;图6是本专利技术升级系统的存储设备第二实施例的结构示意图。为了使本专利技术的技术方案更加清楚、明了,下面将结合附图作进一步详述。【具体实施方式】本专利技术实施例的解决方案主要是:将存储设备分为系统分区、主引导记录区和若干数据块,将引导加载程序存放并备份在若干数据块中,保证了引导加载程序的正确性,从而提高了引导加载程序加载系统分区中内核镜像文件的成功率,让存储设备启动系统的可靠性更高。如图1所示,本专利技术第一实施例提出一种存储设备启动系统的方法,包括:步骤S101,对存储设备进行分区,至少分为系统分区和若干数据块,将内核镜像文件存放在所述系统分区,将引导加载程序存放并备份在若干数据块中;本实施例中存储设备可以是SD卡、U盘等具有储存空间的电子设备,在存放数据时,首先对存储设备进行分区,分为系统分区、主引导记录区和若干数据块,将需启动的操作系统的内核镜像文件、系统引导程序(UBOOT)和文件分配表(FAT)存放在所述系统分区,使用包含文件分配表(FAT)的系统分区的目的是让本实施例既可以在windows操作系统下使用也可以在Linux操作系统下使用,使本实施例更加灵活实用。将主引导记录文件(MBR)存放在主引导记录区,将引导加载程序(BOOT)存放并备份在若干数据块中,备份的若干数据块中每一个数据块的数据结构包括版本信息、校验码、有效长度和程序主体:版本信息是依据数据块数据的大小而定,数据越大则该数据块的版本越新,当下次启动系统时,会首先选择判断最新版本的数据块,但当数据块版本信息为OXFF时,则表示此数据块无效,会跳过此数据块;校验码用于验证读取的数据块的程序是否正确,如果多次读取该数据块的程序不正确,则将该数据块的版本信息改为0XFF,当下次进行读取数据块时,直接跳过该数据块;有效长度用于存储数据块程序总的大小信息,可以根据该大小信息与正确的数据块的大小信息进行比对,从而计算该数据块的校验码;程序主体存储该数据块的引导加载程序(BOOT)。步骤S102,通过判断找到并执行正确的引导加载程序,通过所述正确的引导加载程序加载并执行内核镜像文件,启动操作系统。判断备份的若干数据块中一数据块的引导加载程序(BOOT)是否正确,判断过程为:根据该数据块的有效本文档来自技高网
...

【技术保护点】
一种存储设备启动系统的方法,其特征在于,包括:A1对存储设备进行分区,至少分为系统分区和若干数据块,将内核镜像文件存放在所述系统分区,将引导加载程序存放并备份在若干数据块中;A2通过判断找到并执行正确的引导加载程序,通过所述正确的引导加载程序加载并执行内核镜像文件,启动操作系统。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈浩
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1