[发明专利]一种基于JVM的磁盘直接I/O访问的方法有效

专利信息
申请号: 201710112761.X 申请日: 2017-02-28
公开(公告)号: CN106909441B 公开(公告)日: 2020-10-02
发明(设计)人: 陈涛;褚一帆 申请(专利权)人: 焦点科技股份有限公司
主分类号: G06F9/455 分类号: G06F9/455
代理公司: 南京瑞弘专利商标事务所(普通合伙) 32249 代理人: 陈建和
地址: 210003 江苏省南京市高新*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 jvm 磁盘 直接 访问 方法
【权利要求书】:

1.一种基于JVM的磁盘直接I/O访问方法,其特征在于,配置提供文件操作函数的API层、屏蔽操作系统文件系统访问差异的适配层、支持多种类编程语言转换的语言转换层、执行访问磁盘操作的直接调用I/O层,实现支持任何一种操作语言能跨越操作系统的页面高速缓存,获得直接操纵磁盘文件的能力;

在物理磁盘之上,基于系统架构层原始的结构,包括API层、适配层、语言转换层和直接调用I/O层,在相应的层结构上构建文件操作接口函数、文件操作指令语言转换接口函数、及直接访问磁盘接口函数;

层结构部署完毕后,写入数据请求,并根据请求内容直接访问磁盘,步骤包括:

步骤1:调用API层的文件打开函数,传入文件操作指令中的文件路径名参数,返回文件句柄fd;所述文件句柄是指操作系统为每一个文件分配的唯一标识,文件操作指令能通过文件句柄操作文件;在创建文件操作时,通过设置操作系统使用文件直接I/O访问的属性,使操作系统具备文件直接I/O访问能力;

步骤2:调用API层的文件读取函数或文件写入函数,提供传入文件句柄fd、文件偏移量offset、长度len、内存缓冲区buffer的参数;

步骤3:适配层读取当前运行的操作系统的配置信息,并根据配置信息判断该操作系统的类型,进而通过利用JVM的功能特性,调用预存在语言转换层中与操作系统对应的语言转换函数,将文件操作函数转换为当前操作系统能识别的语言,使文件操作指令能在当前操作系统内执行;

若不能根据当前运行的操作系统,找到相匹配的语言转换函数,则提示“不支持本操作系统”的错误标识;

步骤4:经语言转换层后的文件操作指令直接对磁盘进行操作:通过提前在磁盘区内设置文件操作指令对应的文件指针,并根据文件偏移量offset,将文件指针移动至距离文件开始位置为文件偏移量offset的地方;同时,提前在内存缓冲区中设置文件指针,并根据文件偏移量offset,将文件指针移动至距离文件开始位置为文件偏移量offset的地方;

步骤5:根据文件操作指令的内容,判定文件是读操作还是写操作,并按照文件内容所占字节数读取或写入相应数据量的数据;

若文件操作是读操作,则从磁盘区内文件指针当前位置开始,读取字节数为len的磁盘数据,传至内存缓存区中;

若文件操作是写操作,则从内存缓冲区内文件指针当前位置开始,读取字节数为len的缓冲数据,传至硬盘区中;

步骤6:文件读操作或写操作结束后,调用API层的关闭文件接口函数,传入文件句柄fd,关闭文件。

2.根据权利要求1所述的一种基于JVM的磁盘直接I/O访问方法,其特征在于,所述API层中构建文件操作指令应用于磁盘直接访问的打开文件接口函数、关闭文件接口函数、读取文件接口函数、写入文件接口函数,提供负责文件的打开、文件的关闭、文件的读和写;接口函数基于JVM语言编写;

所述适配层根据当前运行的操作系统,利用JVM的功能特性,选择适合当前操作系统的语言转换接口函数,使文件操作指令适应于当前操作系统,屏蔽因不同操作系统需要不同操作语言的差异性;

所述语言转换层按照转换后的文件操作语言,提供实现适应于当前操作系统的文件操作函数,用于之后执行具体的磁盘文件直接读写操作;

所述直接调用I/O层按照当前运行的操作系统,提供该操作系统的系统调用,直接访问磁盘。

3.根据权利要求1所述的一种基于JVM的磁盘直接I/O访问方法,其特征在于,所述API层、适配层、语言转换层及直接调用I/O层,每一个层结构也能是具有相似功能的功能模块。

4.根据权利要求1所述的一种基于JVM的磁盘直接I/O访问方法,其特征在于,步骤2中所述文件偏移量offset是指文件操作指令操作文件中数据的起始位置;所述长度len是指文件操作指令的操作文件中数据的字节数;所述内存缓冲区buffer:文件读取时,是指用来存放读取数据的内存区域;文件写入时,是指用来存放待写入数据的内存区域。

5.根据权利要求1所述的一种基于JVM的磁盘直接I/O访问方法,其特征在于,在步骤5中,针对所述内存缓冲区的内存地址,应按照操作系统内存分页大小,调整为内存分页大小的整数倍,以保持内存缓冲区与内存分页的对齐。

6.根据权利要求1所述的一种基于JVM的磁盘直接I/O访问方法,其特征在于,在步骤5中,针对所述磁盘区读写的字节数,应按照磁盘扇区大小,调整为磁盘扇区大小的整数倍,以保持内存缓冲区与扇区的对齐。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于焦点科技股份有限公司,未经焦点科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710112761.X/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top