CN111966582B - 多调试对象的集群调试系统及其管理方法和调试方法 - Google Patents

多调试对象的集群调试系统及其管理方法和调试方法 Download PDF

Info

Publication number
CN111966582B
CN111966582B CN202010731731.9A CN202010731731A CN111966582B CN 111966582 B CN111966582 B CN 111966582B CN 202010731731 A CN202010731731 A CN 202010731731A CN 111966582 B CN111966582 B CN 111966582B
Authority
CN
China
Prior art keywords
debugging
command
bottom layer
objects
message
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
CN202010731731.9A
Other languages
English (en)
Other versions
CN111966582A (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.)
Anhui Core Century Technology Co ltd
Original Assignee
Anhui Core Century Technology Co ltd
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 Anhui Core Century Technology Co ltd filed Critical Anhui Core Century Technology Co ltd
Priority to CN202010731731.9A priority Critical patent/CN111966582B/zh
Publication of CN111966582A publication Critical patent/CN111966582A/zh
Application granted granted Critical
Publication of CN111966582B publication Critical patent/CN111966582B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Abstract

本发明公开了一种多调试对象的集群调试系统及其管理方法和调试方法,涉及软件调试技术领域,其中集群调试系统包括连接于同一局域网内的上位机和调试对象,所述上位机通过调试软件配置有一个命令分发模块和若干调试管理模块;所述命令分发模块根据接入局域网的调试对象数量实例化调试管理模块,并调配所有调试管理模块,每个调试管理模块通过网络连接一个特定调试对象,包含该调试对象的所有信息,执行针对该调试对象的全部调试动作。本发明通过上位机通过软件配置的命令分发模块和调试管理模块连接系统中的所有调试对象,一条调试命令通过命令分发模块和调试管理模块发送至需要调试的每一个对象,实现一条调试命令同时对多个对象进行调试。

Description

多调试对象的集群调试系统及其管理方法和调试方法
技术领域
本发明涉及软件调试技术领域,具体是一种多调试对象的集群调试系统及其管理方法和调试方法。
背景技术
软件调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。这是保证计算机信息系统正确性的必不可少的步骤。编完计算机程序,必须送入计算机中测试。根据测试时所发现的错误,进一步诊断,找出原因和具体的位置进行修正。
嵌入式系统通常采用点对点调试方式,即一个上位机调试器同一时间内仅对一个嵌入式设备进行软件调试。一个嵌入式设备可通过JTAG链级联若干个处理器,上位机调试软件可同时调试该嵌入式设备上通过JTAG链级联的处理器,但是无法同时调试位于不同JTAG链上的处理器。
随着系统规模的扩大,系统中的处理器数量也越来越多,可达上百片主处理器的量级。这些处理器可能分布在不同的板卡上,不能级联在同一条JTAG链上;另一方面,这些处理器还可能受控于不同的在线仿真器。如果这些位于不同板卡或受控于不同在线仿真器的处理器都只能点对点进行软件调试,那么调试效率将非常低下。
开源调试器GDB提供了多调试对象的管理方法,通过inferior对象来管理一个调试对象,而GDB可以同时管理多个inferior对象,但存在以下缺陷:
1、一条调试命令只能发往当前选择的inferior,即一条调试命令只能调试一个调试对象;如果要调试其他调试对象,必须通过inferior命令指定需要调试的调试对象对应的inferior号。
2、用户必须自行维护系统中每个调试对象的IP地址、端口号,并通过add-inferior命令添加调试对象,系统中的调试对象数量达到上百个时,用户维护任务过重。
发明内容
针对现有软件调试技术中存在的不便于同时调试多个对象的问题,本发明提出一种多调试对象的集群调试系统及其管理方法和调试方法。
本发明保护一种多调试对象的集群调试系统,包括连接于同一局域网内的上位机和调试对象,所述上位机通过调试软件配置有一个命令分发模块和若干调试管理模块。
所述命令分发模块根据接入局域网的调试对象数量实例化调试管理模块,并调配所有调试管理模块,每个调试管理模块通过网络连接一个特定调试对象,包含该调试对象的所有信息,执行针对该调试对象的全部调试动作。
上位机调试软件配置有调试命令输入接口,输入的调试命令中至少包含一个调试对象的IP地址和端口号,所述命令分发模块将输入的调试命令转换为底层命令报文,并根据其中包含的IP地址、端口号,将底层命令报文分发至对应的调试管理模块,再经由调试管理模块转换成底层调试报文,发送至此次调试命令针对的调试对象;调试对象为多核时,输入的调试命令中还包含核号。
本发明还保护上述集群调试系统的管理方法,包括以下步骤:
1、上位机调试软件向局域网内的特定端口发送广播包,调试对象不断监听该特定端口;
2、调试对象监听到广播包,向上位机发送包含本机信息的回包,其中本机信息包括IP地址、端口号、芯片类型及核数;
3、上位机调试软件根据回包内容确定接入调试系统中的调试对象数量及每个调试对象的具体信息;
4、若探测到新增的调试对象,则为该调试对象实例化一个调试管理模块,与该调试对象建立固定会话连接。
本发明还保护上述集群调试系统的调试方法,其具体流程为,命令分发模块将输入的调试命令转换为底层命令报文,并根据其中包含的IP地址、端口号,将底层命令报文分发至对应的一个或多个调试管理模块,再经由调试管理模块转换成底层调试报文并发送至与其连接的调试对象;调试对象为多核时,调试命令中包含的核号用于指定该调试命令针对的一个或多个调试对象的哪一个或哪几个核。
本发明的有益效果:1、通过上位机通过软件配置的命令分发模块和调试管理模块连接系统中的所有调试对象,一条调试命令通过命令分发模块和调试管理模块发送至需要调试的每一个对象,实现一条调试命令同时对多个对象进行调试;2、对于多核的调试对象,调试命令能够分配至具体调试对象的具体核号;3、随时探测系统中可供调试的对象,帮助用户管理系统中的调试对象。
附图说明
图1为多调试对象的集群调试系统的结构框图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
一种多调试对象的集群调试系统,如图1所示,包括连接于同一局域网内的上位机和调试对象,所述上位机通过调试软件配置有一个命令分发模块和若干调试管理模块。上位机调试软件配置有调试命令输入接口,输入的调试命令中至少包含一个调试对象的IP地址和端口号;调试对象为多核时,输入的调试命令中还包含核号。
所述命令分发模块根据接入局域网的调试对象数量实例化调试管理模块,并调配所有调试管理模块,每个调试管理模块通过网络连接一个特定调试对象,包含该调试对象的所有信息,执行针对该调试对象的全部调试动作。这里的调试对象包括但不限于在线仿真器、板卡。
本发明公开的多调试对象的集群调试系统的调试方法包括以下步骤:
1、所述命令分发模块将输入的调试命令转换为底层命令报文,并根据其中包含的IP地址、端口号,将底层命令报文分发至对应的调试管理模块;
2、底层命令报文经由调试管理模块转换成底层调试报文,发送至此次调试命令针对的调试对象。
调试命令中可以包含多个调试对象的IP地址和端口号;调试对象为多核时,调试命令中还应包含核号,用于指定该调试命令针对的一个或多个调试对象的哪一个或哪几个核。
当需要同时调试多个对象时,在调试命令中明确给出需要调试的多个对象的IP地址和端口号即可,命令分发模块会根据调试命令中包含的IP地址和端口号,将调试命令转换为底层命令报文,发至对应的调试管理模块。每个调试管理模块通过网络连接一个特定调试对象,调试管理模块接收到底层命令报文后将其转换成底层调试报文并发送至与其连接的调试对象,完成调试动作,从而实现了一条调试命令同时对多个对象进行调试。
在整个调试过程中,命令分发模块与调试管理模块是一对多的关系,而调试管理模块和调试对象是严格的一对一关系。
随着时间推移,局域网内可能会接入新的调试对象,那么调试系统如何去识别和连接新的调试对象是一个值得思考的问题。
本发明采用上位机广播的方式获取接入局域网中调试对象的信息,实现新的调试对象与调试系统的连接,具体包括以下步骤:
1、上位机调试软件向局域网内的特定端口发送广播包,调试对象不断监听上位机该特定端口;
2、调试对象监听到广播包,向上位机发送包含本机信息的回包,其中本机信息包括IP地址、端口号、芯片类型及核数;
3、上位机调试软件根据回包内容确定接入调试系统中的调试对象数量及每个调试对象的具体信息;
4、若探测到新增的调试对象,则为该调试对象实例化一个调试管理模块,与该调试对象建立固定会话连接。每个调试管理模块包含该调试对象的所有信息,执行针对该调试对象的全部调试动作。
通过上述管理方式,实现了调试对象的自动接入和自动维护,能够随时探测调试系统中可供调试的对象,帮助用户管理系统中的调试对象。当存在调试对象脱离局域网时,上位机也能够及时发现。
显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。

Claims (4)

1.一种多调试对象的集群调试系统,其特征在于,包括连接于同一局域网内的上位机和调试对象,所述上位机通过调试软件配置有一个命令分发模块和若干调试管理模块;
所述命令分发模块根据接入局域网的调试对象数量实例化调试管理模块,并调配所有调试管理模块,每个调试管理模块通过网络连接一个特定调试对象,包含该调试对象的所有信息,执行针对该调试对象的全部调试动作;
上位机调试软件配置有调试命令输入接口,输入的调试命令中至少包含一个调试对象的IP地址和端口号,所述命令分发模块将输入的调试命令转换为底层命令报文,并根据其中包含的IP地址、端口号,将底层命令报文分发至对应的调试管理模块,再经由调试管理模块转换成底层调试报文,发送至此次调试命令针对的调试对象。
2.根据权利要求1所述的多调试对象的集群调试系统,其特征在于,调试对象为多核时,输入的调试命令中还包含核号。
3.一种基于权利要求2所述的多调试对象的集群调试系统的管理方法,其特征在于,包括以下步骤:
步骤1,上位机调试软件向局域网内的特定端口发送广播包,调试对象不断监听该特定端口;
步骤2,调试对象监听到广播包,向上位机发送包含本机信息的回包,其中本机信息包括IP地址、端口号、芯片类型及核数;
步骤3,上位机调试软件根据回包内容确定接入调试系统中的调试对象数量及每个调试对象的具体信息;
步骤4,若探测到新增的调试对象,则为该调试对象实例化一个调试管理模块,与该调试对象建立固定会话连接。
4.一种基于权利要求2所述的多调试对象的集群调试系统的调试方法,其特征在于,具体流程为,命令分发模块将输入的调试命令转换为底层命令报文,并根据其中包含的IP地址、端口号,将底层命令报文分发至对应的一个或多个调试管理模块,再经由调试管理模块转换成底层调试报文并发送至与其连接的调试对象;调试对象为多核时,调试命令中包含的核号用于指定该调试命令针对的一个或多个调试对象的哪一个或哪几个核。
CN202010731731.9A 2020-07-27 2020-07-27 多调试对象的集群调试系统及其管理方法和调试方法 Active CN111966582B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010731731.9A CN111966582B (zh) 2020-07-27 2020-07-27 多调试对象的集群调试系统及其管理方法和调试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010731731.9A CN111966582B (zh) 2020-07-27 2020-07-27 多调试对象的集群调试系统及其管理方法和调试方法

Publications (2)

Publication Number Publication Date
CN111966582A CN111966582A (zh) 2020-11-20
CN111966582B true CN111966582B (zh) 2022-09-13

Family

ID=73362814

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010731731.9A Active CN111966582B (zh) 2020-07-27 2020-07-27 多调试对象的集群调试系统及其管理方法和调试方法

Country Status (1)

Country Link
CN (1) CN111966582B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101251819A (zh) * 2007-12-11 2008-08-27 浙江大学 一种适用于多处理器核系统芯片的调试方法
CN103227979A (zh) * 2013-03-21 2013-07-31 天闻数媒科技(北京)有限公司 一种批量管理移动设备的方法及其系统
CN105306536A (zh) * 2015-09-22 2016-02-03 上海斐讯数据通信技术有限公司 基于WiFi的智能终端远程执行服务命令的方法
CN107704346A (zh) * 2017-08-08 2018-02-16 湖南国科微电子股份有限公司 Soc芯片调试方法及调试系统
CN109866209A (zh) * 2018-11-29 2019-06-11 珠海格力电器股份有限公司 一种远程调试方法、系统及计算机可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101286883A (zh) * 2008-05-04 2008-10-15 杭州华三通信技术有限公司 分布式设备中设备板卡的集中调试系统及集中调试方法
US8972945B2 (en) * 2010-10-21 2015-03-03 International Business Machines Corporation Collaborative software debugging in a distributed system with client-specific access control
CN101997737A (zh) * 2010-11-04 2011-03-30 中兴通讯股份有限公司 串口定位故障方法及系统
US20120278790A1 (en) * 2011-04-26 2012-11-01 International Business Machines Corporation Collaborative Software Debugging In A Distributed System With Real-Time Variable Modification Indicators

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101251819A (zh) * 2007-12-11 2008-08-27 浙江大学 一种适用于多处理器核系统芯片的调试方法
CN103227979A (zh) * 2013-03-21 2013-07-31 天闻数媒科技(北京)有限公司 一种批量管理移动设备的方法及其系统
CN105306536A (zh) * 2015-09-22 2016-02-03 上海斐讯数据通信技术有限公司 基于WiFi的智能终端远程执行服务命令的方法
CN107704346A (zh) * 2017-08-08 2018-02-16 湖南国科微电子股份有限公司 Soc芯片调试方法及调试系统
CN109866209A (zh) * 2018-11-29 2019-06-11 珠海格力电器股份有限公司 一种远程调试方法、系统及计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Design of Cloud Platform-based Intelligent Service Command and Dispatch System;Shao Y B et al.;《Telecom Power Technology》;20181231;全文 *
基于调试代理的远程协同调试模型;胡先浪 等;《计算机技术与发展》;20110531;第21卷(第05期);全文 *

Also Published As

Publication number Publication date
CN111966582A (zh) 2020-11-20

Similar Documents

Publication Publication Date Title
CN109361562B (zh) 一种基于关联网络设备接入的自动化测试方法
US20010049594A1 (en) Method and system for hardware simulation
CN107463362A (zh) 基于多个Jenkins的持续部署的方法和系统
CN103761185B (zh) 一种自动化测试系统及方法
CN103731663B (zh) 一种智能电视的测试方法和装置
CN107193730A (zh) 一种自动化的接口测试方法
CN111353266B (zh) 集成电路模块间协同工作的验证系统及验证方法
CN107612775A (zh) 一种节点二级连服务器的dc测试方法与系统
CN101668036B (zh) 分布式设备的模拟系统和模拟分布式设备处理业务的方法
CN112115044A (zh) 电力信息通信设备自动化测试方法及系统
CN110990289B (zh) 一种自动提交bug的方法、装置、电子设备及存储介质
CN112650676A (zh) 软件测试方法、装置、设备及存储介质
CN102291274A (zh) 一种实现网络测试仪表自动适配的系统及方法
CN115858221A (zh) 存储设备的管理方法、装置、存储介质及电子设备
CN105550103B (zh) 一种基于自定义测试脚本的自动化测试方法
CN111966582B (zh) 多调试对象的集群调试系统及其管理方法和调试方法
CN101694634B (zh) 自动化测试系统中设备分配方法
CN113658351A (zh) 一种产品生产的方法、装置、电子设备及存储介质
CN110764036B (zh) 一种智能配变终端测试方法及系统
CN113127356A (zh) 压测方法、装置、电子设备及存储介质
CN102929651B (zh) 基于芯片阵列的在线加载系统及其方法
CN112035346A (zh) 基于嵌入式dsp操作系统的自动化测试方法、系统及介质
CN116467188A (zh) 一种多环境场景下的通用本地复现系统和方法
CN115993937A (zh) 一种多进程固态硬盘仿真环境实现方法和装置
CN115934559A (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