发明名称 一种检测及解决Linux系统死锁的方法
摘要 本发明提供一种检测及解决Linux系统死锁的方法。该方法包括:处理器的至少两个CPU具有各自的定时器,并且分别绑定自身的软件看门狗线程;a)每个CPU空闲时,执行对自身绑定的软件看门狗线程的调度,该软件看门狗线程被调度后其对应的调度计数变量值进行累加;b)每个CPU对应的定时器到达预设的定时时间,该CPU执行对各CPU软件看门狗线程对应的调度计数变量的检测;c)如果所述调度计数变量连续在预设次数未发生变化,则判断其对应的CPU发生死锁。相较于现有技术,本发明通过CPU之间的相互检测,改善了现有技术中各CPU只能对自身进行死锁检测的局限问题,并缩短了检测出系统发生死锁的时长。
申请公布号 CN103530197A 申请公布日期 2014.01.22
申请号 CN201310522839.7 申请日期 2013.10.29
申请人 浙江宇视科技有限公司 发明人 蔡和;洪文
分类号 G06F11/00(2006.01)I;G06F11/26(2006.01)I 主分类号 G06F11/00(2006.01)I
代理机构 北京博思佳知识产权代理有限公司 11415 代理人 李杰
主权项 一种检测及解决Linux系统死锁的方法,该方法应用于包含至少两个CPU的处理器上,其特征在于,所述至少两个CPU具有各自的定时器,并且分别绑定自身的软件看门狗线程,每个软件看门狗线程对应自身的调度计数变量;该方法包括如下步骤:a)每个CPU空闲时,执行对自身绑定的软件看门狗线程的调度,该软件看门狗线程被调度后其对应的调度计数变量值进行累加;b)每个CPU对应的定时器到达预设的定时时间,该CPU执行对各CPU软件看门狗线程对应的调度计数变量的检测;c)如果所述调度计数变量连续在预设次数未发生变化,则判断其对应的CPU发生死锁。
地址 310051 浙江省杭州市滨江区西兴街道江陵路88号10号幢南座1-11层