CN116540929A - 磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质 - Google Patents
磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116540929A CN116540929A CN202310370761.5A CN202310370761A CN116540929A CN 116540929 A CN116540929 A CN 116540929A CN 202310370761 A CN202310370761 A CN 202310370761A CN 116540929 A CN116540929 A CN 116540929A
- Authority
- CN
- China
- Prior art keywords
- instruction
- disk array
- virtualized
- disk
- virtual machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 102
- 238000003491 array Methods 0.000 claims abstract description 11
- 238000005516 engineering process Methods 0.000 claims description 26
- 238000013519 translation Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 13
- 230000004048 modification Effects 0.000 claims description 12
- 238000012986 modification Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 description 26
- 239000003607 modifier Substances 0.000 description 16
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000004088 simulation Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0667—Virtualisation aspects at data level, e.g. file, record or object virtualisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质,所述方法包括:接收虚拟操作系统模拟器发送的第一指令;在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。本发明通过对磁盘阵列进行虚拟化,可使虚拟机通过模拟读取磁盘阵列的方式读取磁盘数据,提升了读取速度和读取效率。
Description
技术领域
本发明涉及服务器技术领域,尤其涉及一种磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质。
背景技术
目前基于QEMU-kvm的服务器虚拟化技术应用十分广泛。虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。在虚拟化技术中,对硬件的以软件技术表达是虚拟化技术的基础。CPU、网卡等硬件的虚拟化都可以在虚拟化软件中进行逻辑划分,但是由于对RAID卡进行虚拟化存在不足。因此,虚拟机读取磁盘数据的过程较为复杂,读取速度较慢。
发明内容
本发明提供一种磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质,用以解决现有技术中虚拟机读取磁盘数据的过程较为复杂,读取速度较慢的缺陷,实现虚拟机模拟读取RAID卡的方式以提升读取效率。
本发明提供一种磁盘阵列的虚拟化读取方法,包括:
接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
根据本发明提供的一种磁盘阵列的虚拟化读取方法,所述基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入,包括:
基于所述配置信息确定所述虚拟化的磁盘阵列对应的虚拟机信息,以及所述虚拟化的磁盘阵列的缓存配额和优先级执行信息;
基于所述虚拟化的磁盘阵列对应的虚拟机信息、所述磁盘阵列的缓存配额和优先级执行信息,得到所述第二指令并执行所述第二指令,以基于所述磁盘阵列的缓存配额和优先级执行信息,调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
根据本发明提供的一种磁盘阵列的虚拟化读取方法,所述在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配之前,还包括:
对所述第一指令进行解析,得到所述第一指令对应的第一虚拟机信息。
根据本发明提供的一种磁盘阵列的虚拟化读取方法,所述基于配置库对所述第一指令进行检索匹配,包括:
基于所述第一指令确定所述配置库中是否存在与所述第一虚拟机信息匹配的虚拟化的磁盘阵列的配置信息。
根据本发明提供的一种磁盘阵列的虚拟化读取方法,所述基于配置库对所述第一指令进行检索匹配之后,还包括:
在所述配置库中不存在匹配的虚拟化的磁盘阵列的配置信息的情况下,执行所述第一指令。
根据本发明提供的一种磁盘阵列的虚拟化读取方法,还包括:
确定所述配置库中磁盘阵列或任一虚拟机信息发生变化,对所述配置信息进行更新。
本发明还提供一种磁盘阵列的虚拟化方法,应用于虚拟操作系统模拟器,包括:
接收客户端发送的磁盘读/写指令;
基于二进制指令翻译技术,将所述磁盘读/写指令翻译成目标格式的中间代码,并将所述中间代码翻译成磁盘阵列可执行的类型指令,生成第一指令;
向虚拟机发送所述第一指令。
根据本发明提供的一种磁盘阵列的虚拟化方法,还包括:
确定虚拟化的磁盘阵列的配置信息,所述配置信息包括所述虚拟化的磁盘阵列对应的虚拟机信息,以及所述虚拟化的磁盘阵列的缓存配额和优先级执行信息;
将所述配置信息存入配置库,并将所述虚拟化的所述磁盘阵列存储到相应虚拟机的资源池中,以供所述相应虚拟机根据业务需求调用。
本发明还提供一种磁盘阵列的虚拟化读取装置,包括:
接收模块,用于接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
匹配模块,用于在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
修改模块,用于在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述磁盘阵列的虚拟化读取方法或磁盘阵列的虚拟化方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述磁盘阵列的虚拟化读取方法或磁盘阵列的虚拟化方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述磁盘阵列的虚拟化读取方法或磁盘阵列的虚拟化方法。
本发明提供的磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质,通过接收虚拟操作系统模拟器发送的第一指令,确定用户选择使用磁盘阵列的情况下,基于配置库对第一指令进行检索匹配,在匹配成功确定配置库中存在磁盘阵列的配置信息的情况下,对第一指令进行修改,得到第二指令,执行所述第二指令以读取虚拟化的磁盘阵列。本发明通过对磁盘阵列进行虚拟化,可使虚拟机通过模拟读取磁盘阵列的方式读取磁盘数据,提升了读取速度和读取效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中基于QEMU-kvm的服务器虚拟化技术的技术原理图;
图2是本发明提供的磁盘阵列的虚拟化读取方法的流程示意图之一;
图3是本发明提供的磁盘阵列的虚拟化读取方法的流程示意图之二;
图4是本发明提供的磁盘阵列的虚拟化方法的流程示意图;
图5是本发明提供的磁盘阵列的虚拟化读取装置的结构示意图;
图6是本发明提供的磁盘阵列的虚拟化装置的结构示意图;
图7是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称的非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备固有的其他步骤或单元。
首先对本发明涉及的专业术语进行解释说明:
QEMU:Quick Emulator,是一个纯软件实现的虚拟化系统,代码中包含了整套的虚拟机实现,包括CPU虚拟化、内存虚拟化,以及其他虚拟设备的模拟,比如网卡、显卡、硬盘等。QEMU可作为一个宿主机的VMM(virtual machine monitor),通过动态二进制转换来模拟CPU,并提供一系列的硬件模型,使虚拟机操作系统认为自己在和硬件打交道,其实是同QEMU模拟出来的硬件打交道,QEMU再将这些指令翻译给真正的硬件进行操作。
KVM:Kernel-based Virtual Machine,是基于Linux内核的开源虚拟化解决方案,KVM是依赖于硬件辅助虚拟化技术的全虚拟化解决方案,其基本思想是在Linux内核的基础上添加虚拟机管理模块,重用Linux内核中已完善和成熟的机制和模块,比如进程调度、内存管理、IO管理等,使之成为一个可以支持运行虚拟机的hypervisor(虚拟机监控程序)。KVM只提供了CPU和内存管理的虚拟化。
参照图1,图1是基于QEMU-kvm的服务器虚拟化技术的技术原理图。虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。
需要说明的是,本发明提供的磁盘阵列的虚拟化读取方法的执行主体可以是电子设备、电子设备中的部件、集成电路、或芯片。该电子设备可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(Network Attached Storage,NAS)或个人计算机(personal computer,PC)等,本发明不作具体限定。以下以计算机执行本发明提供的磁盘阵列的虚拟化读取方法,对本发明的各步骤进行详细描述。
参照图2,本发明提供的磁盘阵列的虚拟化读取方法,包括以下步骤:
步骤210、接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
步骤220、在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
步骤230、在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
在上述步骤210中,第一指令是通过虚拟操作系统模拟器QEMU根据二进制指令翻译技术进行指令虚拟化得到的。具体过程可以体现为:提取客户端的代码指令,然后将其翻译成TCG(Tiny Code Generator)中间代码,最后再将中间代码翻译成物理机指定架构的代码,以此来实现对硬件的虚拟化模拟。第一指令是虚拟操作系统模拟器QEMU基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令。也就是说,磁盘序列RAID卡虚拟化的过程即是QEMU将客户机发送的磁盘读取指令翻译成RAID可以执行的指令的过程。
RAID,Redundant Array of Independent Disks,独立冗余磁盘阵列,本发明中简称为磁盘阵列。简单的说,RAID是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。RAID卡就是用来实现RAID功能的板卡,通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列零组件构成的。通常情况下,RAID卡由以下部分组成:
SCSI控制器:后端连接SCSI物理磁盘;
PCI总线控制器:其前端连接到主机的PCI总线上,来维护PCI总线仲裁、数据发送接收等功能;
ROM:其中存放着初始化RAID卡必须的代码以及实现RAID功能所需的代码;
RAM:首先是作为数据缓存(OS要写入硬盘的数据以及OS要读取的硬盘的数据),提高性能;其次作为RAID卡上的CPU执行RAID运算所需要的内存空间;
XOR芯片:用来做RAID3,5,6,等这类校验型RAID的校验数据计算用的。
需要补充说明的是,RAID卡的虚拟化均是在用户态进行的。
在上述步骤220中,确定用户选择使用磁盘阵列的情况下,基于配置库对第一指令进行检索匹配。也就是说,在用户意愿选择使用RAID卡(虚拟机需要进行磁盘阵列读取)时,需要根据配置库对第一指令进行检索,也就是判断配置库中是否存在与第一指令对应的RAID卡的配置信息。
若配置库中存在RAID卡的配置信息则表示匹配成功,此时则需要对第一指令进行修改,其目的是为了进一步确认与配置信息对应的RAID卡。若配置库中不存在RAID卡的配置信息则表示匹配失败,此时无法读取RAID卡,因此可直接执行第一指令。
在上述步骤230中,既是根据匹配成功的结果基于所述配置信息对所述第一指令进行修改,并得到第二指令,执行所述第二指令,以实现虚拟机读取虚拟化的磁盘阵列。
需要说明的是,根据修改后的第二指令,在读取过程中能够获得磁盘阵列卡缓存的使用配额以及数据指令执行优先级,即虚拟机优先读取了RAID卡,即使用了RAID卡的缓存,从而可以获取性能方面的提升。
本发明提供的磁盘阵列的虚拟化读取方法,通过接收虚拟操作系统模拟器QEMU发送的第一指令,确定用户选择使用磁盘阵列的情况下,基于配置库对第一指令进行检索匹配,在匹配成功确定配置库中存在磁盘阵列的配置信息的情况下,对第一指令进行修改,得到第二指令,执行所述第二指令以读取虚拟化的磁盘阵列。本发明通过对磁盘阵列进行虚拟化,可使虚拟机通过模拟读取磁盘阵列的方式读取磁盘数据,提升了读取速度和读取效率。
在一些可选的实施例中,所述基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入,包括:
基于所述配置信息确定所述虚拟化的磁盘阵列对应的虚拟机信息,以及所述虚拟化的磁盘阵列的缓存配额和优先级执行信息;
基于所述虚拟化的磁盘阵列对应的虚拟机信息、所述磁盘阵列的缓存配额和优先级执行信息,得到所述第二指令并执行所述第二指令,以基于所述磁盘阵列的缓存配额和优先级执行信息,调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
具体地,本实施例中,对匹配成功的第一指令,表示配置库中存在与其对应的RAID卡配置信息,那么需要根据具体的配置信息对第一指令进行修改,得到修改后的第二指令。
具体的修改方式是根据与第一指令匹配成功的磁盘阵列的配置信息确定虚拟化的磁盘阵列对应的虚拟机信息,以及磁盘阵列的缓存配额和优先级执行信息,从而得到修改后的第二指令。
根据修改后的第二指令,在读取过程中能够获得磁盘阵列卡缓存的使用配额以及数据指令执行优先级,随之执行修改后得到的目标指令,实现虚拟机对磁盘数据的读取或写入。
在一些可选的实施例中,所述在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配之前,还包括:
对所述第一指令进行解析,得到所述第一指令对应的第一虚拟机信息;
相应地,所述基于配置库对所述第一指令进行检索匹配,包括:
基于所述第一指令确定所述配置库中是否存在与所述第一虚拟机信息匹配的虚拟化的磁盘阵列的配置信息。
具体地,本实施例为第一指令的解析和匹配的过程。首先需要说明的是,本实施例的执行过程可由多个单元完成,包括配置库、接收器、解析器以及修改器。
配置库:该部分存储各虚拟机RAID卡配置信息,配置库中信息在每次虚拟机RAID卡配置发生变化时进行更新。接收器:接收QEMU翻译的指令,将指令发送给解析器。解析器:负责解析QEMU翻译的指令,得到虚拟机相关信息,并将指令和解析信息发送给修改器。修改器:修改器接收到指令解析信息后,根据解析出的虚拟机信息检索配置库中虚拟机RAID卡配置信息,如果没有发现RAID卡配置信息,则将指令不做修改直接执行。如果发现有RAID卡的配置,则根据具体配置信息修改指令,获得RAID卡缓存额度以及执行优先级,然后执行修改后的指令。
在进行匹配之前,需要通过解析器对第一指令进行解析,得到第一指令对应的虚拟机信息,然后将解析后的第一指令和虚拟机信息发送至修改器进行匹配和修改。
修改器根据解析后的第一指令和虚拟机信息检索配置库中是否存在磁盘阵列的配置信息,得到匹配结果。
若配置库中存在RAID卡的配置信息则表示匹配成功,得到第一匹配结果,此时则需要对第一指令进行修改,其目的是为了进一步确认与配置信息对应的RAID卡。
可选地,所述基于配置库对所述第一指令进行检索匹配之后,还包括:
在所述配置库中不存在匹配的虚拟化的磁盘阵列的配置信息的情况下,执行所述第一指令。
若配置库中不存在RAID卡的配置信息则表示匹配失败,得到第二匹配结果,此时无法读取RAID卡,因此可直接执行第一指令。
在一些可选的实施例中,还包括:确定所述配置库中磁盘阵列或任一虚拟机信息发生变化,对所述配置信息进行更新。
可以理解的是,配置库中的配置信息是根据每次虚拟机信息或者磁盘阵列发生变化时进行更新,以便根据更新后的配置库对第一指令进行检索匹配,进而提高第一指令的检索精确性。
参照图3,本发明提供的磁盘阵列的虚拟化读取方法,包括以下步骤:
首先,QEMU指令发送;接收器接收QEMU翻译的指令;解析器解析指令;修改器接收解析指令;检索配置库,是否匹配;若是,则修改器修改指令,然后执行指令;若否,则直接执行指令。
参照图4,本发明还提供一种磁盘阵列的虚拟化方法,包括以下步骤:
步骤410、接收客户端发送的磁盘读/写指令;
步骤420、基于二进制指令翻译技术,将所述磁盘读/写指令翻译成目标格式的中间代码,并将所述中间代码翻译成磁盘阵列可执行的类型指令,生成第一指令;
步骤430、向虚拟机发送所述第一指令。
进一步地,所述方法还包括;
确定虚拟化的磁盘阵列的配置信息,所述配置信息包括所述虚拟化的磁盘阵列对应的虚拟机信息,以及所述虚拟化的磁盘阵列的缓存配额和优先级执行信息;
将所述配置信息存入配置库,并将所述虚拟化的所述磁盘阵列存储到相应虚拟机的资源池中,以供所述相应虚拟机根据业务需求调用。
本实施例是接收客户端发送的磁盘读/写指令,然后对磁盘读/写指令进行虚拟化,从而使得该指令为磁盘阵列可执行的类型指令。然后将该指令发送给虚拟机,以使虚拟机根据该指令实现磁盘的读取或写入。
此外,本实施例还需要对磁盘阵列进行虚拟化,得到虚拟化的磁盘阵列的配置信息,将所述配置信息存储到资源池中,以供用户虚拟机按照业务需求添加使用。
具体地,本实施例为RAID卡虚拟化的过程。QEMU软件实现虚拟化的思路是二进制指令翻译技术,主要是提取客户端的代码指令,然后将其翻译成TCG(Tiny CodeGenerator)中间代码,最后再将中间代码翻译成物理机指定架构的代码,以此来实现对硬件的虚拟化模拟。RAID卡虚拟化的过程即是QEMU将客户机发送的磁盘读取指令翻译成RAID可以执行的指令的过程。将RAID虚拟化之后,可将其添加到虚拟机资源池中,可由用户虚拟机按照业务需求添加使用。
添加虚拟RAID卡的用户虚拟机,在进行日常使用中,会按照相应RAID卡缓存配额和优先级配置获得相应的磁盘I/O性能提升,即该虚拟机所要写入或读取的磁盘数据会优先使用RAID卡缓存,同时系统会优先处理该部分数据,从而加快虚拟机的读写速度,达到提升性能的目的。
基于QEMU-kvm的虚拟机运行过程如下:
(1)运行在用户态的QEMU-kvm通过ioctl系统调用操作/dev/kvm字符设备,创建VM(虚拟绩)和vCPU(虚拟CPU)。
(2)KVM内核模块负责相关数据结构的创建和初始化,然后返回用户态。
(3)QEMU-kvm通过ioctl(请求码)调用运行vCPU,即调度相应的虚拟机运行。
(4)KVM内核进行相关处理后,执行VMLAUNCH指令,通过VM-Entry进入虚拟机操作系统运行,虚拟机操作系统运行于non-root模式下。
(5)虚拟机操作系统执行相应的虚拟机代码,有权限的指令可直接在物理CPU上运行。
(6)当虚拟机操作系统运行遇到无权限指令、发生外部中断、或虚拟机操作系统发生内部异常时,暂停虚拟机操作系统的运行,将产生VM-Exit退出non-root(非根状态)模式进行异常处理,并将相关信息记录到VMCS结构中。
(7)VM-Exit使CPU退回到root模式下,由KVM内核读取VMCS虚拟机控制结构结构判断VM-Exit的原因。
(8)如果是IO操作或是其他外设指令,则返回用户态QEMU-kvm,由QEMU-kvm完成对相关指令的模拟。
(9)如果不是,则由KVM自行处理。
(10)处理完成以后,重新VM-Entry进入到虚拟机操作系统中运行。
在虚拟机运行的过程中,虚拟机代码中的磁盘读取IO指令,返回用户态,由QEMU读取该指令,进行翻译,翻译完成后虚拟机可正常通过RAID卡读取磁盘数据,虚拟机启动。虚拟机启动后,再有读取磁盘的IO指令,也是通过QEMU翻译,模拟RAID卡,完成与磁盘的通信。
下面对本发明提供的磁盘阵列的虚拟化装置进行描述,下文描述的磁盘阵列的虚拟化装置与上文描述的磁盘阵列的虚拟化读取方法可相互对应参照。
参照图5,本发明提供的磁盘阵列的虚拟化读取装置,包括以下模块:
接收模块510,用于接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
匹配模块520,用于在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
修改模块530,用于在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
在上述接收模块中,第一指令是通过虚拟操作系统模拟器QEMU根据二进制指令翻译技术进行指令虚拟化得到的。具体过程可以体现为:提取客户端的代码指令,然后将其翻译成TCG(Tiny Code Generator)中间代码,最后再将中间代码翻译成物理机指定架构的代码,以此来实现对硬件的虚拟化模拟。也就是说,磁盘序列RAID卡虚拟化的过程即是QEMU将客户机发送的磁盘读取指令翻译成RAID可以执行的指令的过程。
RAID,Redundant Array of Independent Disks,独立冗余磁盘阵列,本发明中简称为磁盘阵列。简单的说,RAID是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。RAID卡就是用来实现RAID功能的板卡,通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列零组件构成的。通常情况下,RAID卡由以下部分组成:
SCSI控制器:后端连接SCSI物理磁盘;
PCI总线控制器:其前端连接到主机的PCI总线上,来维护PCI总线仲裁、数据发送接收等功能;
ROM:其中存放着初始化RAID卡必须的代码以及实现RAID功能所需的代码;
RAM:首先是作为数据缓存(OS要写入硬盘的数据以及OS要读取的硬盘的数据),提高性能;其次作为RAID卡上的CPU执行RAID运算所需要的内存空间;
XOR芯片:用来做RAID3,5,6,等这类校验型RAID的校验数据计算用的。
需要补充说明的是,RAID卡的虚拟化均是在用户态进行的。
在上述匹配模块520中,确定用户选择使用磁盘阵列的情况下,基于配置库对第一指令进行检索匹配。也就是说,在用户意愿选择使用RAID卡(虚拟机需要进行磁盘阵列读取)时,需要根据配置库对第一指令进行检索,也就是判断配置库中是否存在与第一指令对应的RAID卡的配置信息。
若配置库中存在RAID卡的配置信息则表示匹配成功,此时则需要对第一指令进行修改,其目的是为了进一步确认与配置信息对应的RAID卡。若配置库中不存在RAID卡的配置信息则表示匹配失败,此时无法读取RAID卡,因此可直接执行第一指令。
在上述修改模块530中,既是根据匹配成功的结果基于所述配置信息对所述第一指令进行修改,并得到第二指令,执行所述第二指令,以实现虚拟机读取虚拟化的磁盘阵列。
需要说明的是,根据修改后的第二指令,在读取过程中能够获得磁盘阵列卡缓存的使用配额以及数据指令执行优先级,即虚拟机优先读取了RAID卡,即使用了RAID卡的缓存,从而可以获取性能方面的提升。
本发明提供的磁盘阵列的虚拟化读取装置,通过接收虚拟操作系统模拟器QEMU发送的第一指令,确定用户选择使用磁盘阵列的情况下,基于配置库对第一指令进行检索匹配,在匹配成功确定配置库中存在磁盘阵列的配置信息的情况下,对第一指令进行修改,得到第二指令,执行所述第二指令以读取虚拟化的磁盘阵列。本发明通过对磁盘阵列进行虚拟化,可使虚拟机通过模拟读取磁盘阵列的方式读取磁盘数据,提升了读取速度和读取效率。
在一些可选的实施例中,所述基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入,包括:
基于所述配置信息确定所述虚拟化的磁盘阵列对应的虚拟机信息,以及所述虚拟化的磁盘阵列的缓存配额和优先级执行信息;
基于所述虚拟化的磁盘阵列对应的虚拟机信息、所述磁盘阵列的缓存配额和优先级执行信息,得到所述第二指令并执行所述第二指令,以基于所述磁盘阵列的缓存配额和优先级执行信息,调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
具体地,本实施例中,对匹配成功的第一指令,表示配置库中存在与其对应的RAID卡配置信息,那么需要根据具体的配置信息对第一指令进行修改,得到修改后的第二指令。
具体的修改方式是根据与第一指令匹配成功的磁盘阵列的配置信息确定虚拟化的磁盘阵列对应的虚拟机信息,以及磁盘阵列的缓存配额和优先级执行信息,从而得到修改后的第二指令。
根据修改后的第二指令,在读取过程中能够获得磁盘阵列卡缓存的使用配额以及数据指令执行优先级,随之执行修改后得到的目标指令,实现虚拟机对磁盘数据的读取或写入。
在一些可选的实施例中,所述在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配之前,还包括:
对所述第一指令进行解析,得到所述第一指令对应的第一虚拟机信息;
所述基于配置库对所述第一指令进行检索匹配,包括:
基于所述第一指令确定所述配置库中是否存在与所述第一虚拟机信息匹配的虚拟化的磁盘阵列的配置信息。
具体地,本实施例为第一指令的解析和匹配的过程。首先需要说明的是,本实施例的执行过程可由多个单元完成,包括配置库、接收器、解析器以及修改器。
配置库:该部分存储各虚拟机RAID卡配置信息,配置库中信息在每次虚拟机RAID卡配置发生变化时进行更新。接收器:接收QEMU翻译的指令,将指令发送给解析器。解析器:负责解析QEMU翻译的指令,得到虚拟机相关信息,并将指令和解析信息发送给修改器。修改器:修改器接收到指令解析信息后,根据解析出的虚拟机信息检索配置库中虚拟机RAID卡配置信息,如果没有发现RAID卡配置信息,则将指令不做修改直接执行。如果发现有RAID卡的配置,则根据具体配置信息修改指令,获得RAID卡缓存额度以及执行优先级,然后执行修改后的指令。
在进行匹配之前,需要通过解析器对第一指令进行解析,得到第一指令对应的虚拟机信息,然后将解析后的第一指令和虚拟机信息发送至修改器进行匹配和修改。
修改器根据解析后的第一指令和虚拟机信息检索配置库中是否存在磁盘阵列的配置信息,得到匹配结果。
若配置库中存在RAID卡的配置信息则表示匹配成功,得到第一匹配结果,此时则需要对第一指令进行修改,其目的是为了进一步确认与配置信息对应的RAID卡。
可选地,所述基于配置库对所述第一指令进行检索匹配之后,还包括:
在所述配置库中不存在匹配的虚拟化的磁盘阵列的配置信息的情况下,执行所述第一指令。
若配置库中不存在RAID卡的配置信息则表示匹配失败,得到第二匹配结果,此时无法读取RAID卡,因此可直接执行第一指令。
在一些可选的实施例中,还包括:确定所述配置库中磁盘阵列或任一虚拟机信息发生变化,对所述配置信息进行更新。
可以理解的是,配置库中的配置信息是根据每次虚拟机信息或者磁盘阵列发生变化时进行更新,以便根据更新后的配置库对第一指令进行检索匹配,进而提高第一指令的检索精确性。
参照图6,本发明还提供一种磁盘阵列的虚拟化装置,包括以下模块:
读写模块610,用于接收客户端发送的磁盘读/写指令;
翻译模块620,用于基于二进制指令翻译技术,将所述磁盘读/写指令翻译成目标格式的中间代码,并将所述中间代码翻译成磁盘阵列可执行的类型指令,生成第一指令;
发送模块630,用于向虚拟机发送所述第一指令。
进一步地,所述装置还包括配置模块,配置模块具体用于:
确定虚拟化的磁盘阵列的配置信息,所述配置信息包括所述虚拟化的磁盘阵列对应的虚拟机信息,以及所述虚拟化的磁盘阵列的缓存配额和优先级执行信息;
将所述配置信息存入配置库,并将所述虚拟化的所述磁盘阵列存储到相应虚拟机的资源池中,以供所述相应虚拟机根据业务需求调用。
本实施例是接收客户端发送的磁盘读/写指令,然后对磁盘读/写指令进行虚拟化,从而使得该指令为磁盘阵列可执行的类型指令。然后将该指令发送给虚拟机,以使虚拟机根据该指令实现磁盘的读取或写入。
此外,本实施例还需要对磁盘阵列进行虚拟化,得到虚拟化的磁盘阵列的配置信息,将所述配置信息存储到资源池中,以供用户虚拟机按照业务需求添加使用。具体地,本实施例为RAID卡虚拟化的过程。QEMU软件实现虚拟化的思路是二进制指令翻译技术,主要是提取客户端的代码指令,然后将其翻译成TCG(Tiny Code Generator)中间代码,最后再将中间代码翻译成物理机指定架构的代码,以此来实现对硬件的虚拟化模拟。RAID卡虚拟化的过程即是QEMU将客户机发送的磁盘读取指令翻译成RAID可以执行的指令的过程。将RAID虚拟化之后,可将其添加到虚拟机资源池中,可由用户虚拟机按照业务需求添加使用。
添加虚拟RAID卡的用户虚拟机,在进行日常使用中,会按照相应RAID卡缓存配额和优先级配置获得相应的磁盘I/O性能提升,即该虚拟机所要写入或读取的磁盘数据会优先使用RAID卡缓存,同时系统会优先处理该部分数据,从而加快虚拟机的读写速度,达到提升性能的目的。
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行磁盘阵列的虚拟化读取方法,该方法包括:
接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入;
或执行磁盘阵列的虚拟化方法,该方法包括:
接收客户端发送的磁盘读/写指令;
基于二进制指令翻译技术,将所述磁盘读/写指令翻译成目标格式的中间代码,并将所述中间代码翻译成磁盘阵列可执行的类型指令,生成第一指令;
向虚拟机发送所述第一指令。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的磁盘阵列的虚拟化读取方法,该方法包括:
接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入;
或执行磁盘阵列的虚拟化方法,该方法包括:
接收客户端发送的磁盘读/写指令;
基于二进制指令翻译技术,将所述磁盘读/写指令翻译成目标格式的中间代码,并将所述中间代码翻译成磁盘阵列可执行的类型指令,生成第一指令;
向虚拟机发送所述第一指令。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的磁盘阵列的虚拟化读取方法,该方法包括:
接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入;
或执行磁盘阵列的虚拟化方法,该方法包括:
接收客户端发送的磁盘读/写指令;
基于二进制指令翻译技术,将所述磁盘读/写指令翻译成目标格式的中间代码,并将所述中间代码翻译成磁盘阵列可执行的类型指令,生成第一指令;
向虚拟机发送所述第一指令。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种磁盘阵列的虚拟化读取方法,其特征在于,应用于虚拟机,包括:
接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
2.根据权利要求1所述的磁盘阵列的虚拟化读取方法,其特征在于,所述基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入,包括:
基于所述配置信息确定所述虚拟化的磁盘阵列对应的虚拟机信息,以及所述虚拟化的磁盘阵列的缓存配额和优先级执行信息;
基于所述虚拟化的磁盘阵列对应的虚拟机信息、所述磁盘阵列的缓存配额和优先级执行信息,得到所述第二指令并执行所述第二指令,以基于所述磁盘阵列的缓存配额和优先级执行信息,调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
3.根据权利要求1所述的磁盘阵列的虚拟化读取方法,其特征在于,所述在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配之前,还包括:
对所述第一指令进行解析,得到所述第一指令对应的第一虚拟机信息。
4.根据权利要求3所述的磁盘阵列的虚拟化读取方法,其特征在于,所述基于配置库对所述第一指令进行检索匹配,包括:
基于所述第一指令确定所述配置库中是否存在与所述第一虚拟机信息匹配的虚拟化的磁盘阵列的配置信息。
5.根据权利要求1所述的磁盘阵列的虚拟化读取方法,其特征在于,所述基于配置库对所述第一指令进行检索匹配之后,还包括:
在所述配置库中不存在匹配的虚拟化的磁盘阵列的配置信息的情况下,执行所述第一指令。
6.根据权利要求1-5任一项所述的磁盘阵列的虚拟化读取方法,其特征在于,还包括:
确定所述配置库中磁盘阵列或任一虚拟机信息发生变化,对所述配置信息进行更新。
7.一种磁盘阵列的虚拟化方法,其特征在于,应用于虚拟操作系统模拟器,包括:
接收客户端发送的磁盘读/写指令;
基于二进制指令翻译技术,将所述磁盘读/写指令翻译成目标格式的中间代码,并将所述中间代码翻译成磁盘阵列可执行的类型指令,生成第一指令;
向虚拟机发送所述第一指令。
8.一种磁盘阵列的虚拟化读取装置,其特征在于,包括:
接收模块,用于接收虚拟操作系统模拟器发送的第一指令,所述第一指令是所述虚拟操作系统模拟器基于二进制指令翻译技术,对磁盘读/写指令进行翻译后得到的磁盘阵列可执行的类型指令;
匹配模块,用于在确定用户选择使用磁盘阵列的情况下,基于配置库对所述第一指令进行检索匹配,所述配置库包括各虚拟机的虚拟化的磁盘阵列的配置信息;
修改模块,用于在所述配置库中存在匹配的虚拟化的磁盘阵列的配置信息的情况下,基于所述配置信息对所述第一指令进行修改,得到第二指令,执行所述第二指令,以从所述虚拟机的资源池中调用所述虚拟化的磁盘阵列进行硬盘数据的读取或写入。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述磁盘阵列的虚拟化读取方法,或权利要求7所述磁盘阵列的虚拟化方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述磁盘阵列的虚拟化读取方法,或权利要求7所述磁盘阵列的虚拟化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310370761.5A CN116540929A (zh) | 2023-04-07 | 2023-04-07 | 磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310370761.5A CN116540929A (zh) | 2023-04-07 | 2023-04-07 | 磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116540929A true CN116540929A (zh) | 2023-08-04 |
Family
ID=87442532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310370761.5A Pending CN116540929A (zh) | 2023-04-07 | 2023-04-07 | 磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116540929A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116991335A (zh) * | 2023-09-26 | 2023-11-03 | 苏州元脑智能科技有限公司 | 队列资源分配方法、装置、磁盘阵列卡、设备和介质 |
-
2023
- 2023-04-07 CN CN202310370761.5A patent/CN116540929A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116991335A (zh) * | 2023-09-26 | 2023-11-03 | 苏州元脑智能科技有限公司 | 队列资源分配方法、装置、磁盘阵列卡、设备和介质 |
CN116991335B (zh) * | 2023-09-26 | 2024-01-16 | 苏州元脑智能科技有限公司 | 队列资源分配方法、装置、磁盘阵列卡、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8830228B2 (en) | Techniques for enabling remote management of servers configured with graphics processors | |
US7552044B2 (en) | Simulated storage area network | |
US9519496B2 (en) | Detecting and preventing virtual disk storage linkage faults | |
US10996968B2 (en) | Support for application transparent, high available GPU computing with VM checkpointing | |
KR20140023944A (ko) | 가상 디스크 스토리지 기술 | |
RU2562372C2 (ru) | Активация/деактивация адаптеров вычислительной среды | |
US8887139B2 (en) | Virtual system and method of analyzing operation of virtual system | |
US10346065B2 (en) | Method for performing hot-swap of a storage device in a virtualization environment | |
JP2023545818A (ja) | チップ・システム、仮想割り込み処理方法および対応する装置 | |
CN111459606A (zh) | 一种虚拟化下快速创建虚拟机的方法及服务器 | |
CN110516447A (zh) | 一种识别终端模拟器的方法与设备 | |
CN116540929A (zh) | 磁盘阵列的虚拟化读取方法、装置、电子设备及存储介质 | |
US10467078B2 (en) | Crash dump extraction of guest failure | |
CN114765051A (zh) | 内存测试方法及装置、可读存储介质、电子设备 | |
US20180060111A1 (en) | Method and Apparatus for Online Upgrade of Kernel-Based Virtual Machine Module | |
CN110597597B (zh) | 硬件的虚拟化方法、系统、装置及存储介质 | |
CN107861795B (zh) | 模拟物理tcm芯片的方法、系统、装置及可读存储介质 | |
CN116611375A (zh) | 软硬件协同仿真平台及软硬件测试方法 | |
CN116360925A (zh) | 一种半虚拟化实现方法、装置、设备及介质 | |
CN113296876B (zh) | 虚拟机的设备直通方法、设备及存储介质 | |
CN116775202A (zh) | 模糊测试方法、装置、介质、电子设备及计算机程序产品 | |
CN110327626B (zh) | 虚拟服务器创建方法及装置 | |
Rechert et al. | Towards a Risk Model for Emulation-based Preservation Strategies: A Case Study from the Software-based Art Domain | |
CN114064212B (zh) | Pci设备的访问地址跟踪方法、设备及计算机可读存储介质 | |
US7694301B1 (en) | Method and system for supporting input/output for a virtual machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |