实现嵌入式VxWorks系统更改IP地址后建立targetserver的方法与流程

文档序号:23669035发布日期:2021-01-15 14:09阅读:153来源:国知局
实现嵌入式VxWorks系统更改IP地址后建立target server的方法与流程

本发明属于嵌入式软件开发领域,具体涉及一种实现嵌入式vxworks系统更改ip地址后建立targetserver的方法。



背景技术:

vxworks操作系统为嵌入式实时操作系统,在我国船舶、通讯、军事、航天等领域中,被广泛用于导航、监控、指挥控制等应用软件的开发。在vxworks集成开发环境中,进行应用程序开发调试,最有效方便而且应用最为广泛的方式就是通过网络连接targetserver,进行任务跟踪和断电调试。这种调试方法也有一定的限制,那就是操作系统启动后,wdb必须为ready状态,而且连接调试的网卡ip地址在应用程序中不能更改。在实际环境中,受限于硬件资源,具体场景中复杂的网络拓扑关系,很难保证用户的应用程序对网卡ip地址不进行重新设置;在这种情况下,只能通过修改vxworks操作系统启动设置来进行软件调试,使用起来非常不便,也影响了调试工作的效率,无法满足保持操作系统状态不动的理想情况。

为了解决这个问题,从vxworks操作系统启动过程中wdb初始化的原理入手,在vxworks系统启动完成后,对连接targetserver必需的参数进行设置,进而执行wdb的重新初始化,提出一种实现应用程序更改了网卡ip地址后,能够建立targetserver连接的方法。



技术实现要素:

(一)要解决的技术问题

本发明要解决的技术问题是如何提供一种实现嵌入式vxworks系统更改ip地址后建立targetserver的方法,以解决网卡ip地址在应用程序中更改后,能够建立targetserver连接的问题。

(二)技术方案

为了解决上述技术问题,本发明提出一种实现嵌入式vxworks系统更改ip地址后建立targetserver的方法,该方法包括如下步骤:

s1、在vxworks集成开发环境中,创建一个静态库工程;

s2、在静态库工程源程序中,定义一个函数;

s3、在函数中声明“传入启动参数”结构变量,并对结构变量进行赋值设置;

s4、调用wdb初始化函数和wdb系统悬挂函数;

s5、编译静态库工程生成静态库文件;

s6、将静态库添加到应用软件中,在执行连接targetserver之前,调用静态库的入口函数。

进一步地,在该方法运行之前应用软件更改了网卡的ip地址。

进一步地,所述步骤s1具体包括如下步骤:

s11、在工作路径所在的workspace中,新建一个dkm工程;

s12、在buildspecs选项中,选择与应用程序相同的处理器和编译链;

s13、在buildtarget选项中,选择gnu作为buildtool;

s14、完成工程创建。

进一步地,所述步骤s2具体包括如下步骤:

s21、在静态库工程源程序中,新建一个.c源文件;

s22、在文件中定一个函数,参数为字符串类型的变量char*addr。

进一步地,所述步骤s3具体包括如下步骤:

s31、声明boot_params类型的结构变量;

s32、对结构变量进行赋值设置。

进一步地,所述赋值设置包括将网卡地址、网卡类型和网卡序号赋值于结构变量。

进一步地,所述步骤s4具体包括如下步骤:

s41、对结构变量设置完成后,函数顺序执行usrwdbinit()函数和wdbsystemsuspend()函数;

s42、usrwdbreinit函数返回。

进一步地,所述步骤s5具体包括如下步骤:

s51、在工程选项中,执行buildproject;

s52、编译完成,生成静态库文件。

进一步地,所述步骤s6具体包括如下步骤:

s61、在应用软件工程属性中,选择library属性页面;

s62、浏览并添加静态库文件;

s63、重新编译应用软件工程;

s64、应用软件运行后,执行usrwdbreinit函数,再进行targetserver连接操作,即可完成连接。

(三)有益效果

本发明提出一种实现嵌入式vxworks系统更改ip地址后建立targetserver的方法,建立静态库工程,定义传入参数函数;声明一个系统启动参数结构,并对网卡类型进行初始化;调用wdb初始化函数和wdb系统悬挂函数;编译工程生成静态库文件,并加入到应用工程中,实现在应用软件更改网卡ip地址的情况下,仍可实现targetserver的连接。本发明提高了vxworks嵌入式操作系统连接targetserver,通过网络进行调试的适用性,方便了应用程序的开发调试,增强了硬件环境对软件开发调试的支撑性。采用上述操作步骤,可在应用软件更改网卡ip地址的情况下,仍可实现targetserver的连接,该技术方法经过了实践验证,结果表明,该方法技术可行性强,稳定可靠,能够实现vxworks嵌入式操作系统在应用中更改了网卡ip地址,targetserver建立连接的功能。

附图说明

图1为本发明更改ip地址后建立targetserver的方法流程图;

图2为本发明解决建立targetserver连接问题流程图。

具体实施方式

为使本发明的目的、内容和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

本发明属于在vxworks嵌入式操作系统下,解决当用户更改了启动过程中网卡的默认ip地址后,targetserver无法连接的技术方法。本发明提高了vxworks嵌入式操作系统连接targetserver,通过网络进行调试的适用性,方便了应用程序的开发调试,增强了硬件环境对软件开发调试的支撑性。

为实现上述目的,本发明采取以下技术措施:

s1、在vxworks集成开发环境中,创建一个静态库工程;

s2、在静态库工程源程序中,定义一个函数;

s3、在函数中声明“传入启动参数”结构变量,并对变量进行赋值;

s4、调用wdb初始化函数和wdb系统悬挂函数;

s5、编译静态库工程生成静态库文件;

s6、将静态库添加到应用软件中,在执行连接targetserver之前,调用静态库的入口函数。

通过以上步骤,可以解决应用软件更改了网卡的ip地址,重新连接targetserver的问题。

本发明属于嵌入式vxworks操作系统下更改ip地址后重新建立targetserver连接的一种方法。其特点在于:第一,建立静态库工程,定义传入参数函数;第二,声明一个系统启动参数结构,并对网卡类型进行初始化;第三,调用wdb初始化函数和wdb系统悬挂函数;第四,编译工程生成静态库文件,并加入到应用工程中,实现在应用软件更改网卡ip地址的情况下,仍可实现targetserver的连接。

本发明涉及一种实现嵌入式vxworks系统更改ip地址后建立targetserver的方法,其中,

(1)作为一个静态库存在,不涉及应用程序功能和架构更改;

(2)根据ip地址更改的网卡类型对wdb进行重新初始化;

(3)ip地址更改后,调用静态库中的函数完成功能。

进一步地,本发明的特点还在于:(1)找出更改ip地址后targetserver无法连接的原因;(2)从vxworks操作系统启动过程中对wdb初始化的过程为原理入手,开发出操作系统在运行状态下重新初始化wdb的方法;(3)完成wdb重新初始化即可实现targetserver重新连接;(4)应用软件更改ip地址后,可通过在软件中加入代码、调试终端或是telnet终端下通过运行静态库中的函数,完成建立targetserver环境的初始化。

结合图1-2,为了解决在vxworks嵌入式操作系统中,应用软件更改了网卡的ip地址,targetserver无法进行连接的问题,我们通过建立静态库工程,在应用软件启动对网卡更改了ip地址后,重新进行wdb初始化来接解决这个问题,下面对本发明的内容作进一步描述。

1、在vxworks集成开发环境中,创建一个静态库工程

s11、在工作路径所在的workspace中,新建一个dkm工程,命名usrwdbreinit;

s12、在buildspecs选项中,选择与应用程序相同的处理器和编译链;

s13、在buildtarget选项中,选择gnu作为buildtool;

s14、完成工程创建。

2、在静态库工程源程序中,定义一个函数

s21、在静态库工程源程序中,新建一个.c源文件,名为wdbusrdef.c;

s22、在文件中定一个函数,函数名usrwdbreinit,参数为字符串类型的变量char*addr。

3、在函数中声明“传入启动参数”结构变量,并对结构变量进行赋值设置

s31、声明变量importboot_paramssysbootparams;

s32、对sysbootparams结构赋值设置

strcpy(sysbootparams.ead,addr);

strcpy(sysbootparams.bootdev,"gei");

sysbootparams.unitnum=0;

其中,“gei”为网卡类型,实际应用中,根据不同网卡类型写入对应的名称。addr为网卡地址。同一个类型网卡序号为0。

4、调用wdb初始化函数和wdb系统悬挂函数

s41、对sysbootparams结构设置完成后,函数顺序执行usrwdbinit()函数和wdbsystemsuspend()函数;

s42、usrwdbreinit函数返回。

5、编译静态库工程生成静态库文件

s51、在工程选项中,执行buildproject;

s52、编译完成,生成usrwdbreinit.a静态库文件。

6、将静态库添加到应用软件中,在修改ip后重新执行连接targetserver之前,调用静态库的入口函数

s61、在应用软件工程属性中,选择library属性页面;

s62、选择add....—>addfullqualifiedlibraryfile,浏览并添加usrwdbreinit.a文件;

s63、重新编译应用软件工程;

s64、应用软件运行后,执行usrwdbreinit函数,再进行targetserver连接操作,即可完成连接。

利用上述技术方案,采用上述操作步骤,可在应用软件更改网卡ip地址的情况下,仍可实现targetserver的连接,该技术方法经过了实践验证,结果表明,该方法技术可行性强,稳定可靠,能够实现vxworks嵌入式操作系统在应用中更改了网卡ip地址,targetserver建立连接的功能。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

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