基于VxWorks系统的文件下载的保护方法和装置与流程

文档序号:14249217阅读:178来源:国知局
基于VxWorks系统的文件下载的保护方法和装置与流程

本发明涉及通信技术,尤其是涉及一种基于vxworks系统的文件下载的保护方法和装置。



背景技术:

vxworks操作系统是windriver公司设计的一款嵌入式实时操作系统,它能够提供了良好的可靠性和卓越的实时性,被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。

vxworks操作系统中,bootrom(无盘启动rom接口)是基于vxworks系统定制的一款bootloader,由windriver公司自己开发的专用于vxworks映像image文件的引导。当bootrom启动进行相关初始化后,运行到倒秒计数阶段时,串口输出到显示器以显示还剩下几秒开始下载image映像文件,倒秒计数到0后,根据bootline中的参数区,下载可加载的image映像文件到ram中,image映像再进行启动。

在bootrom运行到倒秒计数阶段时,在串口下可通过回车键、“m”字符或其他串口输入的字符停止倒秒计数的运行,一旦停止,bootrom代码进入到等待状态,不能自动继续执行下载vxworks映像image文件,操作人员通过输入设备输入“@”字符,才可以继续下载image文件。

为此,在bootrom启动运行过程中,经常由于人为误操作,或者串口其它干扰造成的字符在串口有输入,造成倒秒计数停止,bootrom进入到等待状态,不能自动下载image文件。



技术实现要素:

针对以上缺陷,本发明提供一种基于vxworks系统的文件下载的保护方法和装置,能够避免现有技术中串口误操作或其他干扰导致的bootrom进入到等待状态,不能自动下载image文件的缺陷。

第一方面,本发明提供的基于vxworks系统的文件下载的保护方法包括:在文件下载的倒秒计数阶段,从串口中读取字符串,判断读取的字符串的长度是否等于预设长度;

若是,则判断读取的字符串与预先设定的字符串是否相同;

若判断结果为不相同,则继续执行用于文件下载的倒秒计数。

可选地,所述方法还包括:

若判断结果相同,则暂停用于文件下载的倒秒计数。

可选地,所述从串口中读取字符串,包括:

bootrom无盘启动rom接口从串口中读取字符串。

可选地,所述从串口中读取字符串的步骤之前,所述方法还包括:

根据bootrom的启动程序,在bootrom运行到倒秒计数阶段通过输入装置预先设定字符串,并确定字符串的长度为预设长度。

可选地,判断读取的字符串的长度是否等于预设长度的步骤之后,所述方法还包括:

若读取的字符串的长度小于预设长度,则执行用于文件下载的倒秒计数。

可选地,判断读取的字符串的长度是否等于预设长度的步骤之后,所述方法还包括:

若读取的字符串的长度大于预设长度,则从读取的字符串的第一个字符开始获取预设长度的字符串;

相应地,判断读取的字符串与预先设定的字符串是否相同的步骤,包括:

判断获取预设长度的字符串与预先设定的字符串是否相同。

可选地,所述方法还包括:

判断从串口中读取的字符串是否属于人工输入的预设字符,若是,则执行用于下载vxworks系统映像文件的bootrom。

第二方面,本发明的一种基于vxworks系统的文件下载的保护装置,包括:

读取模块,用于在倒秒计数阶段,从串口中读取字符串;

第一判断模块,用于判断读取的字符串的长度是否等于预设长度;

第二判断模块,用于在第一判断模块确定读取的字符串的长度等于预设长度时,判断读取的字符串与预先设定的字符串是否相同;

处理模块,用于在第二判断模块在第二判断模块确定读取的字符串与预先设定的字符串不相同时,继续执行用于文件下载的倒秒计数。

可选地,所述装置还包括:

第三判断模块,用于判断从串口中读取的字符串是否属于人工输入的预设字符;

相应地,所述处理模块,还用于在第三判断模块确定从串口中读取的字符串属于人工输入的预设字符时,执行下载vxworks系统映像image文件的bootrom。

第三方面,本发明的一种操作系统,包括上述任一所述的装置。

根据以上技术方案,本发明的基于vxworks系统的文件下载的保护方法和装置,通过判断读取的字符串的长度等于预设长度时,再判断读取的字符串是否与预先设定的字符串相同,在结果不相同时,可继续执行倒秒计数,不停止vxworks系统映像文件的下载,进而避免现有技术中串口误操作或其他干扰导致的bootrom进入到等待状态,不能自动下载image文件的缺陷,保证vxworks系统的正常启动。

附图说明

通过参考附图会更加清楚的理解本发明的特征信息和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:

图1为本发明一实施例提供的基于vxworks系统的文件下载的保护方法的流程图;

图2和图3分别为本发明另一实施例提供的基于vxworks系统的文件下载的保护方法的流程图;

图4为本发明一实施例提供的基于vxworks系统的文件下载的保护装置的结构示意图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

为更好的理解本发明,以下实施例主要涉及嵌入式系统技术,提供一种基于vxworks系统的bootrom在运行到倒秒计数阶段的保护方法,避免人为或其它干扰导致bootrom停止在倒秒阶段,不能继续执行倒秒计数,无法保证vxworks系统映像文件的正常下载的问题。本实施例的vxworks系统映像文件指的是现有技术中提及的vxworks系统映像image文件。

如图1所示,图1示出了本发明一实施例提供的基于vxworks系统的文件下载的保护方法的流程示意图,本实施例的基于vxworks系统的文件下载的保护方法,包括:

步骤101、在文件下载的倒秒计数阶段,从串口中读取字符串。

举例来说,从串口中读取字符串可具体为:bootrom无盘启动rom接口从串口中读取字符串。

步骤102、判断读取的字符串的长度是否等于预设长度,若是,执行步骤103。否则,执行步骤103a。

步骤103、在步骤102的判断结果为是时,判断读取的字符串与预先设定的字符串是否相同,若不是,执行步骤104,否则,执行步骤104a。

步骤103a、若步骤102中判断读取的字符串的长度小于预设长度,则执行用于文件下载的倒秒计数。

步骤104、在步骤103的判断结果为不相同时,继续执行用于文件下载的倒秒计数。

步骤104a、在步骤103的判断结果为相同时,暂停用于文件下载的倒秒计数。

由此,本实施例的方法通过判断读取的字符串的长度等于预设长度时,再判断读取的字符串是否与预先设定的字符串相同,在结果不相同时,可继续执行倒秒计数,不停止vxworks系统映像文件的下载,进而避免现有技术中串口误操作或其他干扰导致的bootrom进入到等待状态,不能自动下载image文件的缺陷,保证vxworks系统的正常启动。

可选地,在前述图1所述的方法中,步骤101中的从串口中读取字符串的步骤之前,该方法还可包括下述的内容,即:根据bootrom的启动程序,在bootrom运行到倒秒计数阶段通过输入装置预先设定字符串,并确定字符串的长度为预设长度。

也就是说,上述的步骤101可具体为下述的图中未示出的步骤101’:

101’:根据bootrom的启动程序,在bootrom运行到倒秒计数阶段通过输入装置预先设定字符串,并确定字符串的长度为预设长度,进而在文件下载的倒秒计数阶段,从串口中读取字符串。

也就是说,基于bootrom本身的启动流程,引入预先设定字符串stringx、长度lenx两个概念,在bootrom进入倒秒计数阶段后,读取串口字符串,判断读取的字符串stringy长度是否为长度lenx,若是,则将读取stringy和stringx进行比较,如果相同则bootrom进入等待状态,如果不相同则倒秒继续执行直到计数为0,下载vxworks映像image文件。保证bootrom不受串口误操作或干扰,能够正常下载image文件,保证了系统的正常启动。

当然,如果读取的字符串的长度不足lenx个,则bootrom继续执行倒秒计数,直到计数为0,下载vxworks映像image文件。由此,在人为误操作或串口其它干扰下,在bootrom倒秒计数阶段只要输入的不是预订的长度lenx的字符串stringx,则bootrom倒秒不会停止,不会进入等待状态,会继续下载vxworks映像image文件,保证了系统的正常启动。

另外,如图2所示,在本实施例中,前述步骤102之后,图1所示的方法还可包括下述的步骤105和步骤106:

若步骤102中判断读取的字符串的长度大于预设长度,则执行下述的步骤105和106:

步骤105、若步骤102中判断读取的字符串的长度大于预设长度,则从读取的字符串的第一个字符开始获取预设长度的字符串;

106、判断获取预设长度的字符串与预先设定的字符串是否相同。

进而在步骤106的判断结果为不相同时,继续执行用于文件下载的倒秒计数。

在步骤106的判断结果为相同时,暂停用于文件下载的倒秒计数。

举例来说,可预先设定对比字符串,代号stringx,设定字符串的长度为lenx。

需要说明的是,stringx作为普通字符串,需要能在普通键盘介质上输入。

在倒秒计数阶段从串口读取字符串,判断读取的字符串个数是否是lenx个,若是,则将读到的字符串stringy和预先设定字符串stringx做对比,如果stringx和stringy相同,证明串口输入的字符串是正确的,此时倒秒计数强行停止,bootrom进入到等待状态。如果stringx和stringy有不相同,证明输入的字符串是错误的,可能是人为误操作或者其它干扰导致串口有异常字符串输入,倒秒计数继续,直到计数为0后,下载vxworks映像image文件。

由此,本实施例的方法利用在bootrom运行到倒秒计数阶段从串口读取lenx个字符,判断读到的字符串和预先设定的字符串是否相同,决定bootrom是否进入到等待状态,保证在倒秒计数阶段,串口有非法字符输入时,bootrom不受干扰能够继续下载vxworks映像image文件,保证系统的正常启动。

此外,在实际应用中,上述图1或图2所示的方法还包括下述的步骤:a101,如图3所示。

a101、判断从串口中读取的字符串是否属于人工输入的预设字符,若是,则执行a102;否则执行前述的步骤102。

a102、执行用于下载vxworks系统映像文件的bootrom。

否则,执行前述的步骤102。

例如,当bootrom运行到倒秒计数阶段时,从串口接收字符串。

如果能成功接收“@”字符并回车后,则bootrom下载vxworks映像image文件。

也就是说,在bootrom运行到倒秒阶段时,接收从串口输入的字符串后,判断是否和预期的字符串值相一致,如果一致,bootrom代码才会进入等待状态,如果不一致,倒秒计数的运行不会停止,倒秒计数到0后,自动下载vxworks系统映像image文件。这样避免了人为串口误操作或其它干扰导致串口接收到字符强制倒秒计数停止,bootrom进入到等待状态。

另外,如图4所示,图4示出了一种基于vxworks系统的文件下载的保护装置,该装置可包括:

读取模块41,用于在倒秒计数阶段,从串口中读取字符串;

第一判断模块42,用于判断读取的字符串的长度是否等于预设长度;

第二判断模块43,用于在第一判断模块确定读取的字符串的长度等于预设长度时,判断读取的字符串与预先设定的字符串是否相同;

处理模块44,用于在第二判断模块在第二判断模块确定读取的字符串与预先设定的字符串不相同时,继续执行用于文件下载的倒秒计数。当然,若处理模块44,用于在第二判断模块在第二判断模块确定读取的字符串与预先设定的字符串相同时,暂停用于文件下载的倒秒计数。

进一步地,处理模块44还用于在第一判断模块确定读取的字符串的长度小于预设长度,则执行用于文件下载的倒秒计数。

处理模块44还用于在第一判断模块确定读取的字符串的长度大于预设长度,则从读取的字符串的第一个字符开始获取预设长度的字符串;相应地,第二判断模块用于判断获取预设长度的字符串与预先设定的字符串是否相同。

在具体实现过程中,上述图4所示的装置还可包括下述的图中未示出的第三判断模块;该第三判断模块,用于判断从串口中读取的字符串是否属于人工输入的预设字符;

相应地,所述处理模块44,还用于在第三判断模块确定从串口中读取的字符串属于人工输入的预设字符时,执行下载vxworks系统映像image文件的bootrom。

为此,可本实施例主要是为了保证bootrom运行到倒秒计数阶段时,除非在串口输入预先设定的字符串外,都能正常运行到倒秒计数为0,自动下载vxworks映像image文件。

本实施例的文件下载的保护装置可执行前述任意实施例记载的文件下载的保护方法,参见上述描述,本实施例不再详述。

在实际应用中,本发明实施例还提供一种操作系统,该操作系统可包括上述任意实施例所述的装置。

在本发明中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“多个”指两个或两个以上,除非另有明确的限定。

虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1