CN107656765A - 一种设备初始化的方法、系统及终端设备 - Google Patents
一种设备初始化的方法、系统及终端设备 Download PDFInfo
- Publication number
- CN107656765A CN107656765A CN201710774235.XA CN201710774235A CN107656765A CN 107656765 A CN107656765 A CN 107656765A CN 201710774235 A CN201710774235 A CN 201710774235A CN 107656765 A CN107656765 A CN 107656765A
- Authority
- CN
- China
- Prior art keywords
- file
- kernel
- root
- check value
- backup
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明适用于嵌入式技术领域,提供了一种设备初始化的方法、系统及终端设备,所述方法包括:当内核文件和根文件正常时,根据内核文件和根文件执行设备初始化;当内核文件和根文件异常时,若备份的内核文件、根文件和应用程序分区文件正常时,根据备份的内核文件、根文件和应用程序分区文件执行设备初始化;若备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据升级文件执行设备初始化。本发明可以根据备份的内核文件、根文件和应用程序分区文件或者服务器传输的升级文件,进行设备初始化,避免了当内核文件和根文件异常时,需要拆装设备的情况,提高了修复的效率。
Description
技术领域
本发明属于嵌入式技术领域,尤其涉及一种设备初始化的方法、系统及终端设备。
背景技术
随着社会的发展和技术的进步,嵌入式设备得到了越来越广泛的应用。
现有技术中,当嵌入式设备上(例如,摄像机、云台)的程序(包括内核、根文件系统和应用程序)由于被恶意篡改、意外破坏或自身程序漏洞被触发导致执行异常时,导致嵌入式设备无法正常启动,所有功能失效,断电重启也无法恢复,设备处于瘫痪状态。此时不能通过普通升级方式来更新程序修复故障,必须将设备拆除,通过特殊升级方式对设备重新烧写最新程序,然后再重新安装才能使设备继续工作。当嵌入式设备安装在高速公路等较高的地方时,拆装安装设备有时还需要用到升降机,浪费时间和资源,修复效率极其低下。
发明内容
有鉴于此,本发明实施例提供了一种设备初始化的方法、系统及终端设备,以解决现有技术中当设备操作系统的内核文件和根文件被破坏时,设备无法正常启动,需要拆装设备进行修复,造成时间和资源的浪费,并且修复效率极其低下的问题。
本发明实施例的第一方面提供了一种设备初始化的方法,包括:
进入初始引导程序,检测操作系统的内核文件和根文件的文件状态;
当所述内核文件和所述根文件正常时,根据所述内核文件和所述根文件执行设备初始化;
当所述内核文件和所述根文件异常时,检测备份的内核文件、根文件和应用程序分区文件的文件状态;
当所述备份的内核文件、根文件和应用程序分区文件正常时,根据所述备份的内核文件、根文件和应用程序分区文件执行设备初始化;
当所述备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据所述升级文件执行设备初始化。
本发明实施例的第二方面提供了一种设备初始化的系统,包括:
第一检测模块,用于进入初始引导程序,检测操作系统的内核文件和根文件的文件状态;
第一初始模块,用于当所述内核文件和所述根文件正常时,根据所述内核文件和所述根文件执行设备初始化;
第二检测模块,用于当所述内核文件和所述根文件异常时,检测备份的内核文件、根文件和应用程序分区文件的文件状态;
第二初始模块,用于当所述备份的内核文件、根文件和应用程序分区文件正常时,根据所述备份的内核文件、根文件和应用程序分区文件执行设备初始化;
第三初始模块,用于当所述备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据所述升级文件执行设备初始化。
本发明实施例的第三方面提供了一种嵌入式设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
本发明实施例与现有技术相比存在的有益效果是:本实施例通过检测操作系统的内核文件和根文件是否被破坏,当内核文件和根文件没有被破坏时,根据内核文件和根文件执行设备初始化,当内核文件和根文件被破坏时,检测备份的内核文件、根文件和应用程序分区文件是否被破坏,当备份的内核文件、根文件和应用程序分区文件正常时,根据备份的内核文件、根文件和应用程序分区文件执行设备初始化,当备份的内核文件、根文件和应用程序分区文件被破坏时,接收升级文件,并根据升级文件执行设备初始化,从而有效避免了当操作系统的内核文件和根文件被破坏时,需要拆装设备的情况的发生,有效减少了时间和资源的浪费,并且提高了修复的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的设备初始化的方法的实现流程图;
图2是本发明一个实施例提供的图1中步骤S101的具体实现流程图;
图3是本发明一个实施例提供的图1中步骤S103的具体实现流程图;
图4是本发明一个实施例提供的图1中步骤S105的具体实现流程图;
图5是本发明一个实施例提供的设备初始化的系统的结构示意图图;
图6是本发明一个实施例提供的图5中的第一检测模块的结构示意图;
图7是本发明一个实施例提供的嵌入式设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
本发明的说明书和权利要求书及上述附图中的术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含一系列步骤或单元的过程、方法或系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。此外,术语“第一”、“第二”和“第三”等是用于区别不同对象,而非用于描述特定顺序。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例1:
图1示出了本发明的一个实施例提供的设备初始化的方法的实现流程,其过程详述如下:
在步骤S101中,进入初始引导程序,检测操作系统的内核文件和根文件的文件状态。
在本实施例中,所述初始引导程序可以为U-Boot(Universal Boot Loader,引导加载程序),所述操作系统可以为Linux系统。
内核文件为kernel文件(操作系统内核),根文件包括rootfs文件(RootFileSystem,根文件系统)。
在本实施例中,进入初始引导程序后,检测保存在Flash中的运行分区中的内核文件和根文件。
需要说明的是,内核文件、根文件和应用程序分区文件一般会在设备的Flash中存储两份,一份存储在运行分区,另一份存储在备份分区。设备初始化时执行运行分区的程序。
在本实施例中,文件状态包括正常和异常,其中,异常为内核文件和根文件由于被恶意篡改、意外破坏或自身程序漏洞被触发导致无法正常运行。
在步骤S102中,当所述内核文件和所述根文件正常时,根据所述内核文件和所述根文件执行设备初始化。
在本实施例中,当检测出内核文件和根文件正常时,设备根据保存在Flash的运行分区中的内核文件和根文件执行初始化,初始化后的设备可以正常工作。
在步骤S103中,当所述内核文件和所述根文件异常时,检测备份的内核文件、根文件和应用程序分区文件的文件状态。
在本实施例中,当检测出内核文件和根文件存在异常时,设备开始检测备份的内核文件、根文件和应用程序分区文件的是否存在异常。备份的内核文件、根文件和应用程序分区文件可以保存在Flash的备份分区中。
在步骤S104中,当所述备份的内核文件、根文件和应用程序分区文件正常时,根据所述备份的内核文件、根文件和应用程序分区文件执行设备初始化。
在本实施例中,当检测出存储在备份分区的备份的内核文件、根文件和应用程序分区文件正常时,将备份的内核文件、根文件和应用程序分区文件拷贝至运行分区并覆盖之前保存的原始的内核文件和根文件,设备此时再执行运行分区中的程序进行初始化。
在步骤S105中,当所述备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据所述升级文件执行设备初始化。
在本实施例中,当备份的内核文件、根文件和应用程序分区文件存在异常时,设备进入UDP(User Datagram Protocol,用户数据报协议)网络控制台,客户端发送控制命令至设备,设备接收控制命令并执行相应的动作,客户端发送传输升级文件命令至服务器,服务器接收传输升级文件命令,发送升级文件至相应设备,设备接收升级文件,根据升级文件进行初始化,设备初始化成功后,继续正常工作。
在本实施例中,设备进入UDP控制台后,在固定端口监测网络数据,可以接收客户端发送的控制命令,并执行相应的动作。
在本实施例中,控制命令包括搜索命令、配置命令和升级命令。
在本实施例中,升级文件包括最新版本的内核文件、根文件和应用程序分区文件。
本发明实施例通过在所述内核文件和所述根文件正常时,根据所述内核文件和所述根文件执行设备初始化;当所述内核文件和所述根文件异常,并且,所述备份的内核文件、根文件和应用程序分区文件正常时,根据所述备份的内核文件、根文件和应用程序分区文件执行设备初始化;当原始的和备份的文件均异常时,根据服务器传输的升级文件执行设备初始化,使设备继续正常工作,从而有效避免了当操作系统的内核文件和根文件被破坏时,需要拆装设备的情况发生,有效减少了时间和资源的浪费,并且提高了修复的效率。
如图2所示,在本发明的一个实施例中,图1所对应的实施例中的步骤S101具体包括:
在步骤S201中,通过差错检测法检测所述内核文件和根文件,得到第一校验值。
在一个实施例中,差错检测法包括奇偶校验法、校验和法和循环冗余校验法(Cyclic Redundancy Check,CRC)。
在本实施例中,设备每次进入初始引导程序后,采用差错检测法检测内核文件和根文件是否异常,得到第一校验值。
在步骤S202中,将所述第一校验值和预存的第一校验值进行比较。
在一个实施例中,所述预存的第一校验值为当所述内核文件和根文件更新时,采用差错检测法对更新的内核文件和根文件进行校验得到的。
在本实施例中,内核文件和根文件更新包括第一次烧写内核文件和根文件、升级内核文件和根文件,或者将备份的内核文件和根文件拷贝至运行分区。
当内核文件和根文件更新时,采用差错检测法检测内核文件和根文件,获得第一校验值,并将第一校验值保存至操作系统的分区中,覆盖操作系统分区中已有的预存的第一校验值。
以一个具体应用场景为例,当升级内核文件和根文件时,采用循环冗余校验法校验内核文件和根文件,获得第一校验值,并将第一校验值保存至系统分区,若系统分区已经有预存的第一校验值,将当前的第一校验值覆盖已有的预存的第一校验值。
通过判断第一校验值和预存在操作系统分区的第一校验值是否相等来确定内核文件和根文件的文件状态。
在步骤S203中,若所述第一校验值和预存的第一校验值相等,则确定所述内核文件和根文件的文件状态为正常。
在本实施例中,当设备判断出第一校验值和预存的第一校验值相等时,则可以确定内核文件和根文件不存在异常,是正常的。
在步骤S204中,若所述第一校验值和预存的第一校验值不相等,则确定所述内核文件和根文件的文件状态为异常。
在本实施例中,当判断出第一校验值和预存的第一校验值不相等时,则可以确定内核文件和根文件存在异常。
在本实施例中,通过比较内核文件和根文件的第一校验值和预存的第一校验值是否相等来判断内核文件和根文件是否正常,从而决定如何初始化设备,有效避免了当内核文件和根文件异常时,直接进行设备初始化导致设备瘫痪的情况的发生。
如图3所示,在本发明的一个实施例中,图1所对应的实施例中的步骤S103具体包括:
在步骤S301中,通过差错检测法检测所述备份的内核文件、根文件和应用程序分区文件,得到第二校验值;
在本实施例中,当设备检测出内核文件和根文件异常时,采用差错检测法检测备份的内核文件、根文件和应用程序分区文件是否异常,得到第二校验值。
在步骤S302中,将所述第二校验值和预存的第二校验值进行比较;
在一个实施例中,预存的第二校验值为当备份的内核文件、根文件和应用程序分区文件更新时,采用差错检测法对更新的内核文件、根文件和应用程序分区文件进行校验得到的。
在本实施例中,备份的内核文件、根文件和应用程序分区文件更新包括第一次烧写备份的内核文件、根文件和应用程序分区文件,或者,升级备份的内核文件、根文件和应用程序分区文件。
在本实施例中,当备份的内核文件、根文件和应用程序分区文件更新时,采用差错检测法检测备份的内核文件、根文件和应用程序分区文件,获得第二校验值,并将第二校验值保存至操作系统分区中,覆盖操作系统分区中已有的预存的第二校验值。
以一个具体应用场景为例,当升级备份的内核文件、根文件和应用程序分区文件时,采用循环冗余校验法校验备份的内核文件、根文件和应用程序分区文件,获得第二校验值,并将第二校验值保存至系统分区,若系统分区已经有预存的第二校验值,校验值覆盖已有的预存的第二校验值。
在本实施例中,通过判断第二校验值和预存在操作系统分区的第二校验值是否相等来确定备份的内核文件、根文件和应用程序分区文件的文件状态。
在步骤S303中,若所述第二校验值和预存的第二校验值相等,则确定所述备份的内核文件、根文件和应用程序分区文件的文件状态为正常。
将备份的内核文件、根文件和应用程序分区文件拷贝至运行分区以便于根据备份的内核文件、根文件和应用程序分区文件执行设备的初始化。
在步骤S304中,若所述第二校验值和预存的第二校验值不相等,则确定所述备份的内核文件、根文件和应用程序分区文件的文件状态为异常。
在本实施例中,通过比较内核文件和根文件的第二校验值和预存的第二校验值是否相等来判断备份的内核文件、根文件和应用程序分区文件是否正常。
如图4所示,在本发明的一个实施例中,图1所对应的实施例中的步骤S105具体包括:
在步骤S401中,当接收到所述客户端发送的搜索命令时,将预存的网络参数发送至所述客户端。
在本实施例中,进入UDP网络控制台的设备,可以接收到客户端发送的搜索命令、配置命令和升级命令。
在本实施例中,预存的网络参数包括设备的类型、网络地址、网关和子网掩码和服务器网络地址,并且预存的网络参数预存在初始引导程序中的环境变量中。
在本实施例中,当进入UDP网络控制台的设备接收到搜索命令后,发送预存的网络参数至所述客户端,客户端接收并存储预存的网络参数。
在步骤S402中,当接收到所述客户端发送的配置命令时,则根据所述配置命令修改所述初始引导程序中的环境变量,所述配置命令为所述客户端检测到现场实际网络参数与所述预存的网络参数不相同时发送的,其中,所述现场实际网络参数为所述设备实际的网络参数。
在本实施例中,客户端检测设备的现场实际网络参数,并存储检测到的现场实际网络参数,判断预存的网络参数和现场实际网络参数是否相同,当客户端判断出预存的网络参数和现场实际网络参数不相同时,客户端发送配置命令至设备,设备根据配置命令修改初始引导程序中的环境变量,完成升级前的准备工作。
在本实施例中,配置命令可以为U-Boot命令。
在本实施例中,初始引导程序中的环境变量可以为U-Boot环境变量。
在本实施例中,环境变量包括执行自动启动的等候秒数,串口控制台的波特率,传递给内核的启动参数,自动启动执行的命令,本地IP地址,以太网接口掩码,以太网接口的MAC(Media Access Control,硬件地址)地址和服务器端的网络地址。
以一个具体应用场景为例,客户端检测出设备的网络地址和预存在U-Boot环境变量的网络地址不相同,则客户端发送U-Boot命令,设备接收U-Boot命令,修改U-Boot环境变量中的网络地址。
在步骤S403中,当接收到所述客户端发送的升级命令时,获取所述服务器传输的升级文件。
在本实施例中,当设备完成升级前的准备工作后,客户端便发送升级命令至设备,发送传输升级文件命令至服务器,服务器接收到传输升级文件命令后,将升级文件发送至设备,设备接收升级命令和升级文件,将升级文件保存至操作系统的备份分区,检查升级文件,当升级文件没有错误时,拷贝升级文件至运行分区,根据运行分区的升级文件执行设备初始化。
在本实施例中,通过客户端和服务器对设备进行远程升级时,不会对设备参数分区的内容进行修改,用户无需重新设置,节省了时间,提高了工作效率,其中,设备参数分区的内容包括图像的分辨率、ISP(Image Signal Processor,图像处理)参数、视频的帧率和视频的码率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
实施例2:
如图5所示,本发明的一个实施例提供的设备初始化的系统100,用于执行图1所对应的实施例中的方法步骤,其包括:
第一检测模块110,用于进入初始引导程序,检测操作系统的内核文件和根文件的文件状态;
第一初始模块120,用于当所述内核文件和所述根文件正常时,根据所述内核文件和所述根文件执行设备初始化;
第二检测模块130,用于当所述内核文件和所述根文件异常时,检测备份的内核文件、根文件和应用程序分区文件的文件状态;
第二初始模块140,用于当所述备份的内核文件、根文件和应用程序分区文件正常时,根据所述备份的内核文件、根文件和应用程序分区文件执行设备初始化;
第三初始模块150,用于当所述备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据所述升级文件执行设备初始化。
如图6所示,在本发明的一个实施例中,图5所对应的实施例中的第一检测模块110还包括用于执行图2所对应的实施例中的方法步骤的结构,具体包括:
第一校验单元111,用于通过差错检测法检测所述内核文件和根文件,得到第一校验值;
第一判断单元112,用于将所述第一校验值和预存的第一校验值进行比较;
第一处理单元113,用于若所述第一校验值和预存的第一校验值相等,则确定所述内核文件和根文件的文件状态为正常;
第二处理单元114,用于若所述第一校验值和预存的第一校验值不相等,则确定所述内核文件和根文件的文件状态为异常。
在一个实施例中,所述预存的第一校验值为当所述内核文件和根文件更新时,采用差错检测法对更新的所述内核文件和根文件进行校验得到的。
在一个实施例中,图5所对应的实施例中的第二检测模块130还包括用于执行图3所对应的实施例中的方法步骤的结构,具体包括:
第二校验单元,用于通过差错检测法检测所述备份的内核文件、根文件和应用程序分区文件,得到第二校验值;
第二判断单元,用于将所述第二校验值和预存的第二校验值进行比较;
第三处理单元,用于若所述第二校验值和预存的第二校验值相等,则确定所述备份的内核文件、根文件和应用程序分区文件的文件状态为正常;
第四处理单元,用于若所述第二校验值和预存的第二校验值不相等,则确定所述备份的内核文件、根文件和应用程序分区文件的文件状态为异常。
在一个实施例中,图5所对应的实施例中的第三初始模块150还包括用于执行图4所对应的实施例中的方法步骤的结构,具体包括:
发送单元,用于当接收到所述客户端发送的搜索命令时,将预存的网络参数发送至所述客户端;
配置单元,用于当接收到所述客户端发送的配置命令时,则根据所述配置命令修改所述初始引导程序中的环境变量,所述配置命令为所述客户端检测到现场实际网络参数与所述预存的网络参数不相同时发送的,其中,所述现场实际网络参数为所述设备实际的网络参数;
获取文件单元,用于当接收到所述客户端发送的升级命令时,获取所述服务器传输的升级文件。
在一个实施例中,设备初始化的系统100还包括其他功能模块/单元,用于实现实施例1中各实施例中的方法步骤。
实施例3:
本发明实施例还提供了一种嵌入式设备7,包括处理器70、存储器71以及存储在存储器71中并可在处理器70上运行的计算机程序72,所述处理器70执行所述计算机程序时实现如实施例1中所述的各实施例中的步骤,例如图1所示的步骤S101至步骤S105。或者,所述处理器70执行所述计算机程序时实现如实施例2中所述的各装置实施例中的各模块的功能,例如图4所示的模块110至150的功能。
嵌入式设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述嵌入式设备7可包括,但不仅限于,处理器70、存储器71。例如所述嵌入式设备7还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述嵌入式设备7的内部存储单元,例如嵌入式设备7的硬盘或内存。所述存储器71也可以是所述嵌入式设备7的外部存储设备,例如所述终端设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括嵌入式设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述嵌入式设备7所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
实施例4:
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现如实施例1中所述的各实施例中的步骤,例如图1所示的步骤S101至步骤S105。或者,所述计算机程序被处理器执行时实现如实施例2中所述的各装置实施例中的各模块的功能,例如图5所示的模块110至150的功能。
所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例系统中的模块或单元可以根据实际需要进行合并、划分和删减。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种设备初始化的方法,其特征在于,包括:
进入初始引导程序,检测操作系统的内核文件和根文件的文件状态;
当所述内核文件和所述根文件正常时,根据所述内核文件和所述根文件执行设备初始化;
当所述内核文件和所述根文件异常时,检测备份的内核文件、根文件和应用程序分区文件的文件状态;
当所述备份的内核文件、根文件和应用程序分区文件正常时,根据所述备份的内核文件、根文件和应用程序分区文件执行设备初始化;
当所述备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据所述升级文件执行设备初始化。
2.如权利要求1所述的设备初始化的方法,其特征在于,所述检测操作系统的内核文件和根文件的文件状态,包括:
通过差错检测法检测所述内核文件和根文件,得到第一校验值;
将所述第一校验值和预存的第一校验值进行比较;
若所述第一校验值和预存的第一校验值相等,则确定所述内核文件和根文件的文件状态为正常;
若所述第一校验值和预存的第一校验值不相等,则确定所述内核文件和根文件的文件状态为异常。
3.如权利要求2所述的设备初始化的方法,其特征在于,所述预存的第一校验值为当所述内核文件和根文件更新时,采用差错检测法对更新的所述内核文件和根文件进行校验得到的。
4.如权利要求1所述的设备初始化的方法,其特征在于,所述检测备份的内核文件、根文件和应用程序分区文件的文件状态,包括:
通过差错检测法检测所述备份的内核文件、根文件和应用程序分区文件,得到第二校验值;
将所述第二校验值和预存的第二校验值进行比较;
若所述第二校验值和预存的第二校验值相等,则确定所述备份的内核文件、根文件和应用程序分区文件的文件状态为正常;
若所述第二校验值和预存的第二校验值不相等,则确定所述备份的内核文件、根文件和应用程序分区文件的文件状态为异常。
5.如权利要求1所述的设备初始化的方法,所述当所述备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据所述升级文件执行设备初始化,包括:
当接收到所述客户端发送的搜索命令时,将预存的网络参数发送至所述客户端;
当接收到所述客户端发送的配置命令时,则根据所述配置命令修改所述初始引导程序中的环境变量,所述配置命令为所述客户端检测到现场实际网络参数与所述预存的网络参数不相同时发送的,其中,所述现场实际网络参数为所述设备实际的网络参数;
当接收到所述客户端发送的升级命令时,获取所述服务器传输的升级文件。
6.一种设备初始化的系统,其特征在于,包括:
第一检测模块,用于进入初始引导程序,检测操作系统的内核文件和根文件的文件状态;
第一初始模块,用于当所述内核文件和所述根文件正常时,根据所述内核文件和所述根文件执行设备初始化;
第二检测模块,用于当所述内核文件和所述根文件异常时,检测备份的内核文件、根文件和应用程序分区文件的文件状态;
第二初始模块,用于当所述备份的内核文件、根文件和应用程序分区文件正常时,根据所述备份的内核文件、根文件和应用程序分区文件执行设备初始化;
第三初始模块,用于当所述备份的内核文件、根文件和应用程序分区文件异常时,在接收到客户端发送的控制命令后,获取服务器传输的升级文件,并根据所述升级文件执行设备初始化。
7.如权利要求6所述的设备初始化的系统,其特征在于,所述第一检测模块,包括:
第一校验单元,用于通过差错检测法检测所述内核文件和根文件,得到第一校验值;
第一判断单元,用于将所述第一校验值和预存的第一校验值进行比较;
第一处理单元,用于若所述第一校验值和预存的第一校验值相等,则确定所述内核文件和根文件的文件状态为正常;
第二处理单元,用于若所述第一校验值和预存的第一校验值不相等,则确定所述内核文件和根文件的文件状态为异常。
8.如权利要求7所述的设备初始化的系统,其特征在于,所述预存的第一校验值为当所述内核文件和根文件更新时,采用差错检测法对更新的所述内核文件和根文件进行校验得到的。
9.一种嵌入式设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710774235.XA CN107656765A (zh) | 2017-08-31 | 2017-08-31 | 一种设备初始化的方法、系统及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710774235.XA CN107656765A (zh) | 2017-08-31 | 2017-08-31 | 一种设备初始化的方法、系统及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107656765A true CN107656765A (zh) | 2018-02-02 |
Family
ID=61128789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710774235.XA Pending CN107656765A (zh) | 2017-08-31 | 2017-08-31 | 一种设备初始化的方法、系统及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107656765A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415733A (zh) * | 2018-02-06 | 2018-08-17 | 上海康斐信息技术有限公司 | 一种基于双镜像Flash的路由器的启动方法及装置 |
CN110502281A (zh) * | 2019-07-19 | 2019-11-26 | 浙江万胜智能科技股份有限公司 | 一种嵌入式设备启动Linux内核和文件系统的方法 |
CN111090443A (zh) * | 2019-11-20 | 2020-05-01 | 深圳市桑格尔科技股份有限公司 | 一种保障linux系统安全升级的方法、设备和存储介质 |
CN111522571B (zh) * | 2020-03-12 | 2024-02-09 | 深圳英飞拓仁用信息有限公司 | 设备升级方法、装置、终端设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751273A (zh) * | 2008-12-15 | 2010-06-23 | 中国科学院声学研究所 | 用于嵌入式系统的安全引导装置及方法 |
CN102722420A (zh) * | 2011-10-25 | 2012-10-10 | 中国电力科学研究院 | 一种自诊断终端、检测方法及远程维护系统 |
-
2017
- 2017-08-31 CN CN201710774235.XA patent/CN107656765A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751273A (zh) * | 2008-12-15 | 2010-06-23 | 中国科学院声学研究所 | 用于嵌入式系统的安全引导装置及方法 |
CN102722420A (zh) * | 2011-10-25 | 2012-10-10 | 中国电力科学研究院 | 一种自诊断终端、检测方法及远程维护系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415733A (zh) * | 2018-02-06 | 2018-08-17 | 上海康斐信息技术有限公司 | 一种基于双镜像Flash的路由器的启动方法及装置 |
CN110502281A (zh) * | 2019-07-19 | 2019-11-26 | 浙江万胜智能科技股份有限公司 | 一种嵌入式设备启动Linux内核和文件系统的方法 |
CN111090443A (zh) * | 2019-11-20 | 2020-05-01 | 深圳市桑格尔科技股份有限公司 | 一种保障linux系统安全升级的方法、设备和存储介质 |
CN111522571B (zh) * | 2020-03-12 | 2024-02-09 | 深圳英飞拓仁用信息有限公司 | 设备升级方法、装置、终端设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7991988B2 (en) | Communication device and firmware update method thereof | |
CN107656765A (zh) | 一种设备初始化的方法、系统及终端设备 | |
CN109086079B (zh) | 一种存储设备挂载管理方法及装置 | |
CN107608705A (zh) | 一种无线wifi视频设备及其固件升级方法 | |
EP4075309A1 (en) | Secure boot device | |
CN110780918B (zh) | 中间件容器处理方法、装置、电子设备及存储介质 | |
CN114116305A (zh) | 基于pfr的bios固件恢复方法、系统、终端及存储介质 | |
CN105468393A (zh) | 模块版本升级方法及终端装置 | |
WO2019080840A1 (zh) | 固件修复方法及装置 | |
CN109298877A (zh) | 游戏更新方法及系统、终端和计算机可读存储介质 | |
CN111273924A (zh) | 软件更新方法及装置 | |
CN111158945A (zh) | 内核故障处理方法、装置、网络安全设备和可读存储介质 | |
CN112925653B (zh) | 虚拟化群集扩容方法、相关设备及计算机可读存储介质 | |
CN113032183A (zh) | 系统管理方法、装置、计算机设备和存储介质 | |
CN111522571A (zh) | 设备升级方法、装置、终端设备及存储介质 | |
CN106933637A (zh) | 一种系统分区的修复方法及装置 | |
CN106506276A (zh) | 一种用于服务器的信息检测方法 | |
CN112104513A (zh) | 可视化软件负载方法、装置、设备及存储介质 | |
CN105282614B (zh) | 一种模块电视的升级方法、模块电视及升级系统 | |
CN111488306A (zh) | 攻防架构系统及攻防架构系统的搭建方法 | |
CN110989408A (zh) | 一种设备控制方法、装置、设备及可读存储介质 | |
CN106997430A (zh) | 防止linux服务设备被复制的方法和装置 | |
CN115374488B (zh) | 车载终端程序校验方法及装置 | |
CN112019527B (zh) | 一种嵌入式设备固定mac地址的设置方法及系统 | |
CN110719341B (zh) | 数据处理方法及装置、dhcp服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180202 |
|
RJ01 | Rejection of invention patent application after publication |