【技术实现步骤摘要】
进程间通信方法、装置及计算机可读介质
本申请涉及计算机
,尤其涉及通信方法、装置及计算机可读介质。
技术介绍
随着通信技术的发展,在进行虚拟化或云计算处理时,往往需要在操作系统内的进程间、虚拟机/容器与虚拟机之间以及虚拟机/容器与宿主机之间进行进程间通信。进程是装入内存并独立执行的程序,每个进程都有自己的私有进程空间,对其他进程是不可见的。而进程间通信就是让独立的进程间传输控制信息,或与其他进程交换数据的机制。共享内存虚拟设备(IVsharememory,Ivshmem)是虚拟机内部共享内存的外设部件互连标准(PeripheralComponentInterconnect,PCI)设备。虚拟机之间实现内存共享是把内存映射成虚拟机内进程的PCI设备来实现的。虚拟机与宿主机之间进行进程间通信主要是通过Ivshmem提供的中断机制实现的,通过宿主机的用户态跨越虚拟机内核态通知虚拟机用户态进程。宿主机向虚拟机通信,即宿主机内的进程想要正确地唤醒虚拟机内的进程(客户端),就必须要通过识别中断的方式来区分消息需要发送给哪个虚拟机的进程(客户端)。然而,Ivshmem仅支持64个中断,意味着仅凭借Ivshmem的特性,虚拟机的客户端只能够有64个。随着虚拟化技术的发展,虚拟机中的客户端的数量越来越多,64个中断远远不能满足需求。因此,需要研究如何解决Ivshmem支持的客户端的数量受限的问题。
技术实现思路
本申请提供了一种进程间的通信方法、装置及计算机可读介质,用于解决Ivshmem支持的客户端 ...
【技术保护点】
1.一种进程间通信方法,其特征在于,包括:/n宿主机在位图中目标客户端对应的目标位写入激活标志;所述目标客户端为虚拟机中所述宿主机待通知的客户端,所述目标位用于指示所述目标客户端为待通知的客户端或指示所述目标客户端不为待通知的客户端;/n所述宿主机向中断寄存器写入中断命令;所述中断寄存器为所述虚拟机和所述宿主机共用的寄存器,所述中断命令包含中断号,所述中断命令用于指示所述中断号与所述目标位的组合对应的客户端从消息接收队列接收消息。/n
【技术特征摘要】
1.一种进程间通信方法,其特征在于,包括:
宿主机在位图中目标客户端对应的目标位写入激活标志;所述目标客户端为虚拟机中所述宿主机待通知的客户端,所述目标位用于指示所述目标客户端为待通知的客户端或指示所述目标客户端不为待通知的客户端;
所述宿主机向中断寄存器写入中断命令;所述中断寄存器为所述虚拟机和所述宿主机共用的寄存器,所述中断命令包含中断号,所述中断命令用于指示所述中断号与所述目标位的组合对应的客户端从消息接收队列接收消息。
2.根据权利要求1所述的方法,其特征在于,所述位图包含N个比特,所述目标位占用至少一个比特,所述N为大于2的整数,所述中断号和所述目标位的组合对应所述目标客户端。
3.根据权利要求1或2所述的方法,其特征在于,所述宿主机在位图中目标客户端对应的目标位写入激活标志包括:
所述宿主机采用比较并交换CAS操作在所述目标位写入所述激活标志。
4.根据权利要求3所述的方法,其特征在于,所述宿主机在位图中目标客户端对应的目标位写入激活标志之前,所述方法还包括:
所述宿主机向所述目标客户端的所述消息接收队列写入所述消息。
5.一种进程间通信方法,其特征在于,包括:
虚拟机内核态的外设部件互连标准PCI设备获得中断寄存器中的中断命令;所述中断寄存器为所述虚拟机和宿主机共用的寄存器,所述中断命令包含中断号,所述中断命令用于指示目标客户端从消息接收队列接收消息,所述目标客户端为虚拟机中对应目标组合的客户端,所述目标组合为所述中断号与位图中写有激活标志的比特位的组合;
所述PCI设备读取所述位图,并确定所述位图中的目标位写有所述激活标志;
所述PCI设备确定所述中断号与所述目标位的组合对应的所述目标客户端;
所述PCI设备通知所述目标客户端从所述消息接收队列接收所述消息。
6.根据权利要求5所述的方法,其特征在于,所述PCI设备通知所述目标客户端从所述消息接收队列接收所述消息包括:
所述PCI设备激活所述目标客户端对应的内核态信号量。
7.根据权利要求6所述的方法,其特征在于,所述PCI设备通知所述目标客户端从所述消息接收队列接收所述消息之后,所述方法还包括:
所述目标客户端从内核态阻塞状态返回用户态,并从所述消息接收队列接收所述消息。
8.根据权利要求5至7任意一项所述的方法,其特征在于,所述位图包含N个比特,所述目标位占用至少一个比特,所述N为大于2的整数,所述中断号和所述目标位的组合对应所述目标客户端。
9.根据权利要求8所述的方法,其特征在于,所述PCI设备读取所述位图之后,所述方法还包括:
所述PCI设备采用比较并交换CAS操作清除所述目标位的所述激活标志。
10.一种进程间通信装置,其特征在于,包括:
写单元,用于在位图中目标客户端对应的目标位写入激活标志;所述目标客户端为虚拟...
【专利技术属性】
技术研发人员:王蘅,王霖,张占忠,
申请(专利权)人:成都华为技术有限公司,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。