一种调试命令的转换方法和设备的制作方法

文档序号:6521802阅读:203来源:国知局
一种调试命令的转换方法和设备的制作方法
【专利摘要】本发明的实施例公开一种调试命令的转换方法和设备,涉及计算机应用领域,解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。该方法包括:接收用户输入的文本格式的调试命令;根据存储的格式化文本查找所述文本格式的调试命令对应的命令编码,其中,所述命令编码与操作码和操作目标对应;获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果;根据所述格式化文本将所述二进制格式的调试结果转换成文本格式的调试结果。本发明的实施例应用于嵌入式技术。
【专利说明】一种调试命令的转换方法和设备
【技术领域】
[0001]本发明涉及计算机应用领域,尤其涉及一种调试命令的转换方法和设备。
【背景技术】
[0002]在嵌入式系统产品中在调试场景中主要分为两种:在线调试与离线调试。现有方法在调试命令转换中根据调试场景的不同存在两种方法,包括:第一种,调试客户端增加和嵌入式软件系统以及产品业务相关的定制调试功能,调试客户端接收到用户调试命令后,转换成二进制或类二进制的通信报文,调试服务端通过解析通信报文完成命令请求,并反馈调试客户端二进制或类二进制的通信报文,通信客户端通过解析后向客户反馈可读性好的文本信息;第二种,调试服务端增加和嵌入式软件系统以及产品业务相关的定制调试功能,调试客户端接收用户的调试命令后转发至调试服务端,该调试服务端通过解析完成命令请求,并反馈调试客户端可读性好的文本信息,由调试客户端向用户反馈文本命令结果。
[0003]上述第一种方法在实现调试命令转换中,若目标系统或产品业务修改,对调试客户端都会产生影响,导致对于不同版本和不同建构的目标系统需要实现不同的调试客户端,增加了设计成本;且一条调试命令被调试客户端分解成多条二进制或类二进制通信协议报文,对于定制的业务相关的调试命令需要多次的通信调试才能实现,导致调试命令的响应时间增长;第二种方法仅限于在线调试场景,若离线调试所有命令解析和实现必须有调试客户端才能完成;且文本信息占用空间大,流量需求高,命令响应时间长。

【发明内容】

[0004]本发明的实施例提供一种调试命令的转换方法和设备及通信系统,解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。
[0005]为达到上述目的,本发明的实施例采用如下技术方案:
[0006]第一方面,提供一种调试命令的转换方法,包括:
[0007]接收用户输入的文本格式的调试命令;
[0008]根据存储的格式化文本查找所述文本格式的调试命令对应的命令编码,其中,所述命令编码与操作码和操作目标对应;
[0009]获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果;
[0010]根据所述格式化文本将所述二进制格式的调试结果转换成文本格式的调试结果。
[0011]结合第一方面,在第一种可能的实现方式中,当调试客户端在线调试时,所述获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果,具体包括:
[0012]将所述命令编码发送至调试服务端,以使所述调试服务端根据所述命令编码查找所述命令编码对应的操作码和操作目标,并根据所述操作码调试所述操作目标得到二进制格式的调试结果;
[0013]接收所述调试服务端发送的所述二进制格式的调试结果。
[0014]结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述将所述命令编码发送至调试服务端,以使所述调试服务端根据所述命令编码查找所述命令编码对应的操作码和操作目标,并根据所述操作码调试所述操作目标得到二进制格式的调试结果,具体包括:
[0015]将所述命令编码发送至所述调试服务端,以使所述调试服务端根据所述格式化文本查找所述命令编码对应的命令条目,并根据所述命令条目识别出所述命令编码对应的操作码和操作目标;根据所述格式化文本中的格式符为对应所述操作目标的操作结果配置所需的空间,并根据所述操作码调试所述操作目标,得到对应所述操作目标的操作结果;
[0016]将所述操作结果存入已配置好的所述空间,并通过二进制编码得到调试结果。
[0017]结合第一方面,在第三种可能的实现方式中,当调试客户端离线调试时,所述根据存储的格式化文本查找所述文本格式的调试命令对应的命令编码之后,还包括:
[0018]根据所述命令编码查找所述命令编码对应的操作码和操作目标;
[0019]将所述操作码与所述操作目标通过二进制编码得到二进制格式的调试命令;
[0020]所述获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果,具体包括:
[0021]根据所述二进制格式的调试命令调用转储文件得到所述二进制格式的调试命令对应的调试结果。
[0022]结合第一方面至第一方面的第三种可能的实现方式中任一种可能的实现方式,在第四种可能的实现方式中,所述根据所述格式化文本将所述二进制格式的调试结果转换成文本格式的调试结果,包括:
[0023]根据所述格式化文本中格式符的顺序编码,从所述调试结果中提取操作结果;
[0024]去除所述操作结果中的格式符得到文本格式的操作结果。
[0025]结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述格式化文本包括:格式符、命令编码、操作码和操作目标。
[0026]第二方面,提供一种调试客户端,包括:
[0027]存储单元,用于存储格式化文本;
[0028]通信单元,用于接收用户输入的文本格式的调试命令;
[0029]获取单元,用于获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果;
[0030]转换单元,用于根据所述格式化文本将所述获取单元获取的二进制格式的调试结果转换成文本格式的调试结果。
[0031]结合第二方面,在第一种可能的实现方式中,所述调试客户端在线调试时,所述获取单元具体用于:
[0032]将所述命令编码发送至调试服务端,以使所述调试服务端根据所述命令编码查找所述命令编码对应的操作码和操作目标,并根据所述操作码调试所述操作目标得到二进制格式的调试结果;
[0033]接收所述调试服务端发送的所述二进制格式的调试结果。[0034]结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述获取单元,具体用于:
[0035]将所述命令编码发送至所述调试服务端,以使所述调试服务端根据所述格式化文本查找所述命令编码对应的命令条目,并根据所述命令条目识别出所述命令编码对应的操作码和操作目标;根据所述格式化文本中的格式符为对应所述操作目标的操作结果配置所需的空间,并根据所述操作码调试所述操作目标,得到对应所述操作目标的操作结果;
[0036]将所述操作结果存入已配置好的所述空间,并通过二进制编码得到调试结果。
[0037]结合第二方面,在第三种可能的实现方式中,所述调试客户端离线调试时,所述查询单元,还用于根据所述命令编码查找所述命令编码对应的操作码和操作目标;
[0038]所述转换单元,具体用于将所述操作码与所述操作目标通过二进制编码得到二进制格式的调试命令;
[0039]所述获取单元,具体用于根据所述二进制格式的调试命令调用转储文件得到所述二进制格式的调试命令对应的调试结果。
[0040]结合第二方面或第二方面第一种可能的实现方式至第二方面第三种可能的实现方式中任一种可能的实现方式,在第四种可能的实现方式中,所述转换单元,具体用于:
[0041]根据所述格式化文本中格式符的顺序编码,从所述调试结果中提取操作结果;
[0042]去除所述操作结果中的格式符得到文本格式的操作结果。
[0043]结合第二方面第四种可能的实现方式,在第五种可能的实现方式中,所述格式化文本包括:格式符、命令编码、操作码和操作目标。
[0044]本发明实施例提供的调试命令的转换方法和设备,调试客户端根据存储的格式化文本查找文本格式的调试命令对应的命令编码,所述命令编码与操作码和操作目标对应,获取根据所述操作码与操作目标生成的二进制格式的调试结果,根据所述格式化文本将所述二进制格式的调试结果转换成文本格式的调试结果。解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了在线调试时调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。
【专利附图】

【附图说明】
[0045]为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0046]图1为本发明实施例提供的一种调试命令的转换方法的流程示意图;
[0047]图2为本发明实施例提供的另一种调试命令的转换方法的流程示意图;
[0048]图3为本发明实施例提供的又一种调试命令的转换方法的流程示意图;
[0049]图4为本发明实施例提供的一种调试客户端的结构示意图;
[0050]图5为本发明另一实施例提供的一种调试客户端的结构示意图。
【具体实施方式】
[0051]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0052]本发明实施例提供一种调试命令的转换方法,参照图1所示,本实施例以调试客户端实现调试命令的转换方法为例进行说明,具体包括以下流程:
[0053]101、调试客户端接收用户输入的文本格式的调试命令。
[0054]102、根据存储的格式化文本查找所述文本格式的调试命令对应的命令编码,其中,所述命令编码与操作码和操作目标对应。
[0055]其中格式化文本主要包括:格式符、命令编码、操作码和操作目标。并且分布于调试客户端。操作码为调试命令对应的操作的编码,所述操作包括读、写等,具体的,可以是查询或修改;操作目标为调试命令操作的对象,包含了全局变量、内存、寄存器和操作系统的信息;格式化文本中包含的格式化符号能够用于文本的格式化输出与二进制信息空间的大小分配。
[0056]这里格式化文本中还包括命令名称,其中命令名称对应于用户指示的命令,便于用户操作以及理解。
[0057]由于使用格式化文本可以实现调试命令在线调试命令和离线调试命令两种场景中使用,并且命令的增加和删除方面具备可编写性,故本发明实施例提供的一种调试命令的转换在调试客户端与调试服务端都可以完成格式化文本与二进制命令之间的转换。
[0058]103、调试客户端获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果。
[0059]其中,该调试结果的制式包括二进制,该格式化文本分布于调试客户端。
[0060]104、调试客户端根据格式化文本将二进制格式的调试结果转换成文本格式的调试结果。
[0061]这里如步骤102中所述,调试客户端将获取到的二进制格式的调试结果根据格式化文本中的格式符顺序编码提取操作结果,然后通过去除操作结果中的格式符,得到格式化后的操作结果,进而得到文本格式的调试结果。
[0062]这里调试客户端不仅可以通过调用转储文件离线调制得到根据操作码和操作目标生成的调试结果;还通过接收调试服务端在线调试发送的调试结果,通过解析调试结果将解析后得到的调试结果以文本信息的形式反馈至用户,具体的,调试客户端接收的调试结果是调试服务端以二进制格式发送的,调试客户端接收二进制格式调试结果后通过转换将二进制格式转换为文本信息,这里调试客户端与调试服务端通过二进制格式进行通信提高了调试命令的响应速度。
[0063]本发明实施例提供的调试命令的转换方法,调试客户端通过将用户输入的文本格式的调试指令根据存储的格式化文本由文本格式的调试命令查询命令编码,其中,命令编码为二进制格式,且与操作码和操作目标对应;根据操作码和操作目标获取二进制格式的调试结果,根据格式化文本将该二进制格式的调试结果转换成文本格式的调试结果,并向用户显示文本格式的调试结果。解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。
[0064]具体的,以下结合具体的实施例进行说明。[0065]可以在图1实施例的基础上,参照图2所示,本发明的实施例提供了一种调试命令的转换方法,参照图2所示,为调试客户端与调试服务端在线调试的过程,具体步骤如下:
[0066]201、调试客户端接收用户输入的文本格式的调试命令,并根据存储的格式化文本将文本格式的调试命令转换成二进制格式的调试命令。
[0067]这里二进制格式命令包括二进制命令或类二进制命令。其中格式化文本主要包括:命令编码、操作码和操作目标。这里操作码主要用于查询或修改调试命令;操作目标包含了全局变量、内存、寄存器和操作系统的信息;格式化文本中包含的格式化符号能够用于文本的格式化输出与二进制信息空间的大小分配。例如,查询寄存及操作:操作码为查询动作对应的编码,操作目标为对应的寄存器编号。
[0068]由于使用格式化文本可以实现调试命令在线调试命令和离线调试命令两种场景中使用,且命令的增加和删除方面操作便捷,故本发明实施例提供的一种调试命令的转换在调试客户端与调试服务端都可以完成格式化文本与二进制命令之间的转换。
[0069]具体的,调试客户端根据调试命令由文本信息转换成二进制格式命令包括:调试客户端根据格式化文本查找调试命令对应的命令编码。
[0070]这里用户以文本串的形式将调试命令输入给调试客户端,为了提高文本串的查询效率,调试客户端使用哈希算法对文本串进行命令编码,从而调试客户端通过命令编码查找到对应的命令名称。
[0071]202、调试客户端将命令编码发送至调试服务端,以便获取该调试服务端根据命令编码生成的调试结果。
[0072]其中,命令编码为二进制格式。
[0073]具体的,调试服务端根据命令编码生成的调试结果,包括:
[0074]调试服务端根据格式化文本查找命令编码对应的命令条目,并根据命令条目识别出命令编码对应的操作码和操作目标。
[0075]调试服务端根据格式化文本中的格式符为对应操作目标的操作结果配置所需的空间,并根据操作码调试所述操作目标,得到对应操作目标的操作结果。
[0076]调试服务端将操作结果存入已配置好的所述空间,并通过二进制编码得到调试结果O
[0077]其中,嵌入式系统中对每一类调试命令分配各自的操作码和操作目标的编码,例如,查询寄存器操作,操作码为“查询命令”对应的编码,操作目标为对应的寄存器编号。
[0078]这里格式化文本中的格式符为调试客户端与调试服务端互相协定好的一种格式,例如C语言中的输出printf函数的格式化函数,比如%d及%s,每一种格式符都代表一种操作目标类型,并代表操作目标的二进制结果需要分配的地址空间大小,从而当前嵌入式系统根据该地址空间大小为每个操作目标分配二进制结果空间。其中本发明实施例中二进制结果即为调试命令转换为二进制后的命令制式。
[0079]这里调试服务端根据调试命令完成实际的调试操作,例如,查询寄存器值,调试客户端通过操作码调用(即,查询操作)相应的系统接口,并以操作目标的编码作为接口参数,查询到实际的寄存器值。其中实际的寄存器至对应于该操作目标的操作结果。
[0080]这里调试服务端将调试命令转换成二进制的命令内容存入得到的二进制命令所需的空间中,得到二进制命令/[目息。[0081 ] 其中本发明实施例中的二进制格式命令以二进制命令为例进行说明,这里调试服务端通过接收二进制命令,根据该二进制命令通过格式化文本查找对应的命令编码,并根据该命令编码由格式化文本中查找相应的命令条目,进一步的由该命令条目中获取对应的操作码和操作目标,从而将调试客户端发送的二进制命令转化为二进制调试命令,并且通过调试服务端的嵌入式系统结构完成对应的获取信息或修改信息操作,然后调试服务端根据调试后得到的调试结果由命令条目中的格式化文本的格式符为每个操作结果配置对应的二进制空间,再由调试服务端将二进制空间以集合的形式发送至调试客户端,这里调试服务端以集合形式发送的二进制空间包含了对应的调试结果,调试结果将以二进制信令的形式发送至调试客户端。
[0082]具体的,本发明实施例提供的调试服务端中包括与调试客户端一样的格式化文本模块、转换器和二进制调试命令模块,其中调试服务端通过接收调试客户端的二进制格式命令,通过转换器从格式化文本模块中搜索到相应的命令名称,并根据命令名称从命令条目中识别对应该命令的操作码和操作目标,使得调试服务端根据操作码与操作目标完成该二进制格式命令对应的操作,从而根据该二进制格式命令进行操作得到调试结果,并将调试结果以二进制命令的形式发送至调试客户端。
[0083]调试客户端接收调试服务端发送的二进制格式的调试结果。
[0084]203、调试客户端根据格式化文本将二进制格式的调试结果转换成文本格式的调试结果。
[0085]这里调试客户端根据命令编码查找命令名称,通过哈希算法对文本串进行命令编码,通过命令编码查找到对应的命令名称。
[0086]其中,调试客户端根据格式化文本中的格式符顺序编码由调试结果中提取操作结果O
[0087]具体的,调试客户端根据格式化文本中的格式符进行解析获取每个操作目标分配对应的二进制所需的空间大小。其中每一种操作目标都需要占用一定的空间大小,通过解析格式符就能获取到实际占用的空间大小。其中,该调试结果中的操作结果根据格式符的顺序编码进行排列。这里根据获得的二进制所需的空间大小,依次从二进制信息中获取调试结果,其中,调试结果是依照格式符的顺序编码在二进制信息集合中的,通过按照格式符的顺序编码排列的空间从二进制信息集合中提取调试结果。
[0088]调试客户端通过去除该操作结果中的格式符得到格式化后的操作结果,该格式化后的操作结果为文本信息其中本发明实施例是调试客户端与调试服务端在线调置过程,通过对调试服务端与调试客户端对应的设置格式文本模块以及二进制调试命令模块,使得在制式上调试服务端在线调制时能够与调试客户端达到一致,从而调试服务端能够识别并处理调试客户端发出的调试命令。
[0089]204、调试客户端向用户显示文本格式的调试结果。
[0090]这里调试客户端通过接收调试服务端在线调试发送的调试结果,并通过解析调试结果将解析后得到的调试结果以文本信息的形式反馈至用户。具体的,调试客户端接收的调试结果是调试服务端以二进制命令的形式发送的,调试客户端接收调试结果后通过格式化文本将二进制命令转换为文本信息,这里调试客户端与调试服务端通过二进制命令的进行通信提高了调试命令的响应速度,同时转换成文本信息便于用户理解。[0091]本发明实施例提供的调试命令的转换方法,调试客户端根据用户发送的调试命令查找命令编码,其中,命令编码为二进制格式,将该二进制格式的命令编码发送至调试服务端;调试服务端根据二进制格式的命令编码查找对应的操作码和操作目标并用查询到的操作码对操作目标进行调试,得到二进制格式的调试结果,然后以二进制格式命令的方式发送至调试客户端;调试客户端将该调试结果转换为文本信息反馈至用户。解决了在线调试运行环境所需的命令转换的实现,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,缩短调试命令的响应时间。
[0092]具体的,以下结合具体的实施例进行说明。
[0093]可以在图1的实施例的基础上,参照图3所示,本发明的实施例提供了一种调试命令的转换方法,参照图3所示,为调试客户端离线调试的过程,具体步骤如下:
[0094]301、调试客户端接收用户输入的文本格式的调试命令,并根据存储的格式化文本将文本格式的调试命令转换成二进制格式的调试命令。
[0095]这里二进制格式的命令包括二进制命令或类二进制命令。其中格式化文本主要包括:命令编码、操作码和操作目标。这里操作码主要用于查询或修改调试命令;操作目标包含了全局变量、内存、寄存器和操作系统的信息;格式化文本中包含的格式化符号能够用于文本的格式化输出与二进制信息空间的大小分配。例如,查询寄存及操作:操作码为查询动作对应的编码,操作目标为对应的寄存器编号。
[0096]由于使用格式化文本可以实现调试命令在线调试命令和离线调试命令两种场景中使用,且命令的增加和删除方面操作便捷,故本发明实施例提供的一种调试命令的转换在调试客户端与调试服务端都可以完成格式化文本与二进制命令之间的转换。
[0097]具体的,调试客户端根据调试命令由文本信息转换成二进制格式命令包括:
[0098]a、调试客户端在格式化文本中查找调试命令对应的命令编码,并根据命令编码查找对应的命令条目。
[0099]b、调试客户端根据命令条目识别出调试命令的操作码和操作目标。
[0100]这里用户以文本串的形式将调试命令发送给调试客户端,为了提高文本串的查询效率,调试客户端使用哈希算法对文本串进行命令编码,从而调试客户端通过命令编码查找到对应的命令名称。
[0101]其中,嵌入式系统中对每一类调试命令分配各自的操作码和操作目标的编码,例如,查询寄存器操作,操作码为“查询命令”对应的编码,操作目标为对应的寄存器编号。
[0102]C、调试客户端将操作码与操作目标通过二进制编码得到二进制格式命令。
[0103]这里格式化文本中的格式符为调试客户端与调试服务端互相协定好的一种格式,例如C语言中的输出printf函数的格式化函数,比如%d及%s,每一种格式符都代表一种操作目标类型,并代表操作目标的二进制结果需要分配的地址空间大小,从而当前嵌入式系统根据该地址空间大小为每个操作目标分配二进制结果空间。其中本发明实施例中二进制结果的控件即为调试命令转换为二进制后的命令制式。
[0104]这里调试客户端根据调试命令完成实际的调试操作,例如,查询寄存器值,调试客户端通过操作码调用(即,查询操作)相应的系统接口,并以操作目标的编码作为接口参数,查询到实际的寄存器值。其中实际的寄存器至对应于该操作目标的操作结果。
[0105]302、调试客户端调用转储文件,并根据二进制格式命令调用转储文件解析模块完成对转储文件的解析,得到二进制格式的调试结果。
[0106]其中,该转储文件包含所述调试客户端调试命令所需的调试信息。
[0107]转储文件解析模块为调试客户端中负责响应接收的用户的调试命令的模块,其中,转储文件解析模块具有与调试服务端相同或相似的功能,能够通过接收二进制命令执行对应该二进制命令的操作,并得到对应该二进制命令的调试结果。
[0108]得到二进制格式的调试结果。
[0109]303、调试客户端根据格式化文本将二进制格式的调试结果转换成文本格式的调试结果。
[0110]这里调试客户端根据命令编码查找命令名称,通过哈希算法对文本串进行命令编码,通过命令编码查找到对应的命令名称。
[0111]其中,调试客户端根据格式化文本中的格式符顺序编码由调试结果中提取操作结果O
[0112]具体的,调试客户端根据格式化文本中的格式符进行解析获取每个操作目标分配对应的二进制所需的空间大小。其中每一种操作目标都需要占用一定的空间大小,通过解析格式符就能获取到实际占用的空间大小。其中,该调试结果中的操作结果根据格式符的顺序编码进行排列。这里根据获得的二进制所需的空间大小,依次从二进制信息中获取调试结果,其中,调试结果是依照格式符的顺序编码在二进制信息集合中的,通过按照格式符的顺序编码排列的空间从二进制信息集合中提取调试结果。
[0113]调试客户端去除该操作结果中的格式符得到格式化后的操作结果,该格式化后的操作结果为文本信息。
[0114]304、调试客户端向用户显示文本格式的调试结果。
[0115]这里由于调用了转储文件同时通过采用了格式化文本使得调试客户端在离线的环境中依旧能够进行调试。其中通过采用二进制格式命令进行调试客户端内部通信使得缩短了命令的响应时间,节约了时间。
[0116]本发明实施例提供的调试命令转换的方法,调试客户端在离线的环境下通过根据格式化文本进行解析用户发送的调试命令,并根据调试命令调用转储文件解析模块对转储文件进行解析得到调试结果,并通过将调试结果由二进制命令转换为文本信息反馈至用户,解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,缩短调试命令的响应时间。
[0117]本发明图1、图2或图3所对应的实施例中,调试客户端在接收用户发送的调试命令时无论在线调试或离线调试均根据格式化文本解析用户的调试命令,以及根据格式化文本解析调试命令得到的调试结果,其中,由于格式化文本分布于调试客户端以及调试服务端,且格式化文本对于调试人员具备可修改的功能,故对于不同版本和不同架构的目标系统,调试客户端和/或调试服务端能够解决与目标系统的控制耦合,使得能够适用于多种运行环境,从而降低了开发成本。
[0118]本发明实施例提供一种调试客户端4,该调试客户端具体可以为嵌入式通讯中任一种客户终端,如私人计算机PC这种在嵌入式通讯中任一能够实现调试命令的转换方法的设备,在本发明的实施例中对调试客户端的具体形式不做具体限制,以可以实现本发明的实施例所提供的上述任一调试命令的转换方法为准,参照图4所示,包括:
[0119]存储单元41,用于存储格式化文本;
[0120]通信单元42,用于接收用户输入的文本格式的调试命令;
[0121]查询单元43,用于用于根据所述存储单元存储的格式化文本查找所述文本格式的调试命令对应的命令编码,其中,所述命令编码与操作码和操作目标对应;
[0122]获取单元44,用于获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果;
[0123]转换单元45,用于根据格式化文本将获取单元43获取的二进制格式的调试结果转换成文本格式的调试结果;
[0124]通信单元42,还用于向用户显示转换单元获得的文本格式的调试结果。
[0125]本发明实施例提供的调试客户端,调试客户端通过将用户输入的文本格式的调试指令根据存储的格式化文本由文本格式的调试命令转换为二进制格式的命令,并且根据该二进制格式的命令获取对应该二进制格式的命令生成的二进制格式的调试结果,根据格式化文本将该二进制格式的调试结果转换成文本格式的调试结果,并向用户显示文本格式的调试结果。解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。
[0126]可选的,调试客户端4在线调试时,
[0127]获取单元44,具体用于:将命令编码发送至调试服务端,以使所述调试服务端根据所述命令编码查找所述命令编码对应的操作码和操作目标,并根据所述操作码调试所述操作目标得到二进制格式的调试结果,接收所述调试服务端发送的所述二进制格式的调试结果。
[0128]进一步的,获取单元44,具体用于:
[0129]将命令编码发送至调试服务端,以使所述调试服务端根据所述格式化文本查找所述命令编码对应的命令条目,并根据所述命令条目识别出所述命令编码对应的操作码和操作目标;根据所述格式化文本中的格式符为对应所述操作目标的操作结果配置所需的空间,并根据所述操作码调试所述操作目标,得到对应所述操作目标的操作结果;
[0130]将操作结果存入已配置好的空间,并通过二进制编码得到调试结果。
[0131]可选的,调试客户端4离线调试时,
[0132]查询单元43,还用于根据所述命令编码查找所述命令编码对应的操作码和操作目标;
[0133]转换单元45,具体用于将所述操作码与所述操作目标通过二进制编码得到二进制格式的调试命令;
[0134]进一步,获取单元44,具体用于根据所述二进制格式的调试命令调用转储文件得到所述二进制格式的调试命令对应的调试结果。
[0135]可选的,转换单元45具体用于:根据所述格式化文本中格式符的顺序编码,从所述调试结果中提取操作结果;去除所述操作结果中的格式符得到文本格式的操作结果。
[0136]进一步可选的,格式化文本包括:格式符、命令编码、操作码和操作目标。
[0137]本发明实施例提供的调试客户端,调试客户端通过将用户发送的调试指令有文本信息转换为二进制格式命令,并将该二进制格式命令发送至调试服务端,以便调试服务端通过解析该二进制格式命令向该调试客户端反馈根据用户的调试命令得到的调试结果,并以二进制格式命令发送至调试客户端,使得该调试客户端将该调试结果转换为文本信息反馈至用户。解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。
[0138]本发明的实施例提供一种移动终端5,参照图5所示,该移动终端4包括:至少一个处理器51、存储器52、通信接口 53和总线54,该至少一个处理器51、存储器52和通信接口 53通过总线54连接并完成相互间的通信。
[0139]该总线54可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称为 EISA)总线等。该总线 54 可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。其中:
[0140]存储器52用于存储可执行程序代码,该程序代码包括计算机操作指令。存储器52可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0141]处理器51可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
[0142]通信接口 53,主要用于实现本实施例中的装置之间的通信。
[0143]其中,存储器52,存储格式化文本;
[0144]处理器51,用于通过至少一个通信接口 53接收用户输入的第一文本格式的调试命令;
[0145]处理器51,还用于根据存储器52存储的格式化文本将文本格式的调试命令转换成二进制格式的调试命令,该格式化文本用于查找文本格式的调试命令对应的命令编码,并根据命令编码获取对应的操作码与操作目标;
[0146]处理器51,还用于获取根据二进制格式的调试命令对应的操作码与操作目标生成的二进制格式的调试结果;
[0147]处理器51,还用于向用户显示文本格式的调试结果。
[0148]本发明实施例提供的调试客户端,调试客户端通过将用户输入的文本格式的调试指令根据存储的格式化文本由文本格式的调试命令转换为二进制格式的命令,并且根据该二进制格式的命令获取对应该二进制格式的命令生成的二进制格式的调试结果,根据格式化文本将该二进制格式的调试结果转换成文本格式的调试结果,并向用户显示文本格式的调试结果。解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。
[0149]可选的,调试客户端5在线调试时,该二进制格式的调试命令包括所述命令编码,
[0150]处理器51,具体用于:将命令编码通过至少一个通信接口 53发送至调试服务端,以便调试服务端根据命令编码进行调试得到调试结果;通过至少一个通信接口 53接收调试服务端根据命令编码进行调试得到的调试结果。
[0151]进一步的,处理器51,具体用于:
[0152]将命令编码发送至调试服务端,以便
[0153]调试服务端根据格式化文本查找命令编码对应的命令条目,并根据命令条目识别出命令编码对应的操作码和操作目标;根据格式化文本中的格式符为对应操作目标的操作结果配置所需的空间,并根据操作码调试操作目标,得到对应操作目标的操作结果;
[0154]将操作结果存入已配置好的空间,并通过二进制编码得到调试结果。
[0155]可选的,调试客户端5离线调试时,
[0156]处理器51,具体还用于:将操作码与操作目标通过二进制编码得到二进制格式的命令。
[0157]进一步,处理器51,具体还用于:根据二进制格式命令调用转储文件解析模块完成对转储文件的解析,得到二进制格式的调试结果。
[0158]可选的,处理器51,具体还用于:根据格式化文本中格式符的顺序编码,从调试结果中提取操作结果;去除操作结果中的格式符得到文本格式的操作结果。
[0159]进一步,可选的,格式化文本包括:格式符、命令编码、操作码和操作目标。
[0160]本发明实施例提供的调试客户端,调试客户端通过将用户发送的调试指令有文本信息转换为二进制格式命令,并将该二进制格式命令发送至调试服务端,以便调试服务端通过解析该二进制格式命令向该调试客户端反馈根据用户的调试命令得到的调试结果,并以二进制格式命令发送至调试客户端,使得该调试客户端将该调试结果转换为文本信息反馈至用户。解决了针对不同运行环境所需的命令转换的实现,使得能够适用于多种运行环境,从而降低了开发成本,并解决了调试客户端与调试服务端之间信令交互信息量大的问题,进而缩短调试命令的响应时间。
[0161]通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘(Disk)和碟(disc)包括压缩光碟(⑶)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
[0162]总之,以上所述仅为本发明技术方案的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种调试命令的转换方法,其特征在于,包括: 接收用户输入的文本格式的调试命令; 根据存储的格式化文本查找所述文本格式的调试命令对应的命令编码,其中,所述命令编码与操作码和操作目标对应; 获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果; 根据所述格式化文本将所述二进制格式的调试结果转换成文本格式的调试结果。
2.根据权利要求1所述的方法,其特征在于,当调试客户端在线调试时,所述获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果,具体包括: 将所述命令编码发送至调试服务端,以使所述调试服务端根据所述命令编码查找所述命令编码对应的操作码和操作目标,并根据所述操作码调试所述操作目标得到二进制格式的调试结果; 接收所述调试服务端发送的所述二进制格式的调试结果。
3.根据权利要求2所述的方法,其特征在于,所述将所述命令编码发送至调试服务端,以使所述调试服务端根据所述命令编码查找所述命令编码对应的操作码和操作目标,并根据所述操作码调试所述操作目标得到二进制格式的调试结果,具体包括: 将所述命令编码发送至所述调试服务端,以使所述调试服务端根据格式化文本查找所述命令编码对应的命令条目,并根据所述命令条目识别出所述命令编码对应的操作码和操作目标;根据所述格式化文本中的格式符为对应所述操作目标的操作结果配置所需的空间,并根据所述操作码调试所述操作目标,得到对应所述操作目标的操作结果; 将所述操作结果存入已配置好的所述空间`,并通过二进制编码得到二进制格式的调试结果。
4.根据权利要求1所述的方法,其特征在于,当调试客户端离线调试时,所述根据存储的格式化文本查找所述文本格式的调试命令对应的命令编码之后,还包括: 根据所述命令编码查找所述命令编码对应的操作码和操作目标; 将所述操作码与所述操作目标通过二进制编码得到二进制格式的调试命令; 所述获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果,具体包括: 根据所述二进制格式的调试命令调用转储文件得到所述二进制格式的调试命令对应的调试结果。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述格式化文本将所述二进制格式的调试结果转换成文本格式的调试结果,包括: 根据所述格式化文本中格式符的顺序编码,从所述调试结果中提取操作结果; 去除所述操作结果中的格式符得到文本格式的操作结果。
6.根据权利要求5所述的方法,其特征在于,所述格式化文本包括:格式符、命令编码、操作码和操作目标。
7.—种调试客户端,其特征在于,包括: 存储单元,用于存储格式化文本; 通信单元,用于接收用户输入的文本格式的调试命令; 查询单元,用于根据所述存储单元存储的格式化文本查找所述文本格式的调试命令对应的命令编码,其中,所述命令编码与操作码和操作目标对应; 获取单元,用于获取根据所述命令编码对应的操作码与操作目标生成的二进制格式的调试结果; 转换单元,用于根据所述格式化文本将所述获取单元获取的二进制格式的调试结果转换成文本格式的调试结果。
8.根据权利要求7所述的调试客户端,其特征在于,所述调试客户端在线调试时,所述获取单元具体用于: 将所述命令编码发送至调试服务端,以使所述调试服务端根据所述命令编码查找所述命令编码对应的操作码和操作目标,并根据所述操作码调试所述操作目标得到二进制格式的调试结果; 接收所述调试服务端发送的所述二进制格式的调试结果。
9.根据权利要求8所述的调试客户端,其特征在于,所述获取单元,具体用于: 将所述命令编码发送至所述调试服务端,以使所述调试服务端根据所述格式化文本查找所述命令编码对应的命令条目,并根据所述命令条目识别出所述命令编码对应的操作码和操作目标;根据所述格式化文本中的格式符为对应所述操作目标的操作结果配置所需的空间,并根据所述操作码调试所述操作目标,得到对应所述操作目标的操作结果; 将所述操作结果存入已配置好的所述空间,并通过二进制编码得到调试结果。
10.根据权利要求7所述的调试客户端,其特征在于,所述调试客户端离线调试时,所述查询单元,还用于根据所述命令编码查找所述命令编码对应的操作码和操作目标; 所述转换单元,具体用于 将所述操作码与所述操作目标通过二进制编码得到二进制格式的调试命令; 所述获取单元,具体用于根据所述二进制格式的调试命令调用转储文件得到所述二进制格式的调试命令对应的调试结果。
11.根据权利要求7-10中任一项所述的调试客户端,其特征在于,所述转换单元,具体用于: 根据所述格式化文本中格式符的顺序编码,从所述调试结果中提取操作结果; 去除所述操作结果中的格式符得到文本格式的操作结果。
12.根据权利要求11所述的调试客户端,其特征在于,所述格式化文本包括:格式符、命令编码、操作码和操作目标。
【文档编号】G06F11/36GK103631716SQ201310633768
【公开日】2014年3月12日 申请日期:2013年11月29日 优先权日:2013年11月29日
【发明者】刘晓莹, 郑文钦, 崔世强, 魏伟 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1