[发明专利]一种基于SRIO的高速存储回放方法有效
| 申请号: | 202011445919.3 | 申请日: | 2020-12-09 | 
| 公开(公告)号: | CN112416815B | 公开(公告)日: | 2023-05-23 | 
| 发明(设计)人: | 潘慕晗;徐赐坚;杨贤;谌文杰 | 申请(专利权)人: | 中船重工(武汉)凌久电子有限责任公司 | 
| 主分类号: | G06F12/06 | 分类号: | G06F12/06;G06F12/02;G06F12/1009;G06F3/06 | 
| 代理公司: | 北京中北知识产权代理有限公司 11253 | 代理人: | 李新昂 | 
| 地址: | 430000 湖*** | 国省代码: | 湖北;42 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 一种 基于 srio 高速 存储 回放 方法 | ||
1.一种基于SRIO的高速存储回放方法,其特征在于,包括:
(a)统一对齐地址映射,在Linux系统上,使SRIO驱动使用的物理内存与用户空间内存、文件O_DIRECT读写空间一致;
所述统一对齐地址映射的程序流程包括:
(1)、在Linux系统中,在设备初始化过程中,注册一段对齐的连续的物理内存,记为内存块A,并删除内核对特殊页表的特殊处理,使特殊页表与普通页表一样使用;
(2)、创建一个内核模块,注册一个MISC设备,记为设备RMEM,该MISC设备的驱动中,包含open、close、read、write、mmap,mmap将内存块A直接映射到用户层,提供给用户的应用程序进行访问;
(3)、软件中打开设备RMEM,通过read操作获取到内存块A的地址和大小,再通过mmap操作将内存块A映射到用户层,提供给应用程序进行访问;
(b)二级流水,利用同区映射的连续对齐物理内存区域,以地址递增的方式同时连续地进行SRIO的直接DMA和磁盘文件异步无缓存读写两条流水线;
所述二级流水的程序流程包括:
(1)、接收到门铃后,根据门铃的消息内容提交文件写入操作,将对应内存地址的数据写入磁盘,提交后不等待写入完成,立即继续等待接收下一个门铃消息;
(2)、需要进行回放时,根据需要回放的数据长度,循环提交递增偏移地址的文件读取操作,将数据读取到相应物理内存中,直到写入到用于数据回放的逻辑地址的尾部时,回到首地址;
(3)、当上述(2)中的一次数据读取完成时,会通知软件通过SRIO将数据发送到指定设备,至此实现了存储和放回两级直接IO流水。
2.根据权利要求1所述的一种基于SRIO的高速存储回放方法,其特征在于:所述统一对齐地址映射映射完成后可以访问连续的逻辑地址或访问连续的物理地址,并且在逻辑地址或物理地址对齐的位置使用无缓存进行快速读写。
3.根据权利要求1所述的一种基于SRIO的高速存储回放方法,其特征在于:所述SRIO驱动的SRIO数据抵达物理内存的同时进行数据存储,同样在读取数据的同时可以进行SRIO数据发送,且在数据读写时,使用异步无缓存,在SRIO数据写入对应区域后,只需提交磁盘文件读写到队列。
4.根据权利要求3所述的一种基于SRIO的高速存储回放方法,其特征在于:所述二级流水程序在进行回放时,提交异步IO需要携带带有内存块计数的数据。
5.根据权利要求4所述的一种基于SRIO的高速存储回放方法,其特征在于:所述统一对齐地址映射的程序在初始化过程中所注册的连续对齐物理内存采用环形队列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中船重工(武汉)凌久电子有限责任公司,未经中船重工(武汉)凌久电子有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011445919.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:电子设备
- 下一篇:触控显示面板和显示装置





