CN102053808B - 一种打印软件信息的方法、装置及带网口的设备 - Google Patents
一种打印软件信息的方法、装置及带网口的设备 Download PDFInfo
- Publication number
- CN102053808B CN102053808B CN201010566866A CN201010566866A CN102053808B CN 102053808 B CN102053808 B CN 102053808B CN 201010566866 A CN201010566866 A CN 201010566866A CN 201010566866 A CN201010566866 A CN 201010566866A CN 102053808 B CN102053808 B CN 102053808B
- Authority
- CN
- China
- Prior art keywords
- module
- call back
- back function
- information
- structural array
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000007639 printing Methods 0.000 claims abstract description 8
- 238000012360 testing method Methods 0.000 abstract description 12
- 238000004891 communication Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 5
- 241000239290 Araneae Species 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明适用于计算机软件领域,提供了一种打印软件信息的方法、装置及带网口的设备,所述方法包括下述步骤:获取客户端发出的打印信息的请求,所述请求中包含需打印信息的模块的标识;根据所述模块的标识遍历结构数组,调用与所述模块的标识对应的回调函数;所述回调函数将信息发送到客户端。本发明利用网络能够长距离通信且普遍存在的优势,在软件***中加入调试桩,利用网络来打印信息的方法,使得调试人员不论是在野外、在测试现场或是测试设备与调试设备的距离太远时均能通过网线随时随地打印信息,以便于及时地监控软件各个模块的状态,随时发现问题,定位问题。
Description
技术领域
本发明属于计算机软件领域,尤其涉及一种打印软件信息的方法、装置及带网口的设备。
背景技术
在嵌入式软件的开发过程中,了解和分析软件信息有助于开发人员及时地发现和解决问题,因此信息的打印就显得至关重要。现有技术中,一般是采用串口来打印软件信息的。然而,在野外、在测试现场或是测试设备与调试设备的距离太远时,由于串口通讯的距离太短,因而不能接串口线打印信息,如图1所示。这时,如果软件出现了异常,却因为无法打印信息而不能及时知道引起异常的原因,其造成的损失是巨大的。
发明内容
本发明实施例的目的在于提供一种打印软件信息的方法、装置及带网口的设备,旨在解决在野外、在测试现场或是测试设备与调试设备的距离太远时,由于串口通讯的距离太短,因而不能接串口线打印信息的问题。
本发明实施例是这样实现的,一种打印软件信息的方法,所述方法包括以下步骤:
建立一个调试桩,在所述调试桩中创建一个结构数组用于存储软件***中的各模块的模块标识和回调函数指针,通过此回调函数指针调用相应的回调函数;
将软件***中的各模块的模块标识及回调函数注册到结构数组中;
获取客户端发出的打印软件信息的请求,所述请求中包含需打印信息的模块标识;
根据所述模块标识遍历结构数组,调用与所述模块标识对应的回调函数;
将需打印信息发送到客户端,完成软件信息的打印;
所述将软件***中的各模块的模块标识及回调函数注册到结构数组中的步骤包括:
按照回调函数模板构建模块的回调函数,所述回调函数模板由调试桩预先定义;
调用模块注册函数将模块的模块标识及回调函数注册到结构数组中,所述模块注册函数为调试桩预先定义的。
本发明实施例的另一目的在于提供一种打印软件信息的装置,所述装置包括:
结构数组创建单元,用于建立一个调试桩,在所述调试桩中创建一个结构数组用于存储软件***中的各模块的模块标识和回调函数指针,通过此回调函数指针调用相应的回调函数;
注册单元,用于将软件***中的各模块的模块标识及回调函数注册到结构数组中;
打印请求获取单元,用于获取客户端发出的打印软件信息的请求,所述请求中包含需打印信息的模块标识;
结构数组遍历单元,用于根据所述模块标识遍历结构数组,调用与所述模块标识对应的回调函数;
打印单元,用于将需打印信息发送到客户端,完成软件信息的打印;
所述注册单元包括:
回调函数构建子单元,用于按照回调函数模板构建模块的回调函数,所述回调函数模板由调试桩预先定义;
注册子单元,用于调用模块注册函数将模块的模块标识及回调函数注册到结构数组中,所述模块注册函数为调试桩预先定义的。
本发明实施例的另一目的在于提供包括所述打印软件信息的装置的带网口的设备。
在本发明实施例中,利用网络能够长距离通信且普遍存在的优势,在软件***中加入调试桩,利用网络来打印信息的方法,使得调试人员不论是在野外、在测试现场或是测试设备与调试设备的距离太远时均能通过网线随时随地打印信息,以便于及时地监控软件各个模块的状态,随时发现问题,定位问题。
附图说明
图1是现有技术提供的打印软件信息的方法示意图;
图2是本发明实施例提供的打印软件信息的方法示意图;
图3是本发明实施例提供的打印软件信息的方法流程图;
图4是本发明实施例提供的打印软件信息的装置示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例利用了网络能够长距离通信且普遍存在的优势,在软件***中加入调试桩,利用网络来打印信息。如图2所示,对服务器进行改进,加入调试桩后,可通过网线将软件***中的信息通过服务器发送到客户端。
本发明提供了一种打印软件信息的方法和装置:
所述方法包括:
获取客户端发出的打印信息的请求,所述请求中包含需打印信息的模块的标识;
根据所述模块的标识遍历结构数组,调用与所述模块的标识对应的回调函数;
所述回调函数将信息发送到客户端。
所述装置包括:
打印请求获取模块,获取客户端发出的打印信息的请求,所述请求中包含需打印信息的模块的标识;
结构数组遍历模块,根据所述模块的标识遍历结构数组,调用与所述模块的标识对应的回调函数;
打印模块,所述回调函数将信息发送到客户端。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
如图3所示为本发明实施例提供的打印软件信息的方法的流程图,为了便于说明,仅示出了与本发明实施例相关的部分。
在步骤S301中,建立一个调试桩模块,在此模块中创建一个数组结构用于存储各模块的模块标识和回调函数指针。
在本发明实施例中,建立一个tcp server的调试桩模块后,在该调试桩模块中建立一个结构数组,所述结构数组中每一项(即每一个结构)对应软件***中的一个模块(除去调试桩模块),其结构包含各模块的标识及回调函数指针。模块标识可以为但不限于模块名、模块ID等;各模块的回调函数指针通过调用各模块的回调函数将模块中有用的、关键的及异常的信息收集起来后,以统一的数据格式发送到客户端。模块中有用的、关键的及异常的信息即为各模块需打印的信息。
在本发明实施例中,在此以传输socket消息为例来说明回调函数,例如:传输socket消息时,回调函数的参数为一个客户端socket的句柄。回调函数在收集了模块中有用的、关键的及异常的信息后,将所有这些信息统一数据格式后,发送到客户端socket。
在步骤S302中,将各模块的模块标识及回调函数注册到结构数组中。
在本发明实施例中,在调试桩模块中建立一个模块注册函数,此模块注册函数有两个参数,分别为模块标识和回调函数指针。将模块的回调函数注册到结构数组中的过程分为两步:首先按照回调函数模板构建本模块的回调函数,此回调函数模板由调试桩模块预先定义;然后调用模块注册函数将本模块的模块标识及回调函数注册到结构数组中。
以下以模块A为例进行详细说明,但并不限于此例。例如:
模块A先按照回调函数模板构建模块A的回调函数。随后模块A调用模块注册函数,模块注册函数通过参数模块标识在将模块A的标识注册到结构数组后,再通过另一参数回调函数指针调用模块A的回调函数,将模块A的回调函数注册到结构数组中。
在步骤S303中,获取客户端发出的打印信息的请求,所述请求中包含需打印信息的模块的标识。
在本发明实施例中,所述信息为模块中有用的、关键的及异常的信息。
在步骤S304中,根据模块标识遍历结构数组,调用与模块标识对应的回调函数。
在本发明实施例中,结构数组中每一项(即每一个结构)对应软件***中的一个模块(除去调试桩模块),其结构包含各模块的标识及回调函数指针。因此,遍历结构数组,便可在含有此模块标识的结构中找到相应模块的回调函数指针,再通过此回调函数指针调用相应的回调函数。
在步骤S305中,所述回调函数将信息发送到客户端。
在本发明实施例中,调用与模块相对应的回调函数后,此回调函数将信息发送到客户端,完成软件信息的打印。
在本发明实施例中,利用网络能够长距离通信且普遍存在的优势,在软件***中加入调试桩,利用网络来打印信息的方法,使得调试人员不论是在野外、在测试现场或是测试设备与调试设备的距离太远时均能通过网线随时随地打印信息,以便于及时地监控软件各个模块的状态,随时发现问题,定位问题。
实施例二:
图4为本发明实施例提供的打印软件信息的装置的结构示意,为了便于说明,仅示出了与本发明实施例相关的部份。该打印软件信息的装置可以是内置于电脑、上网本、数字电视等各种带网口的设备中的软件单元、硬件单元或者软硬件相结合的单元,或者作为独立的挂件集成到这些设备或这些设备的应用***中。其中:
结构数组创建模块41,建立一个调试桩模块,在此模块中创建一个数组结构用于存储各模块的模块标识和回调函数指针。
在本发明实施例中,建立一个tcp server的调试桩模块后,在该调试桩模块中建立一个结构数组,所述结构数组中每一项(即每一个结构)对应软件***中的一个模块(除去调试桩模块),其结构包含各模块的标识及回调函数指针。
注册模块42,将各模块的模块标识及回调函数注册到结构数组中。此注册模块还包括两个小单元,分别为:
回调函数构建单元421,按照回调函数模板构建本模块的回调函数,此回调函数模板由调试桩模块预先定义;
注册单元422,调用模块注册函数将本模块的模块标识及回调函数注册到结构数组中。
打印请求获取模块43,获取客户端发出的打印信息的请求,所述请求中包含需打印信息的模块的标识。
在本发明实施例中,所述信息为各模块中有用的、关键的及异常的信息。
结构数组遍历模块44,根据模块标识遍历结构数组,调用与模块标识对应的回调函数。
打印模块45,所述回调函数将信息发送到客户端。
在本发明实施例中,利用网络能够长距离通信且普遍存在的优势,在软件***中加入调试桩,利用网络来打印信息的方法,使得调试人员不论是在野外、在测试现场或是测试设备与调试设备的距离太远时均能通过网线随时随地打印信息,以便于及时地监控软件各个模块的状态,随时发现问题,定位问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种打印软件信息的方法,其特征在于,所述方法包括下述步骤:
建立一个调试桩,在所述调试桩中创建一个结构数组用于存储软件***中的各模块的模块标识和回调函数指针,通过此回调函数指针调用相应的回调函数;
将软件***中的各模块的模块标识及回调函数注册到结构数组中;
获取客户端发出的打印软件信息的请求,所述请求中包含需打印信息的模块标识;
根据所述模块标识遍历结构数组,调用与所述模块标识对应的回调函数;
将需打印信息发送到客户端,完成软件信息的打印;
所述将软件***中的各模块的模块标识及回调函数注册到结构数组中的步骤包括:
按照回调函数模板构建模块的回调函数,所述回调函数模板由调试桩预先定义;
调用模块注册函数将模块的模块标识及回调函数注册到结构数组中,所述模块注册函数为调试桩预先定义的。
2.如权利要求1所述的方法,其特征在于,所述结构数组中每一项对应软件***中的一个模块,其结构包含各模块标识及回调函数指针。
3.如权利要求1所述的方法,其特征在于,所述需打印信息为软件***中的模块中有用的、关键的及异常的信息。
4.一种打印软件信息的装置,其特征在于,所述装置包括:
结构数组创建单元,用于建立一个调试桩,在所述调试桩中创建一个结构数组用于存储软件***中的各模块的模块标识和回调函数指针,通过此回调函数指针调用相应的回调函数;
注册单元,用于将软件***中的各模块的模块标识及回调函数注册到结构数组中;
打印请求获取单元,用于获取客户端发出的打印软件信息的请求,所述请求中包含需打印信息的模块标识;
结构数组遍历单元,用于根据所述模块标识遍历结构数组,调用与所述模块标识对应的回调函数;
打印单元,用于将需打印信息发送到客户端,完成软件信息的打印;
所述注册单元包括:
回调函数构建子单元,用于按照回调函数模板构建模块的回调函数,所述回调函数模板由调试桩预先定义;
注册子单元,用于调用模块注册函数将模块的模块标识及回调函数注册到结构数组中,所述模块注册函数为调试桩预先定义的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010566866A CN102053808B (zh) | 2010-11-30 | 2010-11-30 | 一种打印软件信息的方法、装置及带网口的设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010566866A CN102053808B (zh) | 2010-11-30 | 2010-11-30 | 一种打印软件信息的方法、装置及带网口的设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102053808A CN102053808A (zh) | 2011-05-11 |
CN102053808B true CN102053808B (zh) | 2012-10-10 |
Family
ID=43958171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010566866A Expired - Fee Related CN102053808B (zh) | 2010-11-30 | 2010-11-30 | 一种打印软件信息的方法、装置及带网口的设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102053808B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978260B (zh) * | 2014-04-01 | 2018-10-30 | 腾讯科技(深圳)有限公司 | 软件测试方法及装置 |
CN105095064B (zh) * | 2014-05-13 | 2019-03-15 | 腾讯科技(深圳)有限公司 | 一种自绘控件的测试方法、测试装置和自绘控件以及*** |
CN107168870B (zh) * | 2017-04-28 | 2021-10-29 | 福建星瑞格软件有限公司 | 一种运行时程序信息获取方法 |
CN112486432B (zh) * | 2020-12-04 | 2023-01-31 | 浙江诺诺网络科技有限公司 | 一种***打印方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101667155A (zh) * | 2009-09-25 | 2010-03-10 | 中兴通讯股份有限公司 | 一种软件监控方法及软件监控装置 |
US7680911B1 (en) * | 1998-04-23 | 2010-03-16 | Thomson Licensing | Method for managing objects in a communication network and implementing device |
CN101826048A (zh) * | 2010-02-09 | 2010-09-08 | 蓝盾信息安全技术股份有限公司 | 一种打印监控的方法及*** |
-
2010
- 2010-11-30 CN CN201010566866A patent/CN102053808B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7680911B1 (en) * | 1998-04-23 | 2010-03-16 | Thomson Licensing | Method for managing objects in a communication network and implementing device |
CN101667155A (zh) * | 2009-09-25 | 2010-03-10 | 中兴通讯股份有限公司 | 一种软件监控方法及软件监控装置 |
CN101826048A (zh) * | 2010-02-09 | 2010-09-08 | 蓝盾信息安全技术股份有限公司 | 一种打印监控的方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN102053808A (zh) | 2011-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8793351B2 (en) | Automated configuration of new racks and other computing assets in a data center | |
CN101594376B (zh) | 向cimom注册cim提供器的方法和相应的装置 | |
CN102053808B (zh) | 一种打印软件信息的方法、装置及带网口的设备 | |
CN107809383A (zh) | 一种基于mvc的路径映射方法及装置 | |
CN110311990A (zh) | 一种可配置物联网数据采集***及配置方法 | |
CN106708748B (zh) | 提高OpenStack块存储卷挂载性能的方法及*** | |
CN108156222A (zh) | 一种基于养殖物联网的网关***及方法 | |
CN103023708A (zh) | 通信协议接口的测试方法及*** | |
CN103326902A (zh) | 可配置的分布式主机性能测试数据监控***及监控方法 | |
CN107566513B (zh) | 测试设备dos环境数据采集方法和*** | |
CN105471548B (zh) | 一种网络数据包解析及分发方法 | |
CN101262371A (zh) | 网络设备的配置方法和设备 | |
CN101207525B (zh) | 无线网络控制器信令处理模块的测试***和装置 | |
CN103297477A (zh) | 一种数据采集上报***及数据处理方法和代理服务器 | |
CN104253718A (zh) | 一种网络测试方法和装置 | |
CN103763150A (zh) | 数据采集*** | |
CN106844211A (zh) | 一种软件测试方法、装置及*** | |
CN113965447B (zh) | 一种在线云诊断方法、装置、***、设备及存储介质 | |
CN102497313A (zh) | 一种监控视频资源跨平台应用***及其实现方法 | |
CN102307116A (zh) | 用于生成监控信息的***和方法 | |
CN202998491U (zh) | 内河船载货物监测***装置 | |
CN103905223A (zh) | 数据包采集方法、***和装置 | |
CN110401576A (zh) | 网络交互测试方法及装置 | |
CN104283705A (zh) | 集中器配置调试方法及集中器 | |
EP2911423A1 (en) | Implementation method and device for virtual southbound interface and internet of things management platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121010 |