CN109213517B - 基于VxWorks操作系统的多版本应用程序在线管理与切换系统 - Google Patents

基于VxWorks操作系统的多版本应用程序在线管理与切换系统 Download PDF

Info

Publication number
CN109213517B
CN109213517B CN201810876560.1A CN201810876560A CN109213517B CN 109213517 B CN109213517 B CN 109213517B CN 201810876560 A CN201810876560 A CN 201810876560A CN 109213517 B CN109213517 B CN 109213517B
Authority
CN
China
Prior art keywords
operating system
program
application program
vxworks
computer
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.)
Active
Application number
CN201810876560.1A
Other languages
English (en)
Other versions
CN109213517A (zh
Inventor
刘申豫
杜丙伟
董鹏伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Leihua Electronic Technology Research Institute Aviation Industry Corp of China
Original Assignee
Leihua Electronic Technology Research Institute Aviation Industry Corp of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Leihua Electronic Technology Research Institute Aviation Industry Corp of China filed Critical Leihua Electronic Technology Research Institute Aviation Industry Corp of China
Priority to CN201810876560.1A priority Critical patent/CN109213517B/zh
Publication of CN109213517A publication Critical patent/CN109213517A/zh
Application granted granted Critical
Publication of CN109213517B publication Critical patent/CN109213517B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种基于VxWorks操作系统的多版本应用程序在线管理与切换系统,属于嵌入式操作系统处理技术领域。该系统主要包括:上位机,所述上位机与下位机的操作系统进行通信,并提供人机交互界面控制下位机进行指定操作;下位机,包含FLASH存储器及搭载有所述VxWorks操作系统的处理器,所述处理器运行有TFFS文件系统、管理程序以及FTP服务端,所述管理程序用于响应所述上位机的请求,通过所述TFFS文件系统对烧录在所述FLASH存储器上的脚本文件以及多个应用程序进行管理,以及通过FTP服务端与上位机进行通信,其中,脚本文件用于从FLASH存储器上存储的多个应用程序中设置指定的应用程序作为默认启动程序。该系统能够用于对基于VxWorks操作系统内的多个版本应用程序的管理和切换,可以实现一机多能,增强了设备通用性。

Description

基于VxWorks操作系统的多版本应用程序在线管理与切换 系统
技术领域
本发明属于嵌入式操作系统处理技术领域,具体涉及一种基于VxWorks操作系统的多版本应用程序在线管理与切换系统。
背景技术
随着技术发展,嵌入式系统越来越复杂,由于硬件改版周期太长,成本太高,往往要求同一系统在不同使用场合需要实现不一样的功能,这就需要嵌入式系统加载运行不同功能的应用程序。VxWorks操作系统作为一款在工业控制、智能设备、航空航天等高实时性、高安全性领域的广泛使用的嵌入式操作系统,往往为了通用性在硬件设计上支持多种应用场合,在功能上可裁剪,在不同应用场景使用某些功能,因此应用程序根据应用场合不同而不同。传统的嵌入式系统进行程序升级需要使用仿真器进行,通常需要拆开设备机箱,需要专业人员携带设备到达现场,关闭设备拔出模块进行程序更新切换,对操作人员要求高,需要现场操作,耗时耗力成本非常高。另一方面,修改往往使用覆盖重写的方式,无法实现多个版本程序并存和灵活切换。
以往嵌入式系统多版本程序管理和切换使用仿真器进行覆盖烧写,存在以下主要缺点:
1)无法在线进行,需要打开设备取出板卡,系统必须停止工作;
2)需要专业设备,设备价格昂贵;
3)操作专业性较强,需要专业人员操作;
4)方法不具备通用性,对底层硬件设计依赖性强,针对不同的硬件设备需要进行改进;
5)使用覆盖方式,系统只能保存一个版本程序无法多版本程序并存;
6)操作环节多、时间长、流程复杂,极易出错。
发明内容
为了解决上述问题,本发明提供了一种基于VxWorks嵌入式实时操作系统的多版本应用程序在线管理和切换的系统,该系统能够用于各种带有大容量存储器且基于VxWorks的设备进行多个版本应用程序的管理和切换,可以实现一机多能,增强设备通用性,降低设备在不同使用条件下进行软件更改的成本提高便利性。
本发明提供的基于VxWorks操作系统的多版本应用程序在线管理与切换系统,主要包括:
上位机,所述上位机与下位机的操作系统进行通信,并提供人机交互界面控制下位机进行指定操作;
下位机,包含FLASH存储器及搭载有所述VxWorks操作系统的处理器,所述处理器运行有TFFS文件系统、管理程序以及FTP服务端,所述管理程序设置在VxWorks内核程序的入口处,用于响应所述上位机的请求,通过所述TFFS文件系统对烧录在所述FLASH存储器上的script脚本文件以及多个应用程序进行管理,以及通过FTP服务端与上位机进行通信,其中,所述script脚本文件用于从FLASH存储器上存储的多个应用程序中设置指定的应用程序作为默认启动程序。
优选的是,所述管理程序通过所述TFFS文件系统对烧录在所述FLASH存储器上的应用程序以及script脚本文件进行管理,包括:
增加或删除FLASH存储器上的应用程序;
修改script脚本指定默认启动程序名称;
控制所述处理器读取并加载所述FLASH存储器上的指定应用程序,关闭原先运行程序,实现应用程序在线切换。
优选的是,所述script脚本内设置有加载默认应用程序的命令,并将该script脚本的名称通过串口控制台添加到VxWorks操作系统。
优选的是,所述处理器运行的TFFS文件系统包括通过在生成VxWorks内核映像时在Kernel Configuration中增加TFFS组件以及DOSFs组件来实现。
优选的是,所述上位机通过以太网与下位机相连。
优选的是,所述管理程序通过绑定下位机的IP地址和端口号来完成与上位机的网络交互。
优选的是,所述FTP服务端包括通过在生成VxWorks操作系统时在KernelConfiguration中增加FTP组件,并设置为服务器模式来实现与上位机的通信。
本发明具有如下优点:
1、该系统具有很强的通用性,只要嵌入式系统有以太网接口、8MB外部存储设备并搭载VxWorks操作系统,可广泛应用于工业控制、智能设备、航空航天等领域;
2、无需专用设备,通过标准网口进行操作,普通电脑即可进行操作,节约设备成本;
3、操作流程简单,使用人机交互界面,智能操作,无需专业人员,降低人工成本;
4、在线操作,无需系统下电,不需要拆卸设备;
5、下位机控制程序对硬件透明,使用VxWorks标准API,移植简单;
6、内部可存储多个版本程序,同一个机器可通过切换程序版本适应不同的使用场合,实现一机多能,无缝切换。
本发明可用于各个领域基于VxWorks操作系统的嵌入式设备的程序升级、多版本程序管理和多版本程序切换,具有应用范围广、通用性高、成本低、操作简单等特点,适应现在技术发展趋势。通过以太网控制,可实现远程操作,既可以单独使用,也可以嵌入到复杂系统中作为一个功能模块使用。
附图说明
图1为按照本发明基于VxWorks操作系统的多版本应用程序在线管理与切换系统的一优选实施例的系统架构示意图。
图2为按照本发明图1所示实施例的上位机人机交互界面。
具体实施方式
为使本发明实施的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本发明一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面结合附图对本发明的实施例进行详细说明。
如图1所示,本发明基于VxWorks操作系统的多版本应用程序在线管理与切换系统主要包括:
上位机,所述上位机与下位机的操作系统进行通信,并提供人机交互界面以使用户能够控制下位机进行指定操作;
下位机,包含FLASH存储器及搭载有所述VxWorks操作系统的处理器,所述处理器运行有TFFS文件系统、管理程序以及FTP服务端,所述管理程序设置在VxWorks内核程序的入口处,用于响应所述上位机的请求,通过所述TFFS文件系统对烧录在所述FLASH存储器上的script脚本文件以及多个应用程序进行管理,以及通过FTP服务端与上位机进行通信,其中,所述script脚本文件用于从FLASH存储器上存储的多个应用程序中设置指定的应用程序作为默认启动程序。
需要说明的是,VxWorks内核程序为所述VxWorks操作系统启动时最先加载的程序,本实施例中,管理程序设置在VxWorks内核程序的入口处,即表示VxWorks操作系统启动时,将直接运行管理程序。可以理解的是,操作系统内核启动完毕后,通过script脚本文件自动加载默认启动的应用程序,而FLASH存储器中存储的多个应用程序又是通过FTP服务端预先烧录在FLASH存储器中的,并且,可以根据上位机控制指令,从FLASH存储器增加或删除应用程序,具体的,所述管理程序通过所述TFFS文件系统对烧录在所述FLASH存储器上的应用程序以及script脚本文件进行管理,包括:
增加或删除FLASH存储器上的应用程序;
修改script脚本指定默认启动程序名称;
控制所述处理器读取并加载所述FLASH存储器上的指定应用程序,关闭之前的运行程序,实现应用程序在线切换。
本发明中,上位机为带有以太网接口的PC机,电脑安装有相对应的上位机软件,上位机软件通过以太网对外通信。上位机使用QT集成开发环境开发,具有跨平台特性,既可以在Windows操作系统上运行,也可以在Linux操作系统上运行。上位机程序具有友好的人机交互界面,上位机通过socket与下位机进行TCP/IP通信,实现上位机指令的下发,并将下位机响应情况和应用程序信息上传。上位机实现了FTP客户端功能,用于进行VxWorks应用程序和内核映像程序的下载。
下位机部分需要在VxWorks内核映像上创建TFFS文件系统和FTP服务端,使用TFFS文件系统对应用程序以及script脚本文件进行管理,FTP服务端可以响应上位机的连接请求并接收传输的文件。另外在VxWorks内核映像中嵌入下位机应用程序,该程序主要用于进行上位机操作指令解析,并实现对文件的管理操作和在线切换。下位机部分内容完全建立于VxWorks操作系统之上,对硬件部分透明,因此可移植性强,移植简单。
本实施例中,所述script脚本内设置有加载默认应用程序的命令,并将该script脚本的名称通过串口控制台添加到VxWorks操作系统。所述处理器运行的TFFS文件系统包括通过在生成VxWorks内核映像时在Kernel Configuration中增加TFFS组件以及DOSFs组件来实现。所述FTP服务端包括通过在生成VxWorks操作系统时在Kernel Configuration中增加FTP组件,并设置为服务器模式来实现与上位机的通信。
上述script脚本、TFFS文件系统、FTP服务端及管理程序与VxWorks操作系统的具体关系为:
1、创建TFFS文件系统:首先在生成VxWorks内核映像时在Kernel Configuration中增加TFFS组件,根据实际硬件存储设备选择编译层;增加DOSFs组件,根据需要调整其他属性设置,生成内核映像。将内核映像下载至下位机内存运行,在串口控制台按顺序输入以下命令:“sysTFFSFormat();”、“usrTFFSConfig(0,0,"/TFFS0");”、“DOSFsDiskFormat("/TFFS0");”即可生成名为“/TFFS0”的文件系统,名字可根据需求变更。
2、创建基于VxWorks操作系统的FTP服务端:在生成VxWorks内核映像时在KernelConfiguration中增加FTP组件,并设置为服务器模式,根据需要调整其他属性设置,生成内核映像。将内核映像下载至下位机内存运行,然后烧写至文件系统,重新上电,bootrom启动时在串口控制台设置FTP用户名和密码信息。
3、设置VxWorks操作系统从脚本启动,生成VxWorks内核映像时,在KernelConfiguration中增加“kernel shell startup script”组件,定义INCLUDE_STARTUP_SCRIPT,生成VxWorks内核映像,bootrom启动时在串口控制台设置启动脚本文件的名称,系统将会在初始化完成后从TFFS文件系统加载并执行相应名称脚本文件中的shell命令。脚本文件中使用“ld”命令加载指定版本的应用程序,默认启动应用程序便加载至内存等待运行。
4.移植下位机管理程序:生成VxWorks内核映像时,嵌入下位机应用程序,在内核程序入口处创建下位机应用程序任务,管理程序首先绑定IP地址和端口号,然后创建socket并处于侦听状态,等待连接,程序进入等待状态,等待接收上位机指令;管理程序可以响应上位机命令进行网络连接;通过“copy”命令接收FTP传输的文件,并写入TFFS文件系统;使用“rm”命令进行指定的文件删除;修改script脚本指定默认启动程序名称,从而改变默认启动程序;通过“ld”命令加载指定应用程序,并通过“unldByNameAndPath”命令将原有应用程序卸载;通过“reboot”命令实现系统重启。
可以理解的是,根据上述描述的移植在下位机上的管理程序可以看出,上位机所提供相应的操作界面应当具有的按钮及界面显示。本实施例中,上位机程序实现:上位机程序使用QT集成开发环境进行开发,使用现有控件实现图形化人机交互界面,通过创建socket与下位机进行TCP/IP数据通信,通过与下位机协商好的数据组包和解包方法进行通信;创建FTP客户端,在与下位机网络连接时通过用户名和密码访问下位机FTP服务器端,建立连接。如图2所示给出了一个具体的人机交互界面的实施例:
1、程序管理,列出了FLASH存储器中烧录的内核映像(VxWorks)及版本V1.00;以及烧录的应用程序(DKM)及多个版本;
2、网络连接,其与下位机的连接关系为:嵌入式系统上电初始化完成后,创建FTP服务端,创建socket并处于侦听状态,下位机程序进入等待状态;打开上位机,上位机创建FTP客户端,创建socket,输入嵌入式系统IP地址与port号,点击连接,FTP客户端将根据内置用户名和密码访问嵌入式系统FTP服务端,socket发送握手信号进行连接,超过15秒连接失败上位机将跳出对话框提示。
3、程序更新,对应于管理程序的“copy”命令。
4、设为默认,对应于管理程序的修改script脚本指定默认启动程序名称,从而改变默认启动程序。
5、激活,对应于管理程序的“ld”命令。
6、删除,对应于管理程序的“rm”命令。
7、重启,对应于管理程序的“reboot”命令。
最后需要指出的是:以上实施例仅用以说明本发明的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (7)

1.基于VxWorks操作系统的多版本应用程序在线管理与切换系统,其特征在于,包括:
上位机,所述上位机与下位机的操作系统进行通信,并提供人机交互界面控制下位机进行指定操作;
下位机,包含FLASH存储器及搭载有所述VxWorks操作系统的处理器,所述处理器运行有TFFS文件系统、管理程序以及FTP服务端,所述管理程序设置在VxWorks内核程序的入口处,用于响应所述上位机的请求,通过所述TFFS文件系统对烧录在所述FLASH存储器上的script脚本文件以及多个应用程序进行管理,以及通过FTP服务端与上位机进行通信,其中,所述script脚本文件用于从FLASH存储器上存储的多个应用程序中设置指定的应用程序作为默认启动程序。
2.如权利要求1所述的基于VxWorks操作系统的多版本应用程序在线管理与切换系统,其特征在于,所述管理程序通过所述TFFS文件系统对烧录在所述FLASH存储器上的应用程序以及script脚本文件进行管理,包括:
增加或删除FLASH存储器上的应用程序;
修改script脚本指定默认启动程序名称;
控制所述处理器读取并加载所述FLASH存储器上的指定应用程序,关闭原先运行程序,实现应用程序在线切换。
3.如权利要求2所述的基于VxWorks操作系统的多版本应用程序在线管理与切换系统,其特征在于,所述script脚本内设置有加载默认应用程序的命令,并将该script脚本的名称通过串口控制台添加到VxWorks操作系统。
4.如权利要求1所述的基于VxWorks操作系统的多版本应用程序在线管理与切换系统,其特征在于,所述处理器运行的TFFS文件系统包括通过在生成VxWorks内核映像时在Kernel Configuration中增加TFFS组件以及DOSFs组件来实现。
5.如权利要求1所述的基于VxWorks操作系统的多版本应用程序在线管理与切换系统,其特征在于,所述上位机通过以太网与下位机相连。
6.如权利要求5所述的基于VxWorks操作系统的多版本应用程序在线管理与切换系统,其特征在于,所述管理程序通过绑定下位机的IP地址和端口号来完成与上位机的网络交互。
7.如权利要求1所述的基于VxWorks操作系统的多版本应用程序在线管理与切换系统,其特征在于,所述FTP服务端包括通过在生成VxWorks操作系统时在Kernel Configuration中增加FTP组件,并设置为服务器模式来实现与上位机的通信。
CN201810876560.1A 2018-08-03 2018-08-03 基于VxWorks操作系统的多版本应用程序在线管理与切换系统 Active CN109213517B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810876560.1A CN109213517B (zh) 2018-08-03 2018-08-03 基于VxWorks操作系统的多版本应用程序在线管理与切换系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810876560.1A CN109213517B (zh) 2018-08-03 2018-08-03 基于VxWorks操作系统的多版本应用程序在线管理与切换系统

Publications (2)

Publication Number Publication Date
CN109213517A CN109213517A (zh) 2019-01-15
CN109213517B true CN109213517B (zh) 2022-04-01

Family

ID=64988627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810876560.1A Active CN109213517B (zh) 2018-08-03 2018-08-03 基于VxWorks操作系统的多版本应用程序在线管理与切换系统

Country Status (1)

Country Link
CN (1) CN109213517B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110908706B (zh) * 2019-11-28 2023-10-17 上海电气富士电机电气技术有限公司 一种多版本软件的管理方法
CN111209059B (zh) * 2020-01-14 2023-03-03 中国北方车辆研究所 一种嵌入式软件多版本控制系统及方法
CN111427714B (zh) * 2020-03-18 2023-05-30 深圳震有科技股份有限公司 强制进入shell模式的方法、存储介质及智能终端
CN112231211B (zh) * 2020-10-14 2024-01-26 天津津航计算技术研究所 一种在嵌入式VxWorks操作系统下解决Qt应用调试的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521410A (zh) * 2011-12-28 2012-06-27 天津凯发电气股份有限公司 基于VxWorks操作系统的文件存储结构及存储方法
CN107515747A (zh) * 2017-08-10 2017-12-26 清远博云软件有限公司 一种分布式软件配制管理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120060023A1 (en) * 2010-09-06 2012-03-08 Samsung Electronics Co., Ltd. Methods for booting an operating system using non-volatile memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521410A (zh) * 2011-12-28 2012-06-27 天津凯发电气股份有限公司 基于VxWorks操作系统的文件存储结构及存储方法
CN107515747A (zh) * 2017-08-10 2017-12-26 清远博云软件有限公司 一种分布式软件配制管理方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于Tilcon的VxWorks图形界面开发技术;张士福;《舰船电子对抗》;20110831;第34卷(第4期);第25-28页 *
通过TFFS加载和升级VxWorks映像;朱汉德;《微计算机信息(嵌入式与SOC)》;20080531;第24卷(第5-2期);第36-38页 *

Also Published As

Publication number Publication date
CN109213517A (zh) 2019-01-15

Similar Documents

Publication Publication Date Title
CN109213517B (zh) 基于VxWorks操作系统的多版本应用程序在线管理与切换系统
JP4527348B2 (ja) インタフェース装置、インタフェース装置におけるファームウェアの更新方法、及びそのプログラム
US20150227128A1 (en) Control device and communication control method
EP3572933B1 (en) Updating firmware via a remote device
CN103761088A (zh) 一种适用于arm架构移动设备的多操作系统切换方法
CN102880498A (zh) 在安卓系统的装置上虚拟sd卡的方法
CN111984261A (zh) 编译方法与编译系统
TWI498822B (zh) 可更新基本輸入輸出系統的電子裝置及其基本輸入輸出系統的更新方法
US20190205109A1 (en) Computer system, baseboard management controller, and os installation method
JP2012155494A (ja) 情報処理装置およびファイルシステム
CN106843940A (zh) 一种嵌入式系统的快速升级方法
CN106878486A (zh) 一种防止板载网卡mac地址被修改的方法及系统
CN109426511B (zh) 软核更新方法和系统
JP5250644B2 (ja) 情報処理装置
CN116647448A (zh) 一种软件更新方法、系统、设备及介质
CN106095643A (zh) 系统参数存取的设定方法及其服务器
JPH1185224A (ja) プログラムローディング装置
US11593098B2 (en) Synchronization of source code under development in multiple concurrent instances of an integrated development environment
CN115080069A (zh) 基板管理控制器调试方法、装置、电子设备和存储介质
CN111522778B (zh) 一种文件迁移方法
CN115292631A (zh) 一种基于Web的容器内部文件管理方法和系统
CN1295603C (zh) 加载升级单板启动程序的方法
CN101782886B (zh) 传输控制系统及其方法
WO2020119139A1 (zh) Pch万兆以太网的pxe功能的启停方法及相关装置
CN108009104B (zh) 一种基于龙芯处理器的数据更新装置及数据处理方法

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
GR01 Patent grant
GR01 Patent grant