一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种进程间通信的方法、装置及计算机存储介质与流程

2022-02-25 18:23:11 来源:中国专利 TAG:

技术特征:
1.一种进程间通信的方法,其特征在于,所述方法应用于计算机设备,所述方法包括:执行第一指令,所述第一指令用于指示第一进程调用第二进程,第一进程为用户态的应用程序或系统程序,第二进程为内核态的第一系统程序;响应于所述第一指令,内核根据所述第一指令将所述第一进程的上下文切换到所述第二进程的上下文;执行所述第二进程。2.根据权利要求1所述的方法,其特征在于,所述内核将所述第一进程的上下文切换到所述第二进程的上下文包括:所述内核确定所述第一指令中的第二进程的标识对应的所述第二进程的页表基地址;所述内核将用户态的页表寄存器中所述第一进程的页表基地址保存到内存中;所述内核将所述第二进程的页表基地址写入内核态的页表寄存器。3.根据权利要求1或2所述的方法,其特征在于,所述第一指令携带有第一进程的虚拟地址;在所述执行所述第二进程之后,所述方法还包括:所述第二进程根据所述第一进程的页表读取所述第一进程的虚拟地址对应的物理地址中的数据,所述页表中包含所述第一进程的虚拟地址与物理地址之间的关联关系。4.根据权利要求1至3中任意一项所述的方法,其特征在于,所述方法还包括:执行第二指令,所述第二指令用于指示第二进程调用内核或第三进程;响应于所述第二指令,所述内核将所述第二进程的上下文切换到内核或第三进程的上下文,所述第三进程为在内核态运行的第二系统程序。5.根据权利要求4所述的方法,其特征在于,所述内核或第三进程与所述第二进程对第二虚拟地址具有不同的访问权限,所述第二虚拟地址属于内核空间的地址;所述内核根据所述第一指令将所述第一进程的上下文切换到所述第二进程的上下文包括:所述内核确定所述第一指令中的第二进程的标识对应的所述第二进程对所述第二虚拟地址的访问权限;所述内核将所述第二进程对所述第二虚拟地址的访问权限写入第一寄存器,第一寄存器用于存储内核空间的地址的访问权限。6.根据权利要求5所述的方法,其特征在于,所述内核将所述第二进程的上下文切换到内核或第三进程的上下文包括:所述内核根据所述第二指令中的内核的标识确定所述内核对所述第二虚拟地址的访问权限;所述内核将所述第一寄存器中所述第二进程对所述第二虚拟地址的访问权限,更新为所述内核对所述第二虚拟地址的访问权限。7.根据权利要求5所述的方法,其特征在于,所述内核将所述第二进程的上下文切换到内核或第三进程的上下文包括:所述内核根据所述第二指令中的第三进程的标识确定所述第三进程对所述第二虚拟地址的访问权限;所述内核将所述第一寄存器中所述第二进程对所述第二虚拟地址的访问权限,更新为
所述第三进程对所述第二虚拟地址的访问权限。8.根据权利要求5至7中任意一项所述的方法,其特征在于,第二进程对所述第二虚拟地址的访问权限与第三进程对所述第二虚拟地址的访问权限分别存储在不同的页表中;或第二进程对所述第二虚拟地址的访问权限与内核对所述第二虚拟地址的访问权限分别存储在不同的页表中。9.根据权利要求1至8中任意一项所述的方法,其特征在于,所述操作系统还包括以独立的第四进程运行在内核态的第三系统程序;所述第二进程和所述第四进程对内核空间的地址具有相同的访问权限。10.一种进程间通信的装置,其特征在于,所述装置包括:执行单元,用于执行第一指令,所述第一指令用于指示第一进程调用第二进程,第一进程为用户态的应用程序或系统程序,第二进程为内核态的第一系统程序;切换单元,用于根据所述第一指令将所述第一进程的上下文切换到所述第二进程的上下文;执行单元,还用于执行所述第二进程。11.根据权利要求10所述的装置,其特征在于,所述切换单元,用于确定所述第一指令中的第二进程的标识对应的所述第二进程的页表基地址;将用户态的页表寄存器中所述第一进程的页表基地址保存到内存中;将所述第二进程的页表基地址写入内核态的页表寄存器。12.根据权利要求10或11所述的装置,其特征在于,所述第一指令携带有第一进程的虚拟地址;所述装置还包括:读取单元,用于根据所述第一进程的页表读取所述第一进程的虚拟地址对应的物理地址中的数据,所述页表中包含所述第一进程的虚拟地址与物理地址之间的关联关系。13.根据权利要求10至12中任意一项所述的装置,其特征在于,所述执行单元,还用于执行第二指令,所述第二指令用于指示第二进程调用内核或第三进程;所述切换单元,还用于响应于所述第二指令,将所述第二进程的上下文切换到内核或第三进程的上下文,所述第三进程为在内核态运行的第二系统程序。14.根据权利要求13所述的装置,其特征在于,所述内核或第三进程与所述第二进程对第二虚拟地址具有不同的访问权限,所述第二虚拟地址属于内核空间的地址;所述切换单元,用于确定所述第一指令中的第二进程的标识对应的所述第二进程对所述第二虚拟地址的访问权限;将所述第二进程对所述第二虚拟地址的访问权限写入第一寄存器,第一寄存器用于存储内核空间的地址的访问权限。15.根据权利要求14所述的装置,其特征在于,所述切换单元,用于根据所述第二指令中的内核的标识确定所述内核对所述第二虚拟地址的访问权限;将所述第一寄存器中所述第二进程对所述第二虚拟地址的访问权限,更新为所述内核对所述第二虚拟地址的访问权限。16.根据权利要求14所述的装置,其特征在于,所述切换单元,用于根据所述第二指令中的第三进程的标识确定所述第三进程对所述第二虚拟地址的访问权限;
将所述第一寄存器中所述第二进程对所述第二虚拟地址的访问权限,更新为所述第三进程对所述第二虚拟地址的访问权限。17.根据权利要求14至16中任意一项所述的装置,其特征在于,第二进程对所述第二虚拟地址的访问权限与第三进程对所述第二虚拟地址的访问权限分别存储在不同的页表中;或第二进程对所述第二虚拟地址的访问权限与内核对所述第二虚拟地址的访问权限分别存储在不同的页表中。18.根据权利要求10至17中任意一项所述的装置,其特征在于,所述操作系统还包括以独立的第四进程运行在内核态的第三系统程序;所述第二进程和所述第四进程对内核空间的地址具有相同的访问权限。19.一种计算机设备,其特征在于,包括:至少一个处理器和存储器,存储器存储有可在处理器上运行的计算机执行指令,当所述计算机执行指令被所述处理器执行时,所述计算机设备执行如权利要求1-9中任意一项所述的方法。20.一种计算机存储介质,其特征在于,所述计算机存储介质用于存储计算机程序,当所述计算机程序被一个或多个处理器执行时实现如权利要求1-9任意一项所述的方法。

技术总结
本申请实施例公开了一种进程间通信的方法、装置及计算机存储介质,用于提高操作系统的性能。本申请实施例方法包括:执行第一指令,第一指令用于指示第一进程调用第二进程;响应于第一指令,内核根据第一指令将第一进程的上下文切换到第二进程的上下文;执行第二进程;其中,第一进程可以为用户态的应用程序,也可以为用户态的系统程序,第二进程为内核态的第一系统程序。一系统程序。一系统程序。


技术研发人员:李雨 黄强 张文涛 王博实
受保护的技术使用者:华为技术有限公司
技术研发日:2020.07.30
技术公布日:2022/2/24
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献