本发明专利技术设备命令行的实现方法、系统与装置,客户端根据执行文件、执行文件路径以及通信参数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表,采用C语言解析用户输入命令的含义,根据符号与地址的映射表以及用户输入命令的含义,构造命令消息,发送命令消息至服务器,接收服务器处理命令消息生成的结果消息。整个过程中,全局变量及全局函数符号信息与地址的自动绑定,用户命令遵循C语言语法,实现便捷操作,另外,增加和删除命令只需在用户的执行文件中增加删除相应的全局变量和全局函数,只需实现一遍,之后可以直接重复利用,很好地避免重复数据的处理,从而减少了数据处理量。
【技术实现步骤摘要】
本专利技术涉及计算机
,特别是涉及设备命令行的实现方法、系统与装置。
技术介绍
无论嵌入式设备还是通用设备,在开发、调试、测试及正常运行等各个阶段,都存在与设备上运行的各个程序交互的需求。不但需要了解程序及系统的状态,也需要对各个流程进行控制,而命令行接口对于各种设备来说都是一种方便和功能强大的交互方式。一般命令行通过串口应用程序或者Telnet程序,利用键盘输入命令与设备进行交互,虽然也可以通过Web或者其它图形界面与设备进行交互,但通常命令行方式比这些图形界面能提供更完备的交互功能。特别是在设备出现故障,例如网口异常情况下,仍然可以通过串口使用命令行的方式与设备交互,解决设备问题。针对与设备中的每一个程序,如果要与其交互,都要重新开发相应的交互命令。即使程序中已经有现成的控制函数,也需要开发客户端和服务器,分别与用户交互及执行控制函数,并需要对控制函数和命令名字进行注册绑定。如果一个执行程序已经具备完成控制需求的函数,需要新增一个命令,采样上述处理方式会非常复杂,有大量数据需要处理。
技术实现思路
基于此,有必要针对一般设备命令行的实现方式处理过程中数据处理过大的问题,提供一种数据处理量小、便捷的设备命令行的实现方法、系统与装置。一种设备命令行的实现方法,包括步骤:获取用户指定的执行文件、执行文件路径以及通信参数;根据所述执行文件、所述执行文件路径以及所述通信参数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表;接收用户输入命令,并采用C语言解析用户输入命令的含义;根据所述符号与地址的映射表以及用户输入命令的含义,构造命令消息,发送所述命令消息至服务器;接收服务器处理所述命令消息生成的结果消息。一种设备命令行的实现系统,包括:获取模块,用于获取用户指定的执行文件、执行文件路径以及通信参数;映射表模块,用于根据所述执行文件、所述执行文件路径以及所述通信参数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表;输入模块,用于接收用户输入命令,并采用C语言解析用户输入命令的含义;发送模块,用于根据所述符号与地址的映射表以及用户输入命令的含义,构造命令消息,发送所述命令消息至服务器;接收模块,用于接收服务器处理所述命令消息生成的结果消息。一种设备命令行的实现装置,包括客户端与服务器,所述客户端与所述服务器连接;所述客户端获取用户指定的执行文件、执行文件路径以及通信参数,根据所述执行文件、所述执行文件路径以及所述通信参数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表,接收用户输入命令,并采用C语言解析用户输入命令的含义,根据所述符号与地址的映射表以及用户输入命令的含义,构造命令消息,发送所述命令消息至服务器;所述服务器接收所述命令消息,并根据所述命令消息执行全局函数符号和/或全局变量符号的修改和查看,生成结果消息,发送所述结果消息至所述客户端。本专利技术设备命令行的实现方法、系统与装置,客户端获取用户指定的执行文件、执行文件路径以及通信参数,根据执行文件、执行文件路径以及通信参数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表,接收用户输入命令,并采用C语言解析用户输入命令的含义,根据符号与地址的映射表以及用户输入命令的含义,构造命令消息,发送命令消息至服务器,接收服务器处理命令消息生成的结果消息。整个过程中,全局变量及全局函数符号信息与地址的自动绑定,用户命令遵循C语言语法,避免了需要人工绑定命令及对应执行代码之间关系的工作,实现便捷操作,另外,增加和删除命令只需在用户的执行文件中增加删除相应的全局变量和全局函数,只需实现一遍,之后可以直接重复利用,很好地避免重复数据的处理,从而减少了数据处理量。附图说明图1为本专利技术设备命令行的实现方法第一个实施例的流程示意图;图2为本专利技术设备命令行的实现方法第二个实施例的流程示意图;图3为本专利技术设备命令行的实现系统第一个实施例的结构示意图;图4为本专利技术设备命令行的实现系统第一个实施例的结构示意图。具体实施方式如图1所示,一种设备命令行的实现方法,包括步骤:S100:获取用户指定的执行文件、执行文件路径以及通信参数。执行文件路径为执行文件在客户端系统文件中的存储路径,通信参数为客户端与服务器之间通信方式的参数,例如所客户端与服务器之间采用网络通信就要输入IP和端口号,需要服务端与客户端匹配,以便建立通信连接。S200:根据所述执行文件、所述执行文件路径以及所述通信参数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表。客户端对执行文件进行解析,从中获取全局变量符号、全局函数符号与地址等信息的对应,自动生成符号与地址等信息的映射表,客户端进行解析的执行文件需要携带全局变量及全局函数符号信息,如果设备上的执行文件需要去除符号信息,可以在客户端使用尚未去除符号信息前的执行文件。S300:接收用户输入命令,并采用C语言解析用户输入命令的含义。客户端接收用户输入命令,对用户输入命令进行解析,具体来说是采用C语言对用户输入命令进行解析,获得用户输入命令的含义,这里说的C语言包括但不限于C/C++。非必要的,我们可以采用C语言解析器实现整个解析过程。非必要的,我们在接收用户输入命令之前,可以给予用户提示,告知用户遵循C语言语法输入命令,以便缩短命令解析、处理时间和处理量。S400:根据所述符号与地址的映射表以及用户输入命令的含义,构造命令消息,发送所述命令消息至服务器。客户端通过通信端口将命令消息发送至服务器。S500:接收服务器处理所述命令消息生成的结果消息。服务器接收命令消息,并根据命令消息执行全局函数符号和/或全局变量符号的修改和查看,生成结果消息,发送结果消息至客户端,客户端接收服务器发送过来的结果消息,并显示。服务器根据命令信息中的地址等执行命令,并返回结果消息。简单,高效,最大程度地减少芯片能力的依赖。把复杂及耗时的工作都交给客户端。使服务器能在性能较差的芯片中仍然能够部署。在客户端中,我们可以构造客户端程序,不依赖于具体的操作系统。通过编译使程序可以在Unix,Windows等操作系统中运行。因此也不受限制于运行在上位机还是设备,可以根据需要灵活部署。另外,客户端提供接本文档来自技高网...
【技术保护点】
一种设备命令行的实现方法,其特征在于,包括步骤:获取用户指定的执行文件、执行文件路径以及通信参数;根据所述执行文件、所述执行文件路径以及所述通信参数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表;接收用户输入命令,并采用C语言解析用户输入命令的含义;根据所述符号与地址的映射表以及用户输入命令的含义,构造命令消息,发送所述命令消息至服务器;接收服务器处理所述命令消息生成的结果消息。
【技术特征摘要】
1.一种设备命令行的实现方法,其特征在于,包括步骤:
获取用户指定的执行文件、执行文件路径以及通信参数;
根据所述执行文件、所述执行文件路径以及所述通信参数,分别获得全局
变量符号和全局函数符号与地址的对应关系,生成符号与地址的映射表;
接收用户输入命令,并采用C语言解析用户输入命令的含义;
根据所述符号与地址的映射表以及用户输入命令的含义,构造命令消息,
发送所述命令消息至服务器;
接收服务器处理所述命令消息生成的结果消息。
2.根据权利要求1所述的设备命令行的实现方法,其特征在于,所述获取
用户指定的执行文件、执行文件路径以及通信参数具体包括步骤:
获取用户指定的执行文件;
将所述用户指定的执行文件转换为ELF文件,并记录ELF文件路径以及通
信参数。
3.根据权利要求1或2所述的设备命令行的实现方法,其特征在于,所述
接收用户输入命令,并采用C语言解析用户输入命令的含义具体包括步骤:
设置C语言语法解析器;
接收用户输入命令,通过所述C语言语法解析器解析用户输入命令的含义。
4.根据权利要求1或2所述的设备命令行的实现方法,其特征在于,所述
根据所述执行文件、所述执行文件路径以及所述通信参数,分别获得全局变量
符号和全局函数符号与地址的对应关系,生成符号与地址的映射表之后还有步
骤:
存储所述符号与地址的映射表。
5.一种设备命令行的实现系统,其特征在于,包括:
获取模块,用于获取用户指定的执行文件、执行文件路径以及通信参数;
映射表模块,用于根据所述执行文件、所述执行文件路径以及所述通信参
数,分别获得全局变量符号和全局函数符号与地址的对应关系,生成符号与地
址的映射表;
输入模块,用于接收用户输入命令,并采用C语言解析用户输入命令的含
\...
【专利技术属性】
技术研发人员:吴伟锋,
申请(专利权)人:京信通信技术广州有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。