[发明专利]一种嵌入式LINUX应用进程的监控方法有效
申请号: | 200610063541.4 | 申请日: | 2006-11-08 |
公开(公告)号: | CN101178662A | 公开(公告)日: | 2008-05-14 |
发明(设计)人: | 曹刚;杨新;张本全 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 深圳市永杰专利商标事务所 | 代理人: | 曹建军 |
地址: | 518057广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 linux 应用 进程 监控 方法 | ||
1.一种嵌入式LINUX应用进程的监控方法,其特征在于,包括以下步骤:
步骤一、在系统中建立一张记录需监控的各个应用进程组信息的表;该表包含进程组个数、各个进程组的ID号、进程组中各个进程的ID号、进程组中各个进程的对应的执行文件位置信息;所述进程组为一组功能相关的进程;
步骤二、为应用进程建立监控注册接口和监控注销接口;
步骤三、对一应用进程和其产生所有子进程进行监控时,在应用进程主程序段和产生子进程的程序段的入口处调用应用进程注册接口;输入参数输入该应用进程所在的进程组的ID号;该接口将注册请求连同本进程的ID号和输入的进程组ID号通过进程通讯机制一起发送给应用进程管理子系统,管理子系统接收到该信息后将其插入到进程组记录表中,从而开始对该应用进程进行监控;
步骤四、若管理子系统监测到进程组中任一进程发生异常,将杀死该进程组中的所有进程,然后重新启动该进程组;
步骤五、不需要再对该进程进行监控时,在应用进程主程序段和产生子进程的程序段的出口处调用应用进程注销接口;输入参数为该应用进程所在的进程组的ID号;该接口将注销请求连同本进程的ID号和输入的进程组ID号通过进程通讯机制一起发送给应用进程管理子系统,管理子系统接收到该信息后根据进程ID号和进程组ID号在进程组记录表中查找到对应的进程记录,将其删除。
2.权利要求1所述的嵌入式LINUX应用进程的监控方法,其特征在于,所述记录需监控的各个应用进程组信息的表是在内存中建立。
3.权利要求1或2所述的嵌入式LINUX应用进程的监控方法,其特征在于,所述步骤四包括:
管理子系统访问应用进程组记录表,得到需要监控的所有应用进程的ID号;
根据文件系统/proc目录下的进程信息判断这些ID号对应的应用进程是否存在,若存在,延时后返回到上一步;否则,根据应用进程组记录表将不存在的进程对应的进程组中的所有应用进程都杀死;
删除进程组记录表中该进程组的所有信息;
重新启动被杀死的进程组的主进程,延时后返回。
4.一种嵌入式LINUX应用进程的监控方法,其特征在于,包括以下步骤:
步骤一、在系统中建立一张记录需监控的各个应用进程组信息的表;该表包含进程组个数、各个进程组的ID号、进程组中各个进程的ID号、进程组中各个进程的对应的执行文件位置信息;所述进程组为一组功能相关的进程;
步骤二、为应用进程建立监控注册接口和监控注销接口;
步骤三、对一应用进程和其产生所有子进程进行监控时,在应用进程主程序段和产生子进程的程序段的入口处调用应用进程注册接口;输入参数输入该应用进程所在的进程组的ID号;该接口将注册请求连同本进程的ID号和输入的进程组ID号通过进程通讯机制一起发送给应用进程管理子系统,管理子系统接收到该信息后将其插入到进程组记录表中,从而开始对该应用进程进行监控;
步骤四、在进程调度中给进程加上软件狗;当时间片到而发生任务切换就给该软件狗计数器加一,如果是因为其它系统调用而发生任务切换就把软件狗计数器清零;当该计数器值大过一定阈值,则对该进程作为处于死循环状态处理;
步骤五、不需要再对该进程进行监控时,在应用进程主程序段和产生子进程的程序段的出口处调用应用进程注销接口;输入参数为该应用进程所在的进程组的ID号;该接口将注销请求连同本进程的ID号和输入的进程组ID号通过进程通讯机制一起发送给应用进程管理子系统,管理子系统接收到该信息后根据进程ID号和进程组ID号在进程组记录表中查找到对应的进程记录,将其删除。
5.权利要求4所述的嵌入式LINUX应用进程的监控方法,其特征在于,所述步骤四包括:
在进程状态数据结构中添加死循环看门狗计数器和死循环标志;
在产生进程函数中初始化死循环的相关变量,即先将死循环看门狗计数器清零和将死循环标志设置为非死循环;
在进程调度函数中添加对进程死循环的判断处理,取得系统分配该进程运行的时间片数;取得该进程实际运行的时间片数;若实际运行的时间片数等于系统分配时间片数,该进程的死循环看门狗计数器加1,否则重新清零;若该进程的死循环看门狗计数大于死循环阈值,则将标志设置为死循环,否则设置为非死循环;
在进程状态数组中添加一死循环状态,当检查到进程状态的标志为死循环时,则自动将死循环状态标志写入到文件系统/proc对应的进程状态信息中;管理子系统的监控器在定时检查/proc下各个应用的进程状态时,若发现某个进程的状态为死循环状态标志,就按该进程处于死循环状态处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610063541.4/1.html,转载请声明来源钻瓜专利网。