[发明专利]一种基于申威架构的进程间通信的统计调试方法及装置在审
申请号: | 201810783426.7 | 申请日: | 2018-07-17 |
公开(公告)号: | CN109062787A | 公开(公告)日: | 2018-12-21 |
发明(设计)人: | 高福亮 | 申请(专利权)人: | 北京中科网威信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/54 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹;李相雨 |
地址: | 100094 北京市海淀区西北旺*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 进程通信 调用函数 封装 进程间通信 统计 发送 调用 调试 架构 通信函数调用 调试功能 模块标识 模块函数 模块进程 设备需要 系统性能 相关信息 进程 系统卡 指令 输出 | ||
本发明实施例公开一种基于申威架构的进程间通信的统计调试方法及装置,方法包括:根据用户输入的第一指令,封装进程通信发送函数,其中新增加模块标识ID、调用函数名称、调用函数行号和目的进程名称四个函数入参并增加进程通信的按模块的统计调试功能;申威设备需要进程通信的各模块函数中均调用所封装的进程通信发送函数,以将当前模块的模块ID、调用函数名称、调用函数行号和目的进程名称作为入参传入所封装的进程通信发送函数,使其统计当前模块所调用的进程通信函数的相关信息。本发明实施例可统计查看各进程各模块进程通信函数调用的次数与频率,输出调用函数名称及行号,达到定位频繁的进程通信导致系统性能下降或系统卡顿问题的目的。
技术领域
本发明实施例涉及计算机技术领域,具体涉及一种基于申威架构的进程间通信的统计调试方法及装置。
背景技术
套接字(socket)是一种通信机制,凭借这种机制,客户/服务器端(即要进行通信的进程)系统的开发工作既可以在本地单机上进行,也可以跨网络进行。也就是说它可以让不在同一台计算机但通过网络连接计算机上的进程进行通信。也因为这样,套接字明确地将客户端和服务器端区分开来。
首先服务器端应用程序用系统调用来创建一个套接字,它是系统分配给该服务器端进程的类似文件描述符的资源,它不能与其他的进程共享。接下来,服务器端进程会给套接字起个名字,我们使用系统调用bind来给套接字命名。然后服务器端进程就开始等待客户连接到这个套接字。然后,系统调用listen来创建一个队列并将其用于存放来自客户的进入连接。最后,服务器端通过系统调用accept来接受客户的连接。它会创建一个与原有的命名套接不同的新套接字,这个套接字只用于与这个特定客户端进行通信,而命名套接字(即原先的套接字)则被保留下来继续处理来自其他客户的连接。基于socket的客户端比服务器端端简单,同样,客户应用程序首先调用socket来创建一个未命名的套接字,然后将服务器端的命名套接字作为一个地址来调用connect与服务器端建立连接。一旦连接建立,我们就可以像使用底层的文件描述符那样用套接字来实现进程双向数据的通信。
用套接字来实现进程双向数据的通信通过一些系统调用函数进行进程间的通信的数据收发操作。但进程间通信函数都是系统调用,频繁的进程间通信会导致系统性能下降或系统卡顿,特别是一些申威设备命令下发和处理在不同进程中,进程通信方式又被其他模块共用(如日志模块等)时,在大流量日志情况下频繁的系统调用会影响系统的正常运行,而进程间通信没有统计调试功能,无法定位具体是哪个模块哪个函数在频繁进行进程通信从而导致出现问题。
发明内容
由于现有方法存在上述问题,本发明实施例提出一种基于申威架构的进程间通信的统计调试方法及装置。
第一方面,本发明实施例提出一种基于申威架构的进程间通信的统计调试方法,包括:
根据用户输入的第一指令,封装进程通信发送函数,在所述进程通信发送函数中新增加模块标识ID、调用函数名称、调用函数行号和目的进程名称四个函数入参,并在所封装的进程通信发送函数增加进程通信的按模块的统计调试功能;
在申威设备的需要进程通信的各模块函数中均调用所封装的进程通信发送函数,以将当前模块的模块ID、调用函数名称、调用函数行号和目的进程名称四个函数作为入参传入所封装的进程通信发送函数,以使所封装的进程通信发送函数统计当前模块所调用的进程通信函数的相关信息;
其中,所统计的当前模块所调用的进程通信函数的相关信息,至少包括:模块ID、模块名称、调用函数名称、调用函数行号、调用次数累加和目的进程名称。
可选地,所述方法还包括:
根据用户输入的第二指令,新增命令行控制所述进程通信的按模块的统计调试功能的开启或关闭,以及查看或清除所统计的当前模块所调用的进程通信函数的相关信息。
可选地,所封装的进程通信发送函数为套接字发送函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中科网威信息技术有限公司,未经北京中科网威信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810783426.7/2.html,转载请声明来源钻瓜专利网。