[发明专利]一种实现内存高速交互的系统及方法在审
申请号: | 201611062843.X | 申请日: | 2016-11-28 |
公开(公告)号: | CN106776356A | 公开(公告)日: | 2017-05-31 |
发明(设计)人: | 刘小瑞;王夷;李永平;徐强;孙赫;冯龙龙;高强强;张凯 | 申请(专利权)人: | 新疆熙菱信息技术股份有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 830011 新疆维吾尔自治区*** | 国省代码: | 新疆;65 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 内存 高速 交互 系统 方法 | ||
1.一种实现内存高速交互的方法,其特征在于,包括以下步骤:
1)当程序开始运行时,通过内核将所需大小的内存一次申请到位形成内存池;
2)将所述内存池切片划分为若干组不同大小的内存块;
3)将划分好的内存块的地址存入映射表,并建立内存块已使用和未使用两种映射表;
4)申请内存时,从内存块未使用的映射表里直接拿到比所需内存大且与所需内存大小最接近的一个内存块的地址,同时将所述地址放入到内存块已使用的映射表中,释放内存时,将所述地址重新放入到内存块未使用的映射表里,同时从内存块已使用的映射表中将所述地址删除;
5)待整个程序运行完成,直接释放掉整个内存池。
2.根据权利要求1所述的实现内存高速交互的方法,其特征在于,步骤1)中所需大小的内存是根据工程的实际应用领域确定的。
3.根据权利要求1所述的实现内存高速交互的方法,其特征在于,步骤3)中,将同一组内存块的地址存入映射表中的同一个单位区域。
4.一种实现内存高速交互的系统,其特征在于,包括内存池创建模块、内存池管理模块、匹配分析模块和内存池释放模块;
所述内存池创建模块用于当检测到程序运行时通过内核将所需大小的内存一次申请到位形成内存池,并将所述内存池切片划分为若干组不同大小的内存块;
所述匹配分析模块用于将所需内存与内存池内存储的内存块进行比较,选取比所需内存大且与所需内存大小最接近的一个内存块作为被调用的内存块;
所述内存池管理模块用于将划分好的内存块的地址存入映射表,并建立内存块已使用和未使用两种映射表,申请内存时,从内存块未使用的映射表里直接拿到内存块的地址,同时将所述地址放入到内存块已使用的映射表中,释放内存时,将所述地址重新放入到内存块未使用的映射表里,同时从内存块已使用的映射表中将所述地址删除;
所述内存池释放模块用于监测整个程序的运行,当整个程序运行结束时,释放掉整个内存池。
5.根据权利要求4所述的实现内存高速交互的系统,其特征在于,所述内存池创建模块申请的所需大小的内存是根据工程的实际应用领域确定的。
6.根据权利要求4所述的实现内存高速交互的系统,其特征在于,所述内存池管理模块通过其上的映射表创建模块实现将划分好的内存块的地址存入内存块已使用的映射表和内存块未使用的映射表内。
7.根据权利要求5所述的实现内存高速交互的系统,其特征在于,所述映射表创建模块将同一组内存块的地址存入映射表中的同一个单位区域。
8.根据权利要求4所述的实现内存高速交互的系统,其特征在于,所述内存池管理模块通过其上的内存块调用模块实现申请内存时,从内存块未使用的映射表里直接拿到内存块的地址,同时将所述地址放入到内存块已使用的映射表中,释放内存时,将所述地址重新放入到内存块未使用的映射表里,同时从内存块已使用的映射表中将所述地址删除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新疆熙菱信息技术股份有限公司,未经新疆熙菱信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611062843.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:对存储器的连续页面读取
- 下一篇:一种多路读写多容量选择的FIFO控制器