嵌入式前端设备后台控制调试方法及装置制造方法

文档序号:7778309阅读:263来源:国知局
嵌入式前端设备后台控制调试方法及装置制造方法
【专利摘要】本发明提供了一种嵌入式前端设备后台控制调试方法及装置,通过为嵌入式前端设备配套一套通讯耦合的进程工具,包括两个部分,之一为调试服务线程,它内嵌于前端设备需调试的功能模块中,而另一个则为则独立在外为一个单独的客户进程,参见图2的架构图所示,从而使得工程师可以方便的对前端设备中的目标程序或模块的运行状态进行远程调试和控制,避免了现场维护时繁琐的拆装及操作。
【专利说明】嵌入式前端设备后台控制调试方法及装置
【技术领域】
[0001]本发明涉及安防系统设备操控领域,尤其是指一种基于LINUX的嵌入式前端设备后台控制调试方法及装置。
【背景技术】
[0002]在安防系统中的,嵌入式前端设备一般是通过主板上外接打印串口对程序进行调试,由于现场运行环境复杂,出现问题的时候即使有运行日志也难以准确判断程序运行状态,工程师往往需要拆卸设备通过外接串口对程序进行跟踪分析,即debug方可能找到问题真正所在,该种前端式设备的调试方法无疑十分麻烦,不利于快速的发现、处理设备问题。
[0003]另一方在视频监控领域,前端设备都配备视频浏览客户端,在开发过程中客户端的开发进度往往滞后于设备程序,这给嵌入式工程师的开发自测和联调带来一定影响,需要一种便捷的方式模拟客户端对设备进行功能调试。

【发明内容】

[0004]本发明的目的在于克服了上述缺陷,提供一种基于LINUX进程间通信的嵌入式前端设备后台控制调试方法及装置。
[0005]本发明的目的是这样实现的:一种嵌入式前端设备后台控制调试方法,它包括步骤:
[0006]A)、于前端设备需调试功能模块中内嵌一个调试服务线程;
[0007]B)、内嵌的调试服务线程随前端设备的需调试功能模块运行而启动;
[0008]C)、调试服务线程创建耦合通讯后进入待机状态;
[0009]D)、远程访问前端设备后开启调试客户进程;
[0010]E)、通过耦合通讯建立调试客户进程与调试服务线程之间的双向连接;
[0011]F)、通过客户进程发送操作指令至调试服务线程,调试服务线程响应操作指令执行相应操作并返回执行结果至客户进程;所述操作包括程序状态控制、运行参数获取或功能丰吴块控制;
[0012]上述方法中,所述步骤E,调试客户进程在通过身份认证后与调试服务线程建立双向连接;
[0013]上述方法中,所述步骤D具体为:通过telnet或ssh方式远程访问前端设备后手动开启调试客户进程;
[0014]上述方法中,所述步骤C具体为:调试服务线程依据耦合通讯方式创建通信服务端,其中,所述稱合通讯方式为fifo或socket ;
[0015]上述方法中,所述需调试功能模块的数量为至少两个,所述通讯耦合方式中,为不同的需调试功能模块分配有区分标签;
[0016]上述方法中,所述步骤E具体包括,[0017]调试服务线程的连接步骤,
[0018]E11)、等待连接,待收到连接请求后尝试建立双向连接;
[0019]E12)、判断客户端连接是否成功,是则继续,否则返回步骤Ell ;
[0020]E13)、等待接收密码;
[0021]E14)、判断是否通过校验,接收来自客户端的密码,判断其是否通过校验并返回校验结果,是则继续,否则返回步骤Ell ;
[0022]客户进程的连接步骤,
[0023]E21)、尝试与通讯服务端建立双向连接;
[0024]E22)、判断服务端连接是否成功,是则继续,否则断开连接并退出;
[0025]E23)、发送密码至通信服务端;
[0026]E24)、判断是否通过校验,接收服务端返回的校验结果,判断是否通过,是则继续,否则断开连接并退出;
[0027]上述方法中,所述步骤F具体包括,
[0028]调试服务线程的操作相应步骤,
[0029]F11)、等待客户端的操作请求,响应该操作请求中的操作指令并执行对应功能,同时将执行结果返回至客户端;
[0030]F12)、判断请求是否结束,否则转回步骤F11,是则继续步骤;
[0031]F13)、断开连接,而后返回到步骤E ;
[0032]客户进程的操作步骤,
[0033]F21)、发送操作请求,将操作指令发送至服务端,并根据返回的执行结果执行包括港远程调试或后台控制的操作;
[0034]F22)、判断操作是否结束,否则转回步骤F21,是则断开连接并退出。
[0035]本发明还涉及一种嵌入式前端设备后台控制调试装置,它包括,
[0036]设置模块,用于在前端设备需调试功能模块中内嵌一个调试服务线程,而后转到启动模块;
[0037]启动模块,用于使内嵌的调试服务线程随前端设备的需调试功能模块运行而启动,而后转到通讯待机模块;
[0038]通讯待机模块,用于调试服务线程创建耦合通讯后进入待机状态,而后转到客户进程开启模块;
[0039]客户进程开启模块,用于供远程访问前端设备后开启调试客户进程,而后转到连接建立模块;
[0040]连接建立模块,用于通过耦合通讯建立调试客户进程与调试服务线程之间的双向连接,而后转到调试模块;
[0041]调试模块,用于通过客户进程发送操作指令至调试服务线程,调试服务线程响应操作指令执行相应操作并返回执行结果至客户进程;所述操作包括程序状态控制、运行参数获取或功能模块控制。
[0042]上述结构中,所述连接建立模块具体包括,
[0043]设置于调试服务线程上的,
[0044]等待连接单元,用于待收到连接请求后尝试建立双向连接,而后转到客户端连接判断单元;
[0045]客户端连接判断单元,用于判断与客户端连接是否成功,是则转到密码等待单元,否则转回等待连接单元;
[0046]密码等待单元,用于等待接收密码,而后转到服务端校验判断单元;
[0047]服务端校验判断单元,用于判断接收来自客户端的密码是否通过校验并返回校验结果,是则转到操作实现单元,转回等待连接单元;
[0048]设置于客户进程上的,
[0049]连接建立单元,用于尝试与通讯服务端建立双向连接,而后转到服务端连接判断单元;
[0050]服务端连接判断单元,用于判断与服务端连接是否成功,是则转到密码发送单元,否则断开连接并退出;
[0051]密码发送单元,用于发送密码至通讯服务端,而后转到客户端校验判断单元;
[0052]客户端校验判断单元,用于接收服务端返回的校验结果,判断是否通过校验,是则转到操作请求发送单元,否则断开连接并退出;
[0053]上述结构中,所述调试模块具体包括,
[0054]设置于调试服务线程的,
[0055]操作实现单元,用于等待客户端的操作请求,响应该操作请求中的操作指令并执行对应功能,同时将执行结果返回至客户端,而后转到请求结束判断单元;
[0056]请求结束判断单元,用于判断请求是否结束,否则转回操作实现单元,是则转到断开连接单元;
[0057]断开连接单元,用于断开连接,而后转回等待连接单元;
[0058]设置于客户进程的,
[0059]操作请求发送单元,用于将操作指令发送至服务端,并根据返回的执行结果执行包括港远程调试或后台控制的操作,而后转到操作结束判断单元;
[0060]操作结束判断单元,用于判断操作是否结束,否则转回连接建立单元,是则断开连接并退出。
[0061]本发明的有益效果在于为嵌入式前端设备配套一套通讯耦合的进程工具,包括两个部分,之一为调试服务线程,它内嵌于前端设备需调试的功能模块中,而另一个则为则独立在外为一个单独的客户进程,参见图2的架构图所示,从而使得工程师可以方便的对前端设备中的目标程序或模块的运行状态进行远程调试和控制,避免了现场维护时繁琐的拆装及操作。
【专利附图】

【附图说明】
[0062]下面结合附图详述本发明的具体结构
[0063]图1为本发明方法的总流程示意图;
[0064]图2为本发明方法的进程架构图;
[0065]图3为本发明方法的一种实施例流程示意图;
[0066]图4为本发明方法的一对多实现方式示意图;
[0067]图5为本发明方法的一对多实现流程示意图。【具体实施方式】
[0068]为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
[0069]请参阅图1,本发明提供了一种嵌入式前端设备后台控制调试方法,它包括步骤:
[0070]A)、于前端设备需调试功能模块中内嵌一个调试服务线程;
[0071]通常,该调试服务线程提供开放式的功能选项。调试服务线程提供了后台操作目标程序或模块(即需调试功能模块)的手段,而此处的目标程序或模块是指设备中为实现产品功能而正常运行的进程或线程。在功能模块后内嵌调试服务线程后,调试服务线程会由目标程序或模块创建并运行。
[0072]B)、内嵌的调试服务线程随前端设备的需调试功能模块运行而启动;
[0073]C)、调试服务线程创建耦合通讯后进入待机状态;
[0074]D)、远程访问前端设备后开启调试客户进程;
[0075]此处的客户进程提供开放式的操作选项。在客户进程上提供了后台操作目标程序或模块的命令行界面。
[0076]E)、通过耦合通讯建立调试客户进程与调试服务线程之间的双向连接;
[0077]F)、通过客户进程发送操作指令至调试服务线程,调试服务线程响应操作指令执行相应操作并返回执行结果至客户进程;所述操作包括程序状态控制、运行参数获取或功能模块控制。
[0078]即客户进程最终需通过操作调试服务线程实现前端系统后台控制和远程调试等多种功能,如系统数据获取、设备状态控制等
[0079]可见,上述方法通过在嵌入式前端设备中配套一套基于LINUX进程间通讯耦合的进程工具,包括两个部分,之一为调试服务线程,它内嵌于前端设备需调试的功能模块中,而另一个则为则独立在外为一个单独的客户进程,参见图2的架构图所示,从而使得工程师可以方便的对前端设备中的目标程序或模块的运行状态进行远程调试和控制,避免了现场维护时繁琐的拆装及操作。
[0080]作为一实施例,上述方法中的步骤C具体为:调试服务线程依据耦合通讯方式创建通信服务端。其中,所述I禹合通讯方式为fifo或socket。由于在LINUX系统中fifo(管道)和socket (套接字)是较为成熟较为通用通信方式,通信速度快,并且可以通过指定文件名来准确判断通信目标,因此本发明方案中最佳采用它们作为进程间的通信的方式。
[0081]作为一实施例,上述方法中的步骤D具体为:通过telnet或ssh方式远程访问前端设备后手动开启调试客户进程。telnet和ssh是LNUX支持的远程登录手段,支持从Iinux系统或windows系统远程登录到前端设备,支持获取管理员的操作权限,支持加密访问,相对安全快捷的远程访问手段,适用性强。
[0082]作为一实施例,上述方法中的步骤E中,调试客户进程在通过身份认证后与调试服务线程建立双向连接。由此可确保操控的客户进程身份的可信性,避免被不信任的或者窜改的客户进程随意操控服务进程,影响设备的正常工作。而此处的身份认证,可采用多种方式,如密码、密钥、或唯一 ID身份验证等。
[0083]进一步的,如图4、5所示,上述方案还可适用于为工程师提供一种简单快捷的前端设备上多功能模块的调方式。因为通常前端设备需要实现众多功能,每个功能都需要运行各自的程序模块,因此本发明的方法除可以一对一应用外,还可支持一对多策略,即一个客户进程对应一个调试服务线程或一个客户进程对应多个调试服务线程两种方式。具体的,只需分别在需调试的多个功能模块中均内嵌调试服务线程,通过一个通讯耦合方式中,为不同的需调试功能模块分配有区分标签。即倘若采用一对多的策略,需要在通信耦合层为不同模块分配不同的有名文件加以区分,而由于不论是fifo还是socket的通信方式,都需要通信双方指定同名的有名文件(也就是通信标签)来创建连接,所以在采用一对多策略的时候,只需要为不同模块的服务线程分配不同名称的有名文件,然后在客户进程中通过判断输入参数决定将要调试或控制的模块,即可选择对应的有名文件创建连接,达到一个客户进程调控多个服务线程的目的。由此工程师可根据现场需求选择所要操作或调试的模块。可见,本方法在实现前端设备的现场远程调试,避免繁琐的拆装机过程外,又能在开发过程中为嵌入式工程师提供一种便捷的自测联调方法,有助于加快开发进度、提高开发质量。
[0084]如图3所示,进一步的上述步骤E和F可细化为:
[0085]步骤E具体包括:
[0086]调试服务线程的连接步骤,
[0087]E11)、等待连接,待收到连接请求后尝试建立双向连接;
[0088]E12)、判断客户端连接是否成功,是则继续,否则返回步骤Ell ;
[0089]E13)、等待接收密码;
[0090]E14)、判断是否通过校验,接收来自客户端的密码,判断其是否通过校验并返回校验结果,是则继续,否则返回步骤Ell ;
[0091]客户进程的连接步骤,
[0092]E21)、尝试与通讯服务端建立双向连接;
[0093]E22)、判断服务端连接是否成功,是则继续,否则断开连接并退出;
[0094]E23)、发送密码至通信服务端;
[0095]E24)、判断是否通过校验,接收服务端返回的校验结果,判断是否通过,是则继续,否则断开连接并退出。
[0096]可见,本实施例中的步骤E是通过密码来实现身份校验的,通过调试服务线程和客户进程的数据交互,从而实现两者之间基于身份校验的可靠度更高的耦合通讯连接。
[0097]步骤F具体包括:
[0098]调试服务线程的操作相应步骤,
[0099]F11)、等待客户端的操作请求,响应该操作请求中的操作指令并执行对应功能,同时将执行结果返回至客户端;
[0100]F12)、判断请求是否结束,否则转回步骤F11,是则继续步骤;
[0101]F13)、断开连接,而后返回到步骤E ;
[0102]客户进程的操作步骤,
[0103]F21)、发送操作请求,将操作指令发送至服务端,并根据返回的执行结果执行包括港远程调试或后台控制的操作;
[0104]F22)、判断操作是否结束,否则转回步骤F21,是则断开连接并退出。[0105]本发明还涉及一种嵌入式前端设备后台控制调试装置,它包括,
[0106]设置模块,用于在前端设备需调试功能模块中内嵌一个调试服务线程,而后转到启动模块;
[0107]启动模块,用于使内嵌的调试服务线程随前端设备的需调试功能模块运行而启动,而后转到通讯待机模块;
[0108]通讯待机模块,用于调试服务线程创建耦合通讯后进入待机状态,而后转到客户进程开启模块;
[0109]客户进程开启模块,用于供远程访问前端设备后开启调试客户进程,而后转到连接建立模块;
[0110]连接建立模块,用于通过耦合通讯建立调试客户进程与调试服务线程之间的双向连接,而后转到调试模块;
[0111]调试模块,用于通过客户进程发送操作指令至调试服务线程,调试服务线程响应操作指令执行相应操作并返回执行结果至客户进程;所述操作包括程序状态控制、运行参数获取或功能模块控制。
[0112]作为一实施例,所述连接建立模块具体包括,
[0113]设置于调试服务线程上的,
[0114]等待连接单元,用于待收到连接请求后尝试建立双向连接,而后转到客户端连接判断单元;
[0115]客户端连接判断单元,用于判断与客户端连接是否成功,是则转到密码等待单元,否则转回等待连接单元;
[0116]密码等待单元,用于等待接收密码,而后转到服务端校验判断单元;
[0117]服务端校验判断单元,用于判断接收来自客户端的密码是否通过校验并返回校验结果,是则转到操作实现单元,转回等待连接单元;
[0118]设置于客户进程上的,
[0119]连接建立单元,用于尝试与通讯服务端建立双向连接,而后转到服务端连接判断单元;
[0120]服务端连接判断单元,用于判断与服务端连接是否成功,是则转到密码发送单元,否则断开连接并退出;
[0121]密码发送单元,用于发送密码至通讯服务端,而后转到客户端校验判断单元;
[0122]客户端校验判断单元,用于接收服务端返回的校验结果,判断是否通过校验,是则转到操作请求发送单元,否则断开连接并退出。
[0123]作为一实施例,所述调试模块具体包括,
[0124]设置于调试服务线程的,
[0125]操作实现单元,用于等待客户端的操作请求,响应该操作请求中的操作指令并执行对应功能,同时将执行结果返回至客户端,而后转到请求结束判断单元;
[0126]请求结束判断单元,用于判断请求是否结束,否则转回操作实现单元,是则转到断开连接单元;
[0127]断开连接单元,用于断开连接,而后转回等待连接单元;
[0128]设置于客户进程的,[0129]操作请求发送单元,用于将操作指令发送至服务端,并根据返回的执行结果执行包括港远程调试或后台控制的操作,而后转到操作结束判断单元;
[0130]操作结束判断单元,用于判断操作是否结束,否则转回连接建立单元,是则断开连接并退出。
[0131]以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.一种嵌入式前端设备后台控制调试方法,其特征在于:它包括步骤, A)、于前端设备需调试功能模块中内嵌一个调试服务线程; B)、内嵌的调试服务线程随前端设备的需调试功能模块运行而启动; C)、调试服务线程创建耦合通讯后进入待机状态; D)、远程访问前端设备后开启调试客户进程; E)、通过耦合通讯建立调试客户进程与调试服务线程之间的双向连接; F)、通过客户进程发送操作指令至调试服务线程,调试服务线程响应操作指令执行相应操作并返回执行结果至客户进程;所述操作包括程序状态控制、运行参数获取或功能模块控制。
2.如权利要求1所述的嵌入式前端设备后台控制调试方法,其特征在于:所述步骤E,调试客户进程在通过身份认证后与调试服务线程建立双向连接。
3.如权利要求1所述的嵌入式前端设备后台控制调试方法,其特征在于:所述步骤D具体为: 通过telnet或ssh方式远程访问前端设备后手动开启调试客户进程。
4.如权利要求1所述的嵌入式前端设备后台控制调试方法,其特征在于:所述步骤C具体为: 调试服务线程依据耦合通讯 方式创建通信服务端,其中,所述耦合通讯方式为fifo或socket。
5.如权利要求1所述的嵌入式前端设备后台控制调试方法,其特征在于:所述需调试功能模块的数量为至少两个,所述通讯耦合方式中,为不同的需调试功能模块分配有区分标签。
6.如权利要求1-5任意一项所述的嵌入式前端设备后台控制调试方法,其特征在于:所述步骤E具体包括, 调试服务线程的连接步骤, E11)、等待连接,待收到连接请求后尝试建立双向连接; E12)、判断客户端连接是否成功,是则继续,否则返回步骤Ell ; E13)、等待接收密码; E14)、判断是否通过校验,接收来自客户端的密码,判断其是否通过校验并返回校验结果,是则继续,否则返回步骤Ell ; 客户进程的连接步骤, E21)、尝试与通讯服务端建立双向连接; E22)、判断服务端连接是否成功,是则继续,否则断开连接并退出; E23)、发送密码至通信服务端; E24)、判断是否通过校验,接收服务端返回的校验结果,判断是否通过,是则继续,否则断开连接并退出。
7.如权利要求1-5任意一项所述的嵌入式前端设备后台控制调试方法,其特征在于:所述步骤F具体包括, 调试服务线程的操作相应步骤, F11)、等待客户端的操作请求,响应该操作请求中的操作指令并执行对应功能,同时将执行结果返回至客户端; F12)、判断请求是否结束,否则转回步骤F11,是则继续步骤; F13)、断开连接,而后返回到步骤E ; 客户进程的操作步骤, F21)、发送操作请求,将操作指令发送至服务端,并根据返回的执行结果执行包括港远程调试或后台控制的操作; F22)、判断操作是否结束,否则转回步骤F21,是则断开连接并退出。
8.一种嵌入式前端设备后台控制调试装置,其特征在于:它包括, 设置模块,用于在前端设备需调试功能模块中内嵌一个调试服务线程,而后转到启动模块; 启动模块,用于使内嵌的调试服务线程随前端设备的需调试功能模块运行而启动,而后转到通讯待机模块; 通讯待机模块,用于调试服务线程创建耦合通讯后进入待机状态,而后转到客户进程开启1吴块; 客户进程开启模块,用于供远程访问前端设备后开启调试客户进程,而后转到连接建立模块; 连接建立模块,用于通过耦合通讯建立调试客户进程与调试服务线程之间的双向连接,而后转到调试模块; 调试模块,用于通过客户进程发送操作指令至调试服务线程,调试服务线程响应操作指令执行相应操作并返回执行结果至客户进程;所述操作包括程序状态控制、运行参数获取或功能模块控制。
9.如权利要求8所述的嵌入式前端设备后台控制调试装置,其特征在于:所述连接建立模块具体包括, 设置于调试服务线程上的, 等待连接单元,用于待收到连接请求后尝试建立双向连接,而后转到客户端连接判断单元; 客户端连接判断单元,用于判断与客户端连接是否成功,是则转到密码等待单元,否则转回等待连接单元; 密码等待单元,用于等待接收密码,而后转到服务端校验判断单元; 服务端校验判断单元,用于判断接收来自客户端的密码是否通过校验并返回校验结果,是则转到操作实现单元,转回等待连接单元; 设置于客户进程上的, 连接建立单元,用于尝试与通讯服务端建立双向连接,而后转到服务端连接判断单元; 服务端连接判断单元,用于判断与服务端连接是否成功,是则转到密码发送单元,否则断开连接并退出; 密码发送单元,用于发送密码至通讯服务端,而后转到客户端校验判断单元; 客户端校验判断单元,用于接收服务端返回的校验结果,判断是否通过校验,是则转到操作请求发送单元,否则断开连接并退出。
10.如权利要求8所述的嵌入式前端设备后台控制调试装置,其特征在于:所述调试模块具体包括, 设置于调试服务线程的, 操作实现单元,用于等待客户端的操作请求,响应该操作请求中的操作指令并执行对应功能,同时将执行结果返回至客户端,而后转到请求结束判断单元; 请求结束判断单元,用于判断请求是否结束,否则转回操作实现单元,是则转到断开连接单元; 断开连接单元,用于断开连接,而后转回等待连接单元; 设置于客户进程的, 操作请求发送单元,用于将操作指令发送至服务端,并根据返回的执行结果执行包括港远程调试或后台控制的操作,而后转到操作结束判断单元; 操作结束判断单元,用于判断操作是否结束,否则转回连接建立单元,是则断开连接并退出。·
【文档编号】H04L29/08GK103595820SQ201310627065
【公开日】2014年2月19日 申请日期:2013年11月28日 优先权日:2013年11月28日
【发明者】肖正 申请人:深圳英飞拓科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1