System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及数据处理,尤其涉及一种信号的处理方法及装置、电子设备和存储介质。
技术介绍
1、相关技术中,在操作系统中进行信号处理时,由于用户栈在创建时没有建立与内核栈之间的地址映射,需多次发送进程间通信(interprocess communication,ipc)给用户管理进程,以便于用户管理进程对用户栈进行映射,并完成信号处理。由用户管理进程对用户栈进行映射直接导致时间的浪费以及操作系统性能的下降。
技术实现思路
1、本公开提供了一种信号的处理方法及装置、电子设备和存储介质。其主要目的在于解决在操作系统中进行信号处理时,由于用户栈在创建时没有映射,需多次发送ipc给用户管理进程,导致时间的浪费以及操作系统性能的下降的问题。
2、根据本公开的第一方面,提供了一种信号的处理方法,其中,包括:
3、响应于目标任务的处理信号,确定所述目标任务对应的用户栈是否具备写入权限;
4、在确定所述用户栈不具备写入权限的情况下,建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系;
5、基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空间,其中,所述用户程序用于触发所述目标任务。
6、可选地,所述建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系包括:
7、由内核触发建立针对所述用户栈的地址映射关系的请求信息;
8、基于用户管理进程对所述请求信息进行响应,建立
9、基于所述用户管理进程为所述用户栈分配预设存储空间的调用页面,所述调用页面记录有所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系。
10、可选地,所述方法还包括:
11、查询所述用户程序的虚拟地址是否存在与内核的用户程序的物理地址之间的映射关系;
12、所述确定所述目标任务对应的用户栈是否具备写入权限包括:
13、在确定存在所述用户程序的虚拟地址与内核的用户程序的物理地址之间的映射关系的情况下,确定所述用户栈是否具备所述写入权限。
14、可选地,在查询所述用户程序的虚拟地址是否存在与内核的用户程序的物理地址之间的映射关系之后,所述方法还包括:
15、在确定不存在所述用户程序的虚拟地址与内核的用户程序的物理地址之间的映射关系的情况下,建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系。
16、可选地,基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空间包括:
17、基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系将所述目标任务的上一任务存储于所述预设存储空间的调用页面对应的存储地址;
18、在执行完所述目标任务后,将存储于所述预设存储空间的调用页面对应的存储地址的目标任务的上一任务进行恢复。
19、可选地,在所述确定所述目标任务对应的用户栈是否具备写入权限之后,所述方法还包括:
20、在确定所述用户栈具备写入权限的情况下,基于已建立的用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空间。
21、根据本公开的第二方面,提供了一种信号的处理装置,包括:
22、确定单元,用于响应于目标任务的处理信号,确定所述目标任务对应的用户栈是否具备写入权限;
23、建立单元,用于在确定所述用户栈不具备写入权限的情况下,建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系;
24、存储单元,用于基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空间,其中,所述用户程序用于触发所述目标任务。
25、可选地,所述建立单元包括:
26、触发模块,用于由内核触发建立针对所述用户栈的地址映射关系的请求信息;
27、建立模块,用于基于用户管理进程对所述请求信息进行响应,建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系;
28、分配模块,用于基于所述用户管理进程为所述用户栈分配预设存储空间的调用页面,所述调用页面记录有所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系。
29、可选地,所述装置还包括:
30、查询单元,用于查询所述用户程序的虚拟地址是否存在与内核的用户程序的物理地址之间的映射关系;
31、所述确定单元,还用于在确定存在所述用户程序的虚拟地址与内核的用户程序的物理地址之间的映射关系的情况下,确定所述用户栈是否具备所述写入权限。
32、可选地,所述建立单元,还用于在查询所述用户程序的虚拟地址是否存在与内核的用户程序的物理地址之间的映射关系之后,且在确定不存在所述用户程序的虚拟地址与内核的用户程序的物理地址之间的映射关系的情况下,建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系。
33、可选地,所述存储单元,还用于基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系将所述目标任务的上一任务存储于所述预设存储空间的调用页面对应的存储地址;
34、在执行完所述目标任务后,将存储于所述预设存储空间的调用页面对应的存储地址的目标任务的上一任务进行恢复。
35、可选地,所述存储单元,在所述确定所述目标任务对应的用户栈是否具备写入权限之后,在确定所述用户栈具备写入权限的情况下,基于已建立的用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空间。
36、根据本公开的第三方面,提供了一种电子设备,包括:
37、至少一个处理器;以及
38、与所述至少一个处理器通信连接的存储器;其中,
39、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述第一方面所述的方法。
40、根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行前述第一方面所述的方法。
41、根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如前述第一方面所述的方法。
42、本公开提供的信号的处理方法及装置、电子设备和存储介质,响应于目标任务的处理信号,确定所述目标任务对应的用户栈是否具备写入权限,在确定所述用户栈不具备写入权限的情况下,建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系,基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空间,其中,所述用户程序用于触发所述目标任务。与相关技术相比,本公开实本文档来自技高网...
【技术保护点】
1.一种信号的处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,在查询所述用户程序的虚拟地址是否存在与内核的用户程序的物理地址之间的映射关系之后,所述方法还包括:
5.根据权利要求2所述的方法,其特征在于,基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空间包括:
6.根据权利要求1-5中任一项所述的方法,其特征在于,在所述确定所述目标任务对应的用户栈是否具备写入权限之后,所述方法还包括:
7.一种信号的处理装置,其特征在于,包括:
8.一种电子设备,其特征在于,包括:
9.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行根据权利要求1-6中任一项所述的方法。
10.一种计算机程序产品,其特征
...【技术特征摘要】
1.一种信号的处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述建立用户程序的虚拟地址与用户程序的物理地址之间的映射关系包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,在查询所述用户程序的虚拟地址是否存在与内核的用户程序的物理地址之间的映射关系之后,所述方法还包括:
5.根据权利要求2所述的方法,其特征在于,基于所述用户程序的虚拟地址与用户程序的物理地址之间的映射关系,将所述目标任务存储于对应的预设存储空...
【专利技术属性】
技术研发人员:尹鑫,
申请(专利权)人:北京罗克维尔斯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。