一种虚拟存储器的驱动方法以及驱动器的制造方法_4

文档序号:9631364阅读:来源:国知局
用事件通知服务所耗费的时间,由此提高了虚拟机的读写速度。
[0096]通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,当使用软件实现本发明所提供的虚拟存储器的驱动方法时,可以将用于执行上述方法的指令或代码存储在计算机可读介质中或通过计算机可读介质进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、电可擦可编程只读存储器(全称:electrically erasableprogrammable read-only memory,简称:EEPR0M)、光盘、磁盘或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。
[0097]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【主权项】
1.一种虚拟存储器的驱动方法,应用于后端驱动器,其特征在于,所述方法包括: 从第一内存共享区域读取输入输出10请求;其中,所述第一内存共享区域为所述后端驱动器与前端驱动器的共享数据环内用于存储10请求的存储区域,所述10请求为所述前端驱动器存入所述第一内存共享区域的10请求; 将所述10请求发送至原生驱动器,并接收所述原生驱动器返回的10响应;其中,所述10响应为对所述10请求的响应; 将所述10响应存入第二内存共享区域的空闲位置,以便于所述前端驱动器从所述第二内存共享区域读取所述10响应;其中,所述第二内存共享区域为所述共享数据环内用于存储10响应的存储区域。2.根据权利要求1所述的方法,其特征在于,所述从第一内存共享区域读取10请求,包括: 循环检测所述第一内存共享区域的占用情况,当所述第一内存共享区域处于非空闲状态时,从所述第一内存共享区域读取所述10请求。3.根据权利要求1所述的方法,其特征在于,所述从第一内存共享区域读取10请求之后,所述方法还包括: 将所述10请求从所述第一内存共享区域删除。4.根据权利要求1所述的方法,其特征在于,所述将所述10响应存入第二内存共享区域的空闲位置,包括: 检测所述第二内存共享区域的占用情况,当确定所述第二内存共享区域有空闲位置时,将所述10响应存入所述第二内存共享区域的空闲位置。5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括: 向所述前端驱动器发送第一指示消息,所述第一指示消息用于指示所述第一内存共享区域和所述第二内存共享区域的地址范围。6.根据权利要求1-4任一项所述的方法,其特征在于, 所述后端驱动器为Xen平台的设备驱动域内的后端驱动器。7.—种虚拟存储器的驱动方法,应用于前端驱动器,其特征在于,所述方法包括: 接收输入输出10请求; 将所述10请求存入第一内存共享区域的空闲位置,以便后端驱动器从所述第一内存共享区域读取所述10请求;其中,所述第一内存共享区域为所述前端驱动器与所述后端驱动器的共享数据环内用于存储10请求的存储区域; 从第二内存共享区域读取10响应;其中,所述第二内存共享区域为所述共享数据环内用于存储10响应的存储区域,所述第二内存共享区域内的10响应,为由所述后端驱动器存入所述第二内存共享区域的,对所述10请求的响应。8.根据权利要求7所述的方法,其特征在于,所述将所述10请求存入第一内存共享区域的空闲位置,包括: 检测所述第一内存共享区域的占用情况,当确定所述第一内存共享区域有空闲位置时,将所述10请求存入所述第一内存共享区域的空闲位置。9.根据权利要求7所述的方法,其特征在于,所述从第二内存共享区域读取10响应,包括: 循环检测所述第二内存共享区域的占用情况,当所述第二内存共享区域处于非空闲状态时,从所述第二内存共享区域读取所述10响应。10.根据权利要求7所述的方法,其特征在于,所述从第二内存共享区域读取10响应之后,所述方法还包括: 将所述10响应从所述第二内存共享区域删除。11.根据权利要求7-10任一项所述的方法,其特征在于,所述方法还包括: 向所述后端驱动器发送第二指示消息,所述第二指示消息用于指示所述第一内存共享区域和所述第二内存共享区域的地址范围。12.根据权利要求7-10任一项所述的方法,其特征在于, 所述前端驱动器为Xen平台的普通虚拟域内的前端驱动器。13.一种后端驱动器,其特征在于,包括: 读取单元,用于从第一内存共享区域读取输入输出10请求;其中,所述第一内存共享区域为所述后端驱动器与前端驱动器的共享数据环内用于存储10请求的存储区域,所述10请求为所述前端驱动器存入所述第一内存共享区域的10请求; 后端交互单元,用于将所述读取单元从所述第一内存共享区域读取的所述10请求发送至原生驱动器,并接收所述原生驱动器返回的10响应;其中,所述10响应为对所述10请求的响应; 写入单元,用于将所述后端交互单元接收到的所述10响应存入第二内存共享区域的空闲位置,以便于所述前端驱动器从所述第二内存共享区域读取所述10响应;其中,所述第二内存共享区域为所述共享数据环内用于存储10响应的存储区域。14.根据权利要求13所述的后端驱动器,其特征在于, 所述读取单元,具体用于循环检测所述第一内存共享区域的占用情况,当所述第一内存共享区域处于非空闲状态时,从所述第一内存共享区域读取所述10请求。15.根据权利要求13所述的后端驱动器,其特征在于, 所述读取单元,还用于将所述10请求从所述第一内存共享区域删除。16.根据权利要求13所述的后端驱动器, 所述写入单元,具体用于检测所述第二内存共享区域的占用情况,当确定所述第二内存共享区域有空闲位置时,将所述10响应存入所述第二内存共享区域的空闲位置。17.根据权利要求13-16任一项所述的后端驱动器,其特征在于,所述后端驱动器还包括: 共享区域分配单元,用于向所述前端驱动器发送第一指示消息,所述第一指示消息用于指示所述第一内存共享区域和所述第二内存共享区域的地址范围。18.一种前端驱动器,其特征在于,所述前端驱动器包括: 接收单元,用于接收输入输出10请求; 写入单元,用于将所述接收单元接收到的所述10请求存入第一内存共享区域的空闲位置,以便后端驱动器从所述第一内存共享区域读取所述10请求;其中,所述第一内存共享区域为所述前端驱动器与所述后端驱动器的共享数据环内用于存储10请求的存储区域; 读取单元,用于从第二内存共享区域读取10响应;其中,所述第二内存共享区域为所述共享数据环内用于存储10响应的存储区域,所述第二内存共享区域内的10响应,为由所述后端驱动器存入所述第二内存共享区域的,对所述10请求的响应。19.根据权利要求18所述的前端驱动器,其特征在于, 所述写入单元,具体用于检测所述第一内存共享区域的占用情况,当确定所述第一内存共享区域有空闲位置时,将所述10请求存入所述第一内存共享区域的空闲位置。20.根据权利要求18所述的前端驱动器,其特征在于, 所述读取单元,具体用于循环检测所述第二内存共享区域的占用情况,当所述第二内存共享区域处于非空闲状态时,从所述第二内存共享区域读取所述10响应。21.根据权利要求18所述的前端驱动器,其特征在于, 所述读取单元,还用于将所述10响应从所述第二内存共享区域删除。22.根据权利要求18-21任一项所述的前端驱动器,其特征在于,所述前端驱动器还包括: 共享区域分配单元,用于向所述后端驱动器发送第二指示消息,所述第二指示消息用于指示所述第一内存共享区域和所述第二内存共享区域的地址范围。
【专利摘要】本发明提供一种虚拟存储器的驱动方法以及驱动器,涉及计算机领域,能够提高虚拟机的读写速度。具体方案为:后端驱动器从第一内存共享区域读取IO请求,所述IO请求为前端驱动器存入所述第一内存共享区域的IO请求;将所述IO请求发送至原生驱动器,并接收所述原生驱动器返回的IO响应;将所述IO响应存入第二内存共享区域的空闲位置,以便于所述前端驱动器从所述第二内存共享区域读取所述IO响应。本发明用于驱动虚拟存储器。
【IPC分类】G06F3/06
【公开号】CN105389133
【申请号】CN201510872174
【发明人】王燊
【申请人】华为技术有限公司
【公开日】2016年3月9日
【申请日】2015年12月2日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1