[发明专利]一种多应用发包的优先级管理方法有效
| 申请号: | 201010597757.5 | 申请日: | 2010-12-17 |
| 公开(公告)号: | CN102055671A | 公开(公告)日: | 2011-05-11 |
| 发明(设计)人: | 刘朝辉;刘灿;李锋伟;万伟;刘兴彬 | 申请(专利权)人: | 天津曙光计算机产业有限公司 |
| 主分类号: | H04L12/56 | 分类号: | H04L12/56 |
| 代理公司: | 北京安博达知识产权代理有限公司 11271 | 代理人: | 徐国文 |
| 地址: | 300384 天津市西青区华*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 应用 发包 优先级 管理 方法 | ||
1.一种多应用发包的优先级管理方法,其特征在于:采用软硬件结合的系统,包括硬件网卡、驱动软件、接口库软件,步骤如下:
A、硬件网卡的PCI控制器向主机注册PCI空间;
B、驱动软件为每一个应用申请一片物理地址连续的内存,作为发送报文的缓冲区,把缓冲区的物理地址和长度写入PCI空间的对应寄存器,并设置硬件的写指针和应用软件的读指针为初始值0;
C、驱动软件申请一块内存区域作为驱动信息数据结构,其中包含当前CPU负载,驱动使用一个定时器函数,每隔一个时间片计算一下CPU占用情况,写入驱动信息数据结构中;
D、接口库中的API接口被一个应用调用时,首先把内核空间的该应用的缓冲区和硬件的PCI空间映射到该应用的用户空间,然后把驱动信息结构映射出来,查看当前的CPU负载情况;
E、应用软件在调用接口库打开设备时,根据该应用的优先级,在接口库中预设一个CPU负载情况的阈值;
F、每个应用在发送报文之前,先把驱动信息结构中的当前CPU负载和该应用优先级确定的CPU负载阈值相比较,如果当前CPU负载已经超过了该应用的阈值,则主动丢包;如果可以发包,应用就把报文写入报文缓冲区,根据报文长度,修改PCI空间的写指针;
G、硬件网卡轮询PCI空间的每个应用的缓冲区读写指针信息判断硬件写指针是否等于软件的读指针,如果不相等,则说明读指针和写指针之间是新的报文,需要发送,则从主机内存的报文缓冲区中读出报文,向网络发送出去,并移动读指针;如果读指针追上了写指针,则说明缓冲区内报文已经全部读出,则等待一个时间片后,进行下一次轮询。
2.如权利要求1所述一种多应用发包的优先级管理方法,其特征在于:A步骤中所述PCI空括包括报文缓冲区地址、长度、硬件从缓冲区读报文的读指针、软件向缓冲区写报文的写指针,根据预设的最大应用软件个数,为每一个应用申请一套寄存器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津曙光计算机产业有限公司,未经天津曙光计算机产业有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010597757.5/1.html,转载请声明来源钻瓜专利网。





