1.一种基于共享内存的心跳状态判断方法,应用于指定终端,其特征在于,包括:接收对OSD存储设备进行心跳状态判断的指令;
根据所述心跳状态判断的指令,判断所述OSD存储设备是否属于所述指定终端;
若所述OSD存储设备属于所述指定终端,则从所述指定终端的共享内存中调取,所述OSD存储设备在所述共享内存中存入心跳信息的存储时间,并从所述存储时间中筛选出最近一次存储时间;
通过公式:心跳时间差=当前时间‑所述最近一次存储时间,计算出所述心跳时间差;
判断所述心跳时间差是否大于预设的第一心跳阈值;
若所述心跳时间差大于预设的第一心跳阈值,则判定所述OSD存储设备的心跳状态为静止;
若所述心跳时间差不大于预设的第一心跳阈值,则判定所述OSD存储设备的心跳状态为活动;
其中,所述指定终端内置有jiffies定时器,所述若所述OSD存储设备属于所述指定终端,则从所述指定终端的共享内存中调取,所述OSD存储设备在所述共享内存中存入心跳信息的存储时间,并从所述存储时间中筛选出最近一次存储时间的步骤,包括:若所述OSD存储设备属于所述指定终端,则从所述指定终端的共享内存中调取所述OSD存储设备的第一字段的数值,所述第一字段记载了所述OSD存储设备生成心跳信息并存入共享内存时所述指定终端预置jiffies定时器的数值;
根据公式:所述存储时间=所述第一字段的数值÷所述指定终端的内核频率值,计算出所述存储时间;
从所述存储时间中筛选出最近一次存储时间。
2.根据权利要求1所述的基于共享内存的心跳状态判断方法,其特征在于,所述心跳状态判断指令包括OSD存储设备归属字段,所述根据所述心跳状态判断的指令,判断所述OSD存储设备是否属于所述指定终端的步骤,包括:从所述心跳状态判断的指令中提取所述OSD存储设备归属字段中的记载内容,并判断所述OSD存储设备归属字段中的记载内容是否是所述指定终端;
若所述OSD存储设备归属字段中的记载内容是所述指定终端,则判定所述OSD存储设备属于所述指定终端;
若所述OSD存储设备归属字段中的记载内容不是所述指定终端,则判定所述OSD存储设备不属于所述指定终端。
3.根据权利要求1所述的基于共享内存的心跳状态判断方法,其特征在于,所述若所述OSD存储设备属于所述指定终端,则从所述指定终端的共享内存中调取,所述OSD存储设备在所述共享内存中存入心跳信息的存储时间,并从所述存储时间中筛选出最近一次存储时间的步骤之前,包括:
获取所述OSD存储设备中存储的与心跳信息相应的数据的类型;
根据所述类型,利用预设的类型与心跳时间间隔的映射关系,设置所述OSD存储设备对应的心跳时间间隔,所述心跳时间间隔指相邻两次心跳信息的生成时间之间的时间间隔;
根据所述OSD存储设备对应的心跳时间间隔,设置心跳信息的生成时间;
在所述OSD存储设备根据设置好的心跳信息的生成时间生成心跳信息的同时,在所述共享内存中存入心跳信息,并在所述共享内存中记录存入心跳信息的存储时间。
4.根据权利要求1所述的基于共享内存的心跳状态判断方法,其特征在于,所述指定终端内置有jiffies定时器,所述通过公式:心跳时间差=当前时间‑所述最近一次存储时间,计算出所述心跳时间差的步骤,包括:获取所述jiffies定时器的当前数值;
根据公式:当前时间=所述jiffies定时器的当前数值÷所述指定终端的内核频率值,计算出所述当前时间;
通过公式:心跳时间差=当前时间‑所述最近一次存储时间,计算出所述心跳时间差。
5.根据权利要求1所述的基于共享内存的心跳状态判断方法,其特征在于,所述根据所述心跳状态判断的指令,判断所述OSD存储设备是否属于所述指定终端的步骤之后,包括:若所述OSD存储设备不属于所述指定终端,则调取所述共享内存中所述OSD存储设备的第二字段,所述第二字段记载了所述OSD存储设备向所述指定终端发送心跳信息之时所述指定终端预置jiffies定时器的数值;
根据公式:发送心跳信息的时间=所述第二字段的数值÷所述指定终端的内核频率值,计算出所述发送心跳信息的时间;
从所述发送心跳信息的时间中筛选出最近一次心跳信息发送时间,并判断当前时间‑所述最近一次心跳信息发送时间的值是否大于预设的第二心跳阈值;
若当前时间‑所述最近一次心跳信息发送时间的值大于预设的第二心跳阈值,则判定所述OSD存储设备的心跳状态为静止;
若当前时间‑所述最近一次心跳信息发送时间的值不大于预设的第二心跳阈值,则判定所述OSD存储设备的心跳状态为活动。
6.根据权利要求5所述的基于共享内存的心跳状态判断方法,其特征在于,所述若所述OSD存储设备不属于所述指定终端,则调取所述共享内存中所述OSD存储设备的第二字段,所述第二字段记载了所述OSD存储设备向所述指定终端发送心跳信息之时所述指定终端预置jiffies定时器的数值的步骤之前,包括:接收所述OSD存储设备发送的心跳信息;
在所述共享内存中存储所述心跳信息,并在所述共享内存中所述OSD存储设备的第二字段中,记载所述OSD存储设备向所述指定终端发送心跳信息之时所述指定终端预置jiffies定时器的数值。
7.一种基于共享内存的心跳状态判断装置,应用于指定终端,其特征在于,包括:指令接收单元,用于接收对OSD存储设备进行心跳状态判断的指令;
指定终端判断单元,用于根据所述心跳状态判断的指令,判断所述OSD存储设备是否属于所述指定终端;
存储时间调取单元,用于若所述OSD存储设备属于所述指定终端,则从所述指定终端的共享内存中调取,所述OSD存储设备在所述共享内存中存入心跳信息的存储时间,并从所述存储时间中筛选出最近一次存储时间;
心跳时间差计算单元,用于通过公式:心跳时间差=当前时间‑所述最近一次存储时间,计算出所述心跳时间差;
第一心跳阈值判断单元,用于判断所述心跳时间差是否大于预设的第一心跳阈值;
静止判定单元,用于若所述心跳时间差大于预设的第一心跳阈值,则判定所述OSD存储设备的心跳状态为静止;
活动判定单元,用于若所述心跳时间差不大于预设的第一心跳阈值,则判定所述OSD存储设备的心跳状态为活动;
其中,所述指定终端内置有jiffies定时器,所述若所述OSD存储设备属于所述指定终端,则从所述指定终端的共享内存中调取,所述OSD存储设备在所述共享内存中存入心跳信息的存储时间,并从所述存储时间中筛选出最近一次存储时间的步骤,包括:若所述OSD存储设备属于所述指定终端,则从所述指定终端的共享内存中调取所述OSD存储设备的第一字段的数值,所述第一字段记载了所述OSD存储设备生成心跳信息并存入共享内存时所述指定终端预置jiffies定时器的数值;
根据公式:所述存储时间=所述第一字段的数值÷所述指定终端的内核频率值,计算出所述存储时间;
从所述存储时间中筛选出最近一次存储时间。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。