[发明专利]VxWorks系统下提高智能变电站快速报文处理速度的方法有效
申请号: | 201010011861.1 | 申请日: | 2010-01-09 |
公开(公告)号: | CN101753584A | 公开(公告)日: | 2010-06-23 |
发明(设计)人: | 韩明峰;李小滨;郑永志;岳增辉;高旭涛 | 申请(专利权)人: | 东方电子股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/56 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 264000 *** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明是一种VxWorks系统下提高智能变电站快速报文处理速度的方法。根据应用需求将系统中的多个网口划分为两类,一类是非快速报文网口,另一类是快速报文网口,当网卡发生中断时,非快速报文网口的网络工作由VxWorks系统网络任务来处理,快速报文网口的网络工作由新增加的网络任务netTaskId2来处理。快速报文应用任务使用网络内存池的缓冲区,用指针队列实现网络任务和快速报文应用任务之间的通信。能够保证快速报文网口网络工作的处理优先于或者能够抢占非快速报文网口网络工作,以及协议栈工作的处理。大大提高了快速报文处理的实时性。对于短帧,也通过预留缓冲区的方式避免了内存复制。 | ||
搜索关键词: | vxworks 系统 提高 智能 变电站 快速 报文 处理 速度 方法 | ||
【主权项】:
一种VxWorks系统下提高智能变电站快速报文处理速度的方法,其特征是:根据应用需求将系统中的多个网口划分为两类,一类是非快速报文网口,另一类是快速报文网口;定义快速报文网口使用的网络内存池每个缓冲区的大小为1580个字节;创建三个VxWorks环形缓冲区类型的队列,分别是网络工作队列netJobRing2,用来存放函数指针及其相应的入口参数,GOOSE报文指针队列GOOSERing,采样值报文指针队列SVRing;创建三个二进制同步信号量,分别是netTaskSemId2,GOOSESemId,SVSemId;创建一个比系统网络任务优先级更高的网络任务netTaskId2,网络任务netTaskId2悬挂等待在同步信号量netTaskSemId2上;当发生网卡中断时,网卡中断服务程序区分当前网口是非快速报文网口还是快速报文网口,如果是非快速报文网口,则同VxWorks原设计方式一样将该网口的网络工作添加到系统网络工作队列中,由系统网络任务进行处理;如果是快速报文网口,则将该网口的网络工作添加到网络工作队列netJobRing2中,触发同步信号量netTaskSemId2,由网络任务netTaskId2来进行处理;快速报文协议检出GOOSE报文后将报文指针放入GOOSE指针队列GOOSERing中,触发同步信号量GOOSESemId,通知GOOSE应用任务进行处理;快速报文协议检出采样值报文后将报文指针放入采样值指针队列SVRing中,触发同步信号量SVSemId,通知采样值应用任务进行处理;应用任务从指针队列中读取报文指针,处理完后释放报文;发送快速报文时使用网络内存池的缓冲区,将该缓冲区分成两块,第一块为1520个字节,第二块为60个字节,报文编码时从第一块的尾部向前编码组帧,当帧长不足60个字节时,确定帧长为60个字节,此时报文尾部使用了第二块缓冲区的部分空间。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东方电子股份有限公司,未经东方电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201010011861.1/,转载请声明来源钻瓜专利网。