[发明专利]IO多路复用方法、介质、设备和操作系统有效
申请号: | 202110879896.5 | 申请日: | 2021-08-02 |
公开(公告)号: | CN113342554B | 公开(公告)日: | 2022-01-04 |
发明(设计)人: | 张畋;毛熠璐 | 申请(专利权)人: | 阿里云计算有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F11/30 |
代理公司: | 北京太合九思知识产权代理有限公司 11610 | 代理人: | 刘戈;孙明子 |
地址: | 310012 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | io 多路复用 方法 介质 设备 操作系统 | ||
1.一种IO多路复用方法,其特征在于,应用于处于内核态的监听线程,所述方法包括:
接收应用进程的调用请求,所述调用请求中包括多个内核对象的标识;所述多个内核对象是指通过相同内核对象基类实现的多个内核组件,所述内核对象基类基于不同内核组件用到的通用功能进行设定;
创建所述多个内核对象分别对应的代理信息,其中,每个内核对象对应的代理信息中包括事件内核对象;
将所述多个内核对象分别对应的代理信息对应地绑定到所述多个内核对象上;
通过创建的所述事件内核对象阻塞所述监听线程;
响应于事件触发线程对所述监听线程的唤醒,获取目标内核对象被触发的事件标识,其中,所述事件触发线程对所述目标内核对象触发所述被触发的事件标识对应的事件后,通过所述目标内核对象绑定的所述事件内核对象对所述监听线程进行唤醒,所述目标内核对象是所述多个内核对象中的任一个;
向所述应用进程发送所述目标内核对象的标识和所述被触发的事件标识。
2.根据权利要求1所述的方法,其特征在于,所述调用请求中还包括所述多个内核对象各自被关注的事件标识;每个内核对象对应的代理信息中还包括:相应内核对象被关注的事件标识;
所述目标内核对象被关注的事件标识用于:所述事件触发线程对所述目标内核对象触发所述被触发的事件标识对应的事件后,若根据所述目标内核对象绑定的代理信息确定所述目标内核对象被关注的事件标识中包含所述被触发的事件标识,则通过所述目标内核对象绑定的所述事件内核对象对所述监听线程进行唤醒。
3.根据权利要求1所述的方法,其特征在于,每个内核对象对应的代理信息中还包括:事件列表的指针;
所述获取目标内核对象被触发的事件标识,包括:
根据所述事件列表的指针查询所述事件列表,以从所述事件列表中获取所述目标内核对象被触发的事件标识;
其中,所述事件触发线程对所述目标内核对象触发所述被触发的事件标识对应的事件后,根据所述目标内核对象绑定的代理信息,将所述被触发的事件标识和所述目标内核对象的标识写入所述事件列表。
4.根据权利要求1所述的方法,其特征在于,所述事件触发线程对所述目标内核对象触发所述被触发的事件标识对应的事件后,将所述被触发的事件标识写入所述目标内核对象中;
所述创建所述多个内核对象分别对应的代理信息,包括:
若查询到所述多个内核对象中均不存在被触发的事件标识,则创建所述多个内核对象分别对应的代理信息。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
若查询到所述多个内核对象中存在被触发的事件标识,则直接向所述应用进程发送被触发的事件标识及相应内核对象的标识。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述多个内核对象分别对应的代理信息从所述多个内核对象上解绑;
删除所述多个内核对象分别对应的代理信息。
7.一种IO多路复用方法,其特征在于,应用于处于内核态的事件触发线程,所述方法包括:
对目标内核对象触发与被触发的事件标识对应的事件;其中,所述目标内核对象是监听线程监听的多个内核对象中的任一个;所述监听线程响应于应用进程的包含所述多个内核对象的标识的调用请求,创建所述多个内核对象分别对应的代理信息,并将所述多个内核对象分别对应的代理信息对应地绑定到所述多个内核对象上,其中,每个内核对象对应的代理信息中包括事件内核对象,所述监听线程通过创建的所述事件内核对象处于阻塞状态;所述多个内核对象是指通过相同内核对象基类实现的多个内核组件,所述内核对象基类基于不同内核组件用到的通用功能进行设定;
通过所述目标内核对象绑定的所述事件内核对象对所述监听线程进行唤醒,以使所述监听线程获取所述目标内核对象被触发的事件标识,并将所述被触发的事件标识和所述目标内核对象的标识发送至所述应用进程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里云计算有限公司,未经阿里云计算有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110879896.5/1.html,转载请声明来源钻瓜专利网。