一种突发信号处理方法及系统的制作方法

文档序号:9375362阅读:408来源:国知局
一种突发信号处理方法及系统的制作方法
【技术领域】
[0001]本发明涉及系统信号处理技术领域,尤其涉及一种突发信号处理方法及系统。
【背景技术】
[0002]现有的操作系统中可以在前台运行相应进程的同时在后台保留其他进程,以供随时调用切换。现有技术中,若操作系统产生一个突发信号,且该突发信号关联于处于后台的进程,则操作系统会中止正在运行的进程,并将后台相应的进程切换至前台运行,随后根据突发信号对该进程进行相应的操作。在这个过程中可能还涉及到进程运行状态的保存和调取等操作,因此导致现有技术中对于突发信号的处理过程非常复杂,处理效率低下,处理突发信号的时效性也较低。

【发明内容】

[0003]根据现有技术中存在的问题,现提供一种突发信号处理方法及系统的技术方案,旨在实现突发信号的独立处理,保证突发信号处理的时效性,简化处理突发信号过程的复杂度,提升处理效率;
[0004]上述技术方案具体包括:
[0005]—种突发信号处理方法,其中,于操作系统中设定一共享数据链表,并与所述共享数据链表内按照产生顺序排列保存不同的突发信号的相关数据;
[0006]于当前正在运行的进程中,独立于其他线程设定一个信号处理线程;
[0007]所述突发信号处理方法具体包括:
[0008]步骤SI,所述操作系统产生所述突发信号,并将被产生的所述突发信号的相关数据发送至所述共享数据链表的尾部保存;
[0009]步骤S2,所述信号处理线程从所述共享数据链表的头部读取被保存的所述突发信号的相关数据;
[0010]步骤S3,所述信号处理线程根据被读取的所述突发信号的相关数据进行相应处理并输出相应的处理结果;
[0011]步骤S4,所述操作系统根据所述处理结果,对相应的进程进行相应操作,随后退出。
[0012]优选的,该突发信号处理方法,其中,所述信号处理线程的的调度优先级高于当前正在运行的所述进程中的其他所有线程。
[0013]优选的,该突发信号处理方法,其中,于所述共享数据链表中设置多个存储节点,每个所述存储节点中保存有一个所述突发信号的相关数据;
[0014]所述操作系统产生一个所述突发信号后,于所述共享数据链表的尾部设置一个相应的所述存储节点,用于保存所述突发信号的相关数据;
[0015]所述信号处理线程读取一个所述突发信号后,于所述共享数据链表的头部删除原本用于保存被读取的所述突发信号的相关数据的所述存储节点。
[0016]优选的,该突发信号处理方法,其中,在执行所述步骤S2之前,首先执行下述步骤:
[0017]步骤S21,判断所述操作系统中是否开启相应的突发信号处理功能;
[0018]若所述突发信号处理功能被开启,则继续执行所述步骤S2,以采用所述信号处理线程对所述突发信号进行相应处理;
[0019]若所述突发信号处理功能未被开启,则依照现有的突发信号处理流程进行处理,随后退出。
[0020]优选的,该突发信号处理方法,其中,所述步骤SI中,所述操作系统将被产生的所述突发信号的相关数据发送至所述共享数据链表中保存时,向正在运行的所述进程中的所述信号处理线程发送相应的通知消息,以通知所述信号处理线程已经保存新产生的所述突发信号。
[0021]优选的,该突发信号处理方法,其中,所述信号处理线程通过与所述共享数据链表之间的数据调用接口,调用相应的所述突发信号的相关数据并进行处理。
[0022]—种突发信号处理系统,其中,包括:
[0023]处理单元,用于处理当前正在运行的进程的相关操作;
[0024]存储单元,连接所述处理单元,所述存储单元中包括一共享数据链表,用于按照产生顺序排列保存不同的突发信号的相关数据;
[0025]信号产生单元,连接所述存储单元,用于产生所述突发信号,并将所述突发信号的相关数据发送至所述存储单元,以保存在所述共享数据链表的尾部;
[0026]所述处理单元包括:
[0027]第一处理模块,用于处理当前正在运行的所述进程中的一个独立的信号处理线程的相关操作;
[0028]第二处理模块,用于处理当前正在运行的所述进程中除去所述信号处理线程的其他线程的相关操作;
[0029]所述第二处理模块从所述存储单元中提取保存于所述共享数据链表中的头部的所述突发信号的相关数据并进行处理,输出相应的处理结果;
[0030]所述处理单元根据所述处理结果,对相应的所述进程进行相应操作。
[0031]优选的,该突发信号处理系统,其中,所述信号处理线程的的调度优先级高于当前正在运行的所述进程中的其他所有线程。
[0032]优选的,该突发信号处理系统,其中,于所述共享数据链表中设置多个存储节点,每个所述存储节点中保存有一个所述突发信号的相关数据;
[0033]所述信号产生单元产生一个所述突发信号后,于所述共享数据链表的尾部设置一个相应的所述存储节点,用于保存所述突发信号的相关数据;
[0034]所述第二处理模块读取一个所述突发信号后,于所述共享数据链表的头部删除原本用于保存被读取的所述突发信号的相关数据的所述存储节点。
[0035]优选的,该突发信号处理系统,其中,所述处理单元内还包括:
[0036]判断模块,用于判断所述处理单元内是否被开启相应的突发信号处理功能,并输出相应的判断结果;
[0037]控制模块,连接所述判断模块,并且分别连接所述第一处理模块和第二处理模块;
[0038]所述控制模块根据所述判断结果:
[0039]在所述判断结果表示开启所述突发信号处理功能时采用所述第二处理模块,以通过所述信号处理线程对所述突发信号进行处理;或者
[0040]在所述判断结果表示未开启所述突发信号处理功能时采用所述第一处理模块,以通过所述当前正在运行的所述进程中的其他线程对所述突发信号进行处理。
[0041]优选的,该突发信号处理系统,其中,所述信号产生单元中包括一通知模块;
[0042]所述信号产生单元将被产生的所述突发信号的相关数据发送至所述存储单元中保存时,所述通知模块向所述处理单元发送相应的通知消息,以通知所述处理单元已经保存新产生的所述突发信号。
[0043]上述技术方案的有益效果是:
[0044]I)提供一种突发信号处理方法,能够实现突发信号的独立处理,保证突发信号处理的时效性,简化处理突发信号过程的复杂度,提升处理效率;
[0045]2)提供一种突发信号处理系统,能够支持实现上述突发信号处理方法。
【附图说明】
[0046]图1是现有技术中,对突发信号进行处理的总体流程示意图;
[0047]图2-3是本发明的较佳的实施例中,一种突发信号处理方法的流程示意图;
[0048]图4-5是本发明的较佳的实施例中,一种突发信号处理系统的结构示意图;
[0049]图6是本发明的较佳的实施例中,共享数据链表的结构示意图。
【具体实施方式】
[0050]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0051]需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0052]下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0053]如上文中所述,现有技术中,操作系统的内核产生突发信号后,往往需要经过如图1所示的下述步骤才能完成一次突发信号的处理过程:
[0054]步骤Al,接收到产生的突发信号后,操作系统中止当前正在运行的进程,
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1