[发明专利]基于异步事件框架机制处理低速外设访问的系统及方法有效
申请号: | 201710393657.2 | 申请日: | 2017-05-27 |
公开(公告)号: | CN107239417B | 公开(公告)日: | 2021-01-26 |
发明(设计)人: | 付华楷;张学磊;刘应江 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | G06F13/12 | 分类号: | G06F13/12;G06F9/48 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 张凯 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 异步 事件 框架 机制 处理 低速 外设 访问 系统 方法 | ||
本发明涉及网络通信领域,公开了一种基于异步事件框架机制处理低速外设访问的系统,包括网络处理模块、异步事件通知框架和多个数据通信设备的外部线程:所述网络处理模块用于将任务加入任务队列,所述任务为数据通信设备与外设间的数据I/O操作;所述异步事件通知框架用于当任务加入任务队列后唤醒一外部线程;所述外部线程用于从任务队列中取出任务并处理。本发明还公开了一种基于异步事件框架机制处理低速外设访问的方法。本发明能够有效避免设备系统调用时堵塞现象的发生。
技术领域
本发明涉及网络通信领域,具体涉及一种基于异步事件框架机制处理低速外设访问的系统和一种基于异步事件框架机制处理低速外设访问的方法。
背景技术
数据通信设备的软件在运行的过程中为了保持良好的并发能力和可扩展性,通常采用的是事件驱动的软件框架,随着数据通信设备的功能需求不断增加,原有的数据通信设备的系统不断出现一些性能问题,影响系统的吞吐量和容量,较为突出的是消息驱动框架中外设访问对系统性能的影响,数据通讯设备的软件经常涉及到与低速外设,即与数据传输速度慢的设备间进行I/O(Input/Output,输入/输出)、写驱动等操作,这些操作使得数据通信设备软件的并发能力极大地降低。
数据通信设备由于其性能要求,数据通信设备的网络处理软件往往采用多线程的调度器模型,用于处理信令协议、表项计算和下发刷新等业务,在进行业务处理的同时,网络处理软件可能需要进行后台日志和管理软件包的处理,将后台日志和管理软件包写到磁盘中,或将计算出的表项调用驱动接口设置到芯片中,此时,数据通信设备当前的调度线程会由于I/O操作或系统调用而发生阻塞情况,使得调度线程卡顿而无法运行,只能等待数据通信设备的内核返回,其它待处理的业务模块的数据在这段时间内将无法得到调度,当数据通信设备的系统业务容量增大,数据通信设备系统的性能便会急剧下降,数据通信设备的CPU并没有在运行处理数据,且线程都在数据通信设备内核的阻塞队列当中等待唤醒的调度,从而出现卡顿等影响用户体验的问题,甚至由于信令协议处理超时,导致业务的中断。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于异步事件框架机制处理低速外设访问的系统和一种基于异步事件框架机制处理低速外设访问的方法,有效避免设备系统调用时堵塞现象的发生。
为达到以上目的,本发明采取的技术方案是:包括网络处理模块、异步事件通知框架和多个数据通信设备的外部线程:
所述网络处理模块用于将任务加入任务队列,所述任务为数据通信设备与外设间的数据I/O操作;
所述异步事件通知框架用于当任务加入任务队列后唤醒一外部线程;
所述外部线程用于从任务队列中取出任务并处理。
在上述技术方案的基础上,多个外部线程同时处理多个任务。
在上述技术方案的基础上,所述外部线程还用于将任务的处理结果反馈给网络处理模块。
本发明还公开了一种基于异步事件框架机制处理低速外设访问的方法,包括:
S1:将任务加入任务队列,所述任务为数据通信设备与外设间的数据I/O操作;
S2:判断任务队列中是否有任务,若有,则转到S3,若没有,则结束;
S3:唤醒一外部线程,同时外部线程从任务队列中取出任务并处理,然后转到S2。
在上述技术方案的基础上,所述外部线程为多个。
在上述技术方案的基础上,多个外部线程同时处理多个任务。
在上述技术方案的基础上,所述外部线程还用于将任务的处理结果反馈给数据通信设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710393657.2/2.html,转载请声明来源钻瓜专利网。