CN106406981A - Disk data reading/writing method and virtual machine monitor - Google Patents

Disk data reading/writing method and virtual machine monitor Download PDF

Info

Publication number
CN106406981A
CN106406981A CN201610828213.2A CN201610828213A CN106406981A CN 106406981 A CN106406981 A CN 106406981A CN 201610828213 A CN201610828213 A CN 201610828213A CN 106406981 A CN106406981 A CN 106406981A
Authority
CN
China
Prior art keywords
virtual machine
request
data
disk
sector
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
Application number
CN201610828213.2A
Other languages
Chinese (zh)
Inventor
张友加
李凡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Shenxinfu Electronic Technology Co Ltd
Original Assignee
Shenzhen Shenxinfu Electronic Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Shenxinfu Electronic Technology Co Ltd filed Critical Shenzhen Shenxinfu Electronic Technology Co Ltd
Priority to CN201610828213.2A priority Critical patent/CN106406981A/en
Publication of CN106406981A publication Critical patent/CN106406981A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Abstract

Embodiments of the invention disclose a disk data reading/writing method and a virtual machine monitor, which are used for improving IO performance of a virtual disk. According to the method and the monitor disclosed by the embodiments of the invention, a Cache mechanism is simulated for the virtual disk. During data reading, partial data is pre-read and cached in a Cache; when an IO request of reading disk data is submitted through the virtual machine monitor instead of a virtual machine, the corresponding Cache is checked; and if the disk data cached in the Cache can be hit, the data cached in the Cache is returned to the virtual machine. During data writing, the virtual machine monitor combines IO requests with continuous sectors in a cached IO request of writing the disk data, caches data needed to be written by a combined IO request to the Cache, and submits the combined IO request to an operation system of a host, so that asynchronous writing of virtual disk data is finished. The IO request of reading/writing the disk data no longer needs to be submitted to the operation system of the host each time, so that IO system calling and physical disk track seeking are reduced and the disk IO performance of the virtual machine is improved.

Description

A kind of method of reading and writing data in magnetic disk and virtual machine monitor
Technical field
The present invention relates to computer realm, more particularly, to a kind of method of reading and writing data in magnetic disk and virtual machine monitor.
Background technology
In virtualized environment, virtual machine (English:Virtual Machine, referred to as:VM) use virtual disk mirror Picture, including multiple format, for example:Raw, vdi, wmdk, vvfat, cow, qcow, qcow2, qed, fvd etc., virtual disk mirror As depending on the realization of host file system.
When virtual machine reads and writes the data in virtual disk, CPU can trigger VM-EXIT, lead to CPU virtual machine and main frame it Between switch, after virtual machine is switched to main frame, virtual machine monitor (hypervisor) program on main frame provides virtual unit Emulation, Agent virtual machine submits disk input and output (English to host operating system:Input/Output, referred to as:IO) ask, Complete the read-write of virtual disk data.
However, some characteristics of virtual machine, including:The emulation to virtual disk equipment for the hypervisor program on main frame, Redundancy in virtualization storage protocol stack etc., all can reduce the performance that virtual machine reads and writes virtual disk data.
Test finds, when running multiple stage virtual machine on a main frame, virtual disk IO performance bottleneck problem table seems outstanding For obvious, and the use of virtual machine may be had a strong impact on.
Content of the invention
Embodiments provide a kind of method of reading and writing data in magnetic disk and virtual machine monitor, be every in application layer Caching (Cache) mechanism realized by individual virtual disk, it is possible to increase the IO performance of virtual disk.
In a first aspect, embodiments providing a kind of method reading data in magnetic disk, the method includes:
Virtual machine monitor receives the I/O Request of virtual machine reading disk data, checks that the sector that I/O Request needs read is No in caching sector, wherein, caching sector is the sector corresponding to data in magnetic disk of caching in Cache, and described Cache is void The Cache of the virtual disk of plan machine;If I/O Request need read sector in caching sector, virtual machine monitor from Obtain target data in the data in magnetic disk of Cache caching, target data is returned to virtual machine.
The virtual machine of the embodiment of the present invention to read data from host request when, empty when being acted on behalf of by virtual machine monitor When the I/O Request of reading disk data submitted to by plan machine, first check corresponding Cache, if the disk number of caching in Cache can be hit According to the data then directly caching in return Cache is to virtual machine.Virtual machine monitor is made to receive the reading data of virtual machine When, no longer submit the I/O Request of reading disk data to host operating system, thus decrease I/O system calling and thing every time Reason disk tracking, improves the performance of magnetic disk of virtual machine IO.
Optionally, receive the I/O Request of virtual machine reading disk data in virtual machine monitor before, also include:
Virtual machine monitor receives the first I/O Request of virtual machine reading disk data;Virtual machine monitor Agent virtual machine Submit the first I/O Request of reading disk data to the operating system of main frame to;Virtual machine monitor is according to the first I/O Request from main frame Disk in a part of data in magnetic disk of pre-read, a part of data in magnetic disk of pre-read is cached in Cache.
Therefore, the embodiment of the present invention emulates Cache mechanism for virtual disk, when reading data, can pre-read partly count According in caching Cache, in the I/O Request of successor virtual machine submission reading disk data, can first check whether and can hit Data in Cache, if can hit, directly obtains data from Cache and returns to virtual machine, and need not be every time by IO Host operating system is submitted in request, thus decrease I/O system calling and physical disk tracking, improves magnetic disk of virtual machine IO Performance.
Optionally, carry the target sector that request accesses in described first I/O Request;Virtual machine monitor is according to an IO Request a part of data in magnetic disk of pre-read from the disk of main frame includes:Virtual machine monitor determines the mesh that target sector is mated Mark history IO information, target histories IO information includes initial sector and length, and target sector belongs in target histories IO information Sector;The data in magnetic disk of all sectors in virtual machine monitor pre-read target histories IO information from the disk of main frame.
Optionally, the method also includes:Reading IO information in start-up course for the virtual machine monitor record virtual machine;Virtual , from reading to select multiple continuous reading IO information IO information, each continuous reading IO information is merged into one can be pre- for machine monitor The history IO information read;By a plurality of history IO information sorting pre-reading and history of forming IO message file;Virtual machine monitor Determine that the target histories IO information mated target sector includes:Virtual machine monitor finds mesh from target IO message file The history IO information pre-reading mated of mark sector, the history IO information that what target sector was mated pre-read is target histories IO information.
Therefore, the present invention can determine the data of pre-read according to history IO information, can improve the several of Cache hit Rate.
Optionally, record the hit-count of every history IO information that can pre-read, hit-count is minimum, or hit time Number is less than the pre-read history IO information deletion of hit threshold.Such that it is able to control history IO information sum, it is right to be conducive to improving History IO information is ranked up, and to improve the efficiency of matching algorithm using two way classification.
Second aspect, embodiments provides a kind of method writing data in magnetic disk, including:
Virtual machine monitor receives the I/O Request of write magnetic disk;Virtual machine monitor enters row cache to the I/O Request of write magnetic disk; The I/O Request of the continuous write magnetic in sector disk in the I/O Request of each write magnetic disk is merged by virtual machine monitor, and each by merge The I/O Request of write magnetic disk needs the data of write to merge in the Cache of virtual disk being stored in virtual machine;Virtual machine monitor The I/O Request of the write magnetic disk after merging is submitted to the operating system of main frame, and the needs write of storage will be merged in Cache Data writes in the disk of main frame.
The embodiment of the present invention virtual machine monitor Agent virtual machine carry to host operating system write data in magnetic disk IO please When asking, if the data of multiple write magnetic disk is continuous, data is incorporated in a Cache, and by multiple write magnetic disk number According to I/O Request can merge, by this, the I/O Request after merging submits to host operating system afterwards, completes virtual disk data Asynchronous write.The present invention adopts virtual disk Cache mechanism, makes virtual machine monitor in the IO of the write data receiving virtual machine During request, no longer submit the I/O Request of reading disk data to host operating system, thus decrease I/O system calling every time And physical disk tracking, improve the performance of magnetic disk of virtual machine IO.
Optionally, when the I/O Request of write magnetic disk each in the I/O Request of sector continuous write magnetic disk needs the data of write always big During little size not less than Cache, the I/O Request of continuous for sector write magnetic disk is merged by virtual machine monitor.
The third aspect, embodiments provides a kind of virtual machine monitor, the concrete reality of described virtual machine monitor Now correspond to the function of the method for reading data in magnetic disk that above-mentioned first aspect provides.Described function can be realized by hardware, Corresponding software program can be executed by hardware to realize.Hardware and software includes one or more corresponding with above-mentioned functions Unit module, described unit module can be software and/or hardware.
In a kind of possible realization, described virtual machine monitor includes:
Receiver module, for receiving the I/O Request of virtual machine reading disk data;
Caching checks module, and for checking the sector of I/O Request needs reading whether in caching sector, caching sector is The corresponding sector of data in magnetic disk of caching in Cache, Cache is the Cache of the virtual disk of virtual machine;
Data acquisition module, for when the sector that I/O Request needs read is in caching sector, from the magnetic of Cache caching Target data is obtained in disk data;
Sending module, for returning to virtual machine by target data.
Fourth aspect, virtual machine monitor provided in an embodiment of the present invention, it is additionally operable to realize corresponding to above-mentioned second aspect The function of the method writing data in magnetic disk providing.Described function can be realized by hardware it is also possible to be executed corresponding by hardware Software program realize.Hardware and software includes one or more unit modules corresponding with above-mentioned functions, described unit mould Block can be software and/or hardware.
In a kind of possible realization, described virtual machine monitor includes:
Receiver module, for receiving the I/O Request of write magnetic disk;
I/O Request cache module, for entering row cache to the I/O Request of write magnetic disk;
I/O Request merges module, for being closed the I/O Request of the continuous write magnetic in sector disk in the I/O Request of each write magnetic disk And;
Data cache module, the data merging for the I/O Request of each write magnetic disk merging needs write is stored in virtual In the Cache of the virtual disk of machine;
I/O Request submits module to, for the I/O Request of the write magnetic disk after merging being submitted to the operating system of main frame, and will The data needing write merging storage in Cache writes in the disk of main frame.
As can be seen from the above technical solutions, the embodiment of the present invention has advantages below:
The embodiment of the present invention emulates Cache mechanism for virtual disk, when reading data, when by virtual machine monitor generation When reason virtual machine submits the I/O Request of reading disk data to, first check corresponding Cache, if the magnetic of caching in Cache can be hit Disk data, then directly return the data of caching in Cache to virtual machine.In addition, when writing data, virtual machine monitor agency is empty Plan machine to host operating system carry the I/O Request writing data in magnetic disk when, if the data of multiple write magnetic disk is continuous, will be many The secondary I/O Request writing data in magnetic disk merges, and by this, the I/O Request after merging submits to host operating system afterwards, completes virtual magnetic The asynchronous write of disk data.The present invention adopts virtual disk Cache mechanism, makes virtual machine monitor receive the reading of virtual machine During the I/O Request of data or write data, no longer submit the I/O Request of reading disk data to host operating system every time, from And decrease I/O system and call and physical disk tracking, improve the performance of magnetic disk of virtual machine IO.
Brief description
Fig. 1 is the effect schematic diagram of virtual machine monitor Hypervisor in the embodiment of the present invention;
Fig. 2 is three kinds of IO cache modes in the embodiment of the present invention to image file;
Fig. 3 is that the application layer of virtual disk caching pooling function in the embodiment of the present invention realizes schematic diagram;
Fig. 4 be the embodiment of the present invention in virtual disk caching-pooling function realize position;
Fig. 5 is the method flow diagram reading data in magnetic disk in the embodiment of the present invention;
Fig. 6 is precisely to pre-read and cache algorithm schematic diagram in the embodiment of the present invention;
Fig. 7 is the method flow diagram writing data in magnetic disk in the embodiment of the present invention;
Fig. 8 is to write merging and cache algorithm schematic diagram in the embodiment of the present invention;
Fig. 9 is a kind of functional module structure figure of virtual machine monitor in the embodiment of the present invention;
Figure 10 is another kind of functional module structure figure of virtual machine monitor in the embodiment of the present invention.
Specific embodiment
In order that technical scheme and beneficial effect are clearer, below in conjunction with drawings and Examples, to this Bright it is further elaborated.It should be appreciated that specific embodiment described herein is only in order to explain the present invention, and without In the restriction present invention.
Hypervisor is a kind of intermediate software layer operating between basic physicses server and operating system, can allow Multiple operating systems and Application share hardware, also can be called virtual machine monitor (English:Virtual machine monitor, Referred to as:VMM).As shown in figure 1, Hypervisor can be set with including all physics in disk and interior presence in access server Standby, not only coordinate the access of these hardware resources, also apply protection simultaneously between each virtual machine.When startup of server simultaneously Execution Hypervisor when, it can load all virtual-machine client operating system can distribute to simultaneously each virtual machine fit Internal memory, CPU, network and the disk of amount.
Hypervisor typically realizes main frame by three kinds of modes and caches (cache) to the IO of image file (image): None, writeback and writethrough, figure below combines the difference of the different cache mode of three kinds detailed of elaboration of Fig. 2.
Writeback employs the page cache memory (page of client (guest) and main frame (host) two-layer Cache), that is, can there are two parts of cache in same file, but this basic it is not necessary that, and be likely to result in data Discordance.None and writethrough can bypass the page cache memory of host layer.Such as open source projects kvm writes from memory The cache mode recognized be writethrouh although this mode is not safest, do not result in the discordance of data, but Performance is also worst.The safety of user's synthetic data and performance, are typically chosen using none pattern.
Main frame described in Fig. 2 is all to be realized by operating system layer to the IO cache mode of image file (image) With offer;For the IO performance issue of virtual disk, the present invention provides a kind of method being optimized in application layer, mainly real Now include:
The present invention realizes one in the application layer of Hypervisor for each virtual disk (Virtual Disk Devices) Individual caching (Cache) mechanism.The application of function layer that Fig. 3 cached-merged (Cache-Merge) for virtual disk realizes schematic diagram, It is respectively client 1 in the application layer of the Hypervisor of main frame and a caching-merging realized by the virtual disk of client 2 (Cache-Merge), as shown in figure 3, the capacity of each caching-merging is 32M.Specifically, virtual disk caching-pooling function Realize position as shown in figure 4, Hypervisor pass through direct memory access (English:Direct memory access, letter Claim:DMA) or programmable I/O reference (English:Programming Input/Output, referred to as:PIO) virtual memory block (block) caching-merging (Cache-Merge) in, then pass through operating system access physical disk.
When needing to physical disk write data or reading data from physical disk, can pass through to cache-merge and be main The operating system of machine writes data into the block storage device of main frame together, or reads data from block storage device.Detailed process For:
Hypervisor application level proxy virtual machine to host operating system submit to reading disk data I/O Request when, According to algorithm predicts, a part of data in magnetic disk of pre-read, update the Cache of virtual disk (Virtual Disk Devices) In, when the I/O Request of reading disk data coming submitted to by next Agent virtual machine, first check corresponding Cache, if hit is (i.e. Virtual machine is had to submit the data that the I/O Request coming is asked in Cache), then the data directly returning caching in Cache is to virtual Machine, without the I/O Request submitting reading disk data again to host operating system to, thus decrease I/O system call and physics magnetic Disk seeks.
Hypervisor when application level proxy virtual machine carries, to host operating system, the I/O Request writing data in magnetic disk, number According to updating in the Cache of virtual disk (Virtual Disk Devices), if the data of multiple write magnetic disk is continuous, Then data is incorporated in a Cache, triggers an intervalometer, the IO repeatedly writing data in magnetic disk within a certain period of time simultaneously Request can be merged in the I/O Request once writing data in magnetic disk, submits to host operating system by timer callback, completes virtual The asynchronous write of data in magnetic disk.
With reference to Fig. 5, the process of the reading disk data in the embodiment of the present invention is described in detail.
Original magnetic disk of virtual machine has lacked the cache physical characteristics that true hard disk has, and this programme is virtual disk Emulate a kind of true hard disk cache mechanism, for improving the performance of magnetic disk of virtual machine IO.It is implemented as follows:
501st, Hypervisor receives the I/O Request of virtual machine reading disk data;
Virtual machine on startup, simultaneously can loaded virtual machine virtual disk Cache, cached from physics in Cache The data in magnetic disk of disk pre-read, the data in magnetic disk of pre-read include sector auxiliary information that data stores in physical disk and Corresponding data.When Hypervisor receives the I/O Request of virtual machine reading disk data, execution step 502.
502nd, Hypervisor checks that I/O Request needs the sector read whether in caching sector;
After Hypervisor receives the I/O Request of virtual machine reading disk data, this I/O Request is not submitted to main frame Operating system, but check that this I/O Request needs the sector read whether in caching sector, caching sector is to cache in Cache The corresponding sector of data in magnetic disk.
If 503 I/O Request need the sector read in caching sector, the magnetic that Hypervisor caches from Cache Obtain target data in disk data, target data is returned to virtual machine.
If being cached with the data of the sector that current I/O Request needs to read, Hypervisor in the Cache of virtual disk Obtain, from Cache, the target data needing to read, be returned to virtual machine.
Optionally, before the data in magnetic disk of the pre-read of the caching in Cache is, Hypervisor reads according to virtual machine The I/O Request of data in magnetic disk, reads from physical disk.The principle of concrete pre-read and process are as follows:
Based on 80/20 principle, in each start-up course, the data of reading disk is all to concentrate very much to same virtual machine With almost identical, so based on virtual machine start history read IO information, it is possible to achieve accurately pre-read data in magnetic disk, greatly Big raising Cache hit rate, implements:
Hypervisor records each reading IO information (start sector number, length) in start-up course for the virtual machine, first really Fixed continuous reading IO information, each continuous IO information of reading is merged into the history IO information that can pre-read, then all Pre-read history IO information (start sector number, length) sequence, history of forming IO message file, preserve this document, this article When part is that virtual machine starts, the file that can load together with image file.
For example:When starting virtual machine for the first time, before collecting, the reading IO information of history is sector 1 to sector 5, sector 2- Sector 32 is arrived in sector 8, sector 16.Two continuous sectors are picked out from these sectors:Sector 1-8, sector 16-32, specifically It is in these sectors, continuous sector will to be formed by overlapping merging of sector.Will be suitable according to sector for these continuous sectors Sequence is ranked up, and is saved in history IO message file.
Before virtual machine is again started up, first load the history IO message file of preservation.When Hypervisor receive virtual The machine-readable I/O Request (the first I/O Request) taking data in magnetic disk, Hypervisor acts on behalf of this virtual machine and submits to host operating system and reads Take described first I/O Request of data in magnetic disk, this I/O Request includes the target sector that virtual machine request accesses.
During the machine-readable disk of Hypervisor Agent virtual, first need the target sector accessing according to virtual machine, by coupling Algorithm (can be binary chop) finds the target histories IO letter being mated target sector from the history IO information loading Breath.Specifically, that is, finding virtual machine needs whether the target sector accessing belongs to certain the history IO information that can pre-read, if belonging to The history IO information that certain can pre-read, then the target histories IO that the history IO information that this can pre-read is mated by target sector believes Breath.
Hypervisor Agent virtual machine is from physical disk by the number of all sectors comprising in target histories IO information Take out according to all pre-reading, be saved in pre-reading the data taken out in the Cache of virtual disk.Meanwhile, by the first I/O Request The data in magnetic disk of the middle target sector needing to read returns to virtual machine.Therefore, it is that pre-read is determined by target histories IO information Data number.
For example:In history IO message file, preserve sector 1-8, sector 16-32, sector 64-100 etc. history IO information. In the I/O Request of virtual machine reading disk data that Hypervisor receives, the target sector that request is read is the 1st sector, Hypervisor determines that the 1st sector belongs to the sector in the 1-8 of sector, and therefore 1-8 sector is target histories IO information. The data of the 1-8 sector in target histories IO information is all read out from physical disk by Hypervisor, is cached to void Intend in disk Cache.
Therefore, when Hypervisor receives I/O Request, when if desired reading data from physical disk, it is not only Read the data of target sector, but the data of all sectors in pre-read target histories IO information, by the data of pre-read It is cached in Cache.
Fig. 6 is the schematic diagram of reading disk data.As shown in the step 1 in Fig. 6 and step 2, Hypervisor is receiving To I/O Request next time or follow-up when receiving I/O Request, all by execution step 501 to step 503, check whether and can hit The data in magnetic disk of caching in Cache, if can hit, directly reads data from Cache and returns to virtual machine.As step 3 institute Show, if Cache can not be hit, before Hypervisor Agent virtual machine submits I/O Request to host operating system, check and work as Whether the sector of front I/O Request can match certain in the history IO information array history IO information that can pre-read;As step 4, Shown in step 5 and step 6, if matching certain the history IO information that can pre-read, expression can pre-read, then read from physical disk Data in all sectors in the history IO information that this can pre-read, by data buffer storage in Cache;As shown in step 7, by IO The data in magnetic disk reading is asked to return to virtual machine.
Optionally, as shown in step 8 and step 9, if not hitting read buffer, and if mating less than the history that can pre-read IO information, in the case of can not pre-reading, I/O Request is submitted to host operating system by Hypervisor, reads from physical disk Take this I/O Request to be asked the data reading, the data reading from physical disk is returned to virtual machine.
Optionally, when mating history IO information, by the history IO message count that can pre-read to every, often match one The history IO information that secondary (often hitting once) can pre-read, the reference count of the history IO information that this can be pre-read adds 1, very The history IO information entry deletion pre-reading matching less (can be to delete the minimum history IO information pre-reading matching Remove or the history IO information deletion pre-reading less than hit-count threshold value will be counted), to control history IO information total Number, improves the efficiency of matching algorithm.
The embodiment of the present invention emulates Cache mechanism for virtual disk, realizes for virtual disk in Hypervisor application layer The accurate reading budget law realized and Cache mechanism:Reading IO information (start sector number, length in record virtual machine start-up course Degree), merge continuous reading IO information, sort and preserve;IO information is read based on history, realizes a set of accurate reading budget law;In void Pass through in plan machine start-up course precisely to pre-read algorithm, improve the Cache hit rate (hit rate is more than 90%) reading IO, reduce The I/O Request (reducing I/O system to call and physical disk tracking consumption) to host-physical disk for the Hypervisor, greatly improves void Intend disk and read IO performance, accelerate virtual machine toggle speed;And, when high-volume starts virtual machine simultaneously, main frame can be solved The problem of disk I/O storm.
With reference to Fig. 7, the process writing data in magnetic disk in the embodiment of the present invention is described in detail.
701st, Hypervisor receives the I/O Request of write magnetic disk;
When virtual machine writes data to virtual disk, the IO that Hypervisor can receive one and another write magnetic disk please Ask.
702nd, the I/O Request of the continuous write magnetic in sector disk in the I/O Request of each write magnetic disk is merged by Hypervisor, will The I/O Request of each write magnetic disk merging needs the data of write to merge in the Cache of virtual disk being stored in virtual machine;
Hypervisor, by way of write request caching is queued up the write request in a period of time is delayed in application layer Deposit, and continuous write request merges to sector, and the data buffer storage of the I/O Request corresponding needs write that these are merged In the Cache of virtual disk.And the order row according to FIFO (First Input First Output, fifo) queue Team write disk mirroring file it is ensured that when IO completes not out of order it is ensured that virtual disk data write correctness.
703rd, the I/O Request of the write magnetic disk after merging is submitted to the operating system of main frame by Hypervisor, will be described The data needing write merging storage in Cache writes in the disk of described main frame.
While merging I/O Request, trigger an intervalometer, by timer callback, the I/O Request after merging is submitted to Host operating system, completes the asynchronous write of virtual disk data.
It should be noted that when merging I/O Request, below for annexable situation:The write purpose fan of multiple I/O Request Area is the relation comprising or being comprised;Or the write destination sector of multiple I/O Request is just sliceable;In addition, the I/O Request merging The size not less than Cache single in Cache-Merge for the data total size.
It is below not annexable situation:The size more than Cache single in Cache-Merge for the size after merging;Or it is many The write destination sector juxtaposition of individual I/O Request.
Fig. 8 is the schematic diagram writing data in magnetic disk.As shown in figure 8, comprising multiple Cache units in Merge chained list, composition Cache-Merge.Step 1 can be merged with the data of last Cache, then by this I/O Request for currently received I/O Request Data buffer storage is in last Cache, and its I/O Request is merged, and enters and writes the journey queuing of IO association.Step 2 is currently to connect The I/O Request received can not merge, then add Cache in Merge chained list, the data of this I/O Request is write in this Cache;Step If rapid 3 do not have Cache for free chained list, the data of first node of Merge chained list is write disk.
Realize writing the Cache mechanism of IO merging in Hypervisor application layer for virtual disk, have the advantages that: (1) virtual machine writes IO, and data is not to be saved in host-physical disk immediately, but is first buffered in Hypervisor application layer In Cache, improve performance 20-40 times that virtual machine preserves small documents (size is generally tens MB);(2) solve virtual machine to run into Writing IO in a large number and the problem of interim card of burst, improves Consumer's Experience;(3) when continuous data write by virtual disk, using writing IO Merging mechanism, the data merging repeatedly being write IO is buffered in a Cache, once submits to main frame and (reduces I/O system to call And physical disk tracking consumes), greatly improve virtual disk and write IO performance.
Realization to the present invention is tested, and result is as follows:
In virtual machine (Windows and Linux) start-up course, virtual machine reading disk data hit disk Cache's is general Rate, more than 90%, greatly reduces Hypervisor and submits reading disk number in application level proxy virtual machine to host operating system According to I/O Request number, can greatly improve virtual machine start when reading disk I/O performance;When high-volume starts virtual machine simultaneously, Disk I/O storm can partly be solved the problems, such as;
In virtual machine (Windows and Linux) running, particularly in the environment frequently writing data in magnetic disk, Hypervisor merges, in application layer, the implementation that virtual machine repeatedly writes the I/O Request of data in magnetic disk, also can significantly improve virtual Machine disk I/O performance, performance increase rate is determined by the frequent degree that virtual machine writes data:(1) in virtual data base server environment Middle test, the IO performance of database insert operation is doubled many, higher than the number in the lower vmware environment of same hardware configuration IO performance (refer to the test data in table one) according to storehouse server database update;(2) virtual machine preserves small documents The performance of (size is generally tens MB) improves 20-40 times.
Virtual machine normally reads and writes virtual disk, accesses the main frame thing that store virtual disk data by Hypervisor Reason disk (predominantly seeks the time), and access time is Millisecond;
Hypervisor in Block api layer, the normal reading of the more data buffer storage of pre-read to Cache and not pre-read Fetch data and compare, many time spents are between Microsecond grade to Millisecond;And hit Cache, copy data is spent to virtual machine Time is nanosecond, and reading IO hit rate is higher, and virtual disk performance boost is more.
No matter being pre-read or writing merging, virtual disk caching-merge (Cache-Merge) function can subtract significantly Few Hypervisor act on behalf of number of times to host request IO (minimizing system call and physical disk tracking consumption) it is possible to Improve the performance of virtual disk.
Table 1 below provides one group of test comparison data:
Table 1
It is more than the method to the reading disk data in the embodiment of the present invention, and write the introduction of the method for data in magnetic disk, To from functional structure angle, the virtual machine monitor in the embodiment of the present invention is introduced below.
Virtual machine monitor in the embodiment of the present invention can be operated between basic physicses server and operating system Intermediate software layer Hypervisor or software and hardware combining functional module.
On the one hand, implementing of the virtual machine monitor 9 in the embodiment of the present invention is carried corresponding to above-mentioned Fig. 5 to Fig. 6 For reading data in magnetic disk method function.In a kind of possible realization, described virtual machine monitor includes:
Receiver module 901, for receiving the I/O Request of virtual machine reading disk data;
Caching checks module 902, for checking the sector of I/O Request needs reading whether in caching sector, caching sector For the corresponding sector of data in magnetic disk of caching in Cache, Cache is the Cache of the virtual disk of virtual machine;
Data acquisition module 903, for when the sector that I/O Request needs read is in caching sector, from Cache caching Data in magnetic disk in obtain target data;
Sending module 904, for returning to virtual machine by target data.
Optionally, in some specific enforcements, receiver module 901, it is additionally operable to receiving virtual machine reading disk data I/O Request before, receive virtual machine reading disk data the first I/O Request;Virtual machine monitor also includes:I/O Request is submitted to Module 905, submits the first I/O Request of reading disk data to for Agent virtual machine to the operating system of main frame;Pre-read module 906, for according to the first I/O Request from the disk of main frame a part of data in magnetic disk of pre-read, by a part of disk of pre-read Data buffer storage is in Cache.
Optionally, in some specific enforcements, receiver module 901, it is additionally operable to receiving virtual machine reading disk data I/O Request before, receive virtual machine reading disk data the first I/O Request, carry in the first I/O Request request access mesh Mark sector;Pre-read module 906 includes:History IO information determination unit 9061, for determining the target that target sector is mated History IO information;Pre-read unit 9062, for all sectors in pre-read target histories IO information from the disk of main frame Data in magnetic disk, target histories IO information includes initial sector and length, and target sector belongs in target histories IO information Sector.
Optionally, in some specific enforcements, virtual machine monitor also includes:IO information logging modle 907, for remembering Record reading IO information in start-up course for the virtual machine;History IO information generating module 908, multiple for selecting from reading IO information Continuous reading IO information, each continuous IO information of reading is merged into the history IO information that can pre-read, pre-reads a plurality of History IO information sorting and history of forming IO message file;History IO information determination unit 9061, specifically for from target IO The history IO information pre-reading that target sector is mated is found, what what target sector was mated pre-read goes through in message file History IO information is target histories IO information.
Optionally, in some specific enforcements, virtual machine monitor also includes:Hit-count logging modle 909, is used for Record the hit-count of every history IO information that can pre-read, hit-count is minimum, or hit-count is less than hit threshold Pre-read history IO information deletion.Such that it is able to control history IO information sum, improve the efficiency of matching algorithm.
On the other hand, the implementing corresponding to above-mentioned Fig. 7 to Fig. 8 institute of the virtual machine monitor 10 in the embodiment of the present invention The function of the method writing data in magnetic disk providing.In a kind of possible realization, described virtual machine monitor includes:
Receiver module 1001, for receiving the I/O Request of write magnetic disk;
I/O Request cache module 1002, for entering row cache to the I/O Request of write magnetic disk;
I/O Request merges module 1003, for entering the I/O Request of the continuous write magnetic in sector disk in the I/O Request of each write magnetic disk Row merges;
Data cache module 1004, the data merging for the I/O Request of each write magnetic disk merging needs write is stored in In the Cache of the virtual disk of virtual machine;
I/O Request submits module 1005 to, for the I/O Request of the write magnetic disk after merging being submitted to the operating system of main frame, And write the data needing write merging storage in Cache in the disk of main frame.
Optionally, in some specific enforcements, I/O Request merges module 1003, specifically for when the continuous write magnetic in sector In the I/O Request of disk, when the I/O Request of each write magnetic disk needs the size not less than Cache for the data total size writing, by sector even The I/O Request of continuous write magnetic disk merges.
It should be noted that the function that virtual machine monitor 9 and virtual machine monitor 10 possess can be integrated in one Realize on virtual machine monitor.
Those skilled in the art can be understood that, for convenience and simplicity of description, the system of foregoing description, Device and the specific work process of unit, may be referred to the corresponding process in preceding method embodiment, will not be described here.
It should be understood that disclosed system in several embodiments provided herein, apparatus and method are permissible Realize by another way.For example, device embodiment described above is only schematically, for example, described unit Divide, only a kind of division of logic function, actual can have other dividing mode when realizing, for example multiple units or assembly Can in conjunction with or be desirably integrated into another system, or some features can be ignored, or does not execute.Another, shown or The coupling each other discussing or direct-coupling or communication connection can be by some interfaces, the indirect coupling of device or unit Close or communicate to connect, can be electrical, mechanical or other forms.
The described unit illustrating as separating component can be or may not be physically separate, show as unit The part showing can be or may not be physical location, you can with positioned at a place, or can also be distributed to multiple On NE.The mesh to realize this embodiment scheme for some or all of unit therein can be selected according to the actual needs 's.
In addition, can be integrated in a processing unit in each functional unit in each embodiment of the present invention it is also possible to It is that unit is individually physically present it is also possible to two or more units are integrated in a unit.Above-mentioned integrated list Unit both can be to be realized in the form of hardware, it would however also be possible to employ the form of SFU software functional unit is realized.
If described integrated unit is realized and as independent production marketing or use using in the form of SFU software functional unit When, can be stored in a computer read/write memory medium.Based on such understanding, technical scheme is substantially The part in other words prior art being contributed or all or part of this technical scheme can be in the form of software products Embody, this computer software product is stored in a storage medium, including some instructions with so that a computer Equipment (can be personal computer, server, or network equipment etc.) executes the complete of each embodiment methods described of the present invention Portion or part steps.And aforesaid storage medium includes:USB flash disk, portable hard drive, read only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disc or CD etc. are various can store journey The medium of sequence code.
The above, above example only in order to technical scheme to be described, is not intended to limit;Although with reference to front State embodiment the present invention has been described in detail, it will be understood by those within the art that:It still can be to front State the technical scheme described in each embodiment to modify, or equivalent is carried out to wherein some technical characteristics;And these Modification or replacement, do not make the essence of appropriate technical solution depart from the spirit and scope of various embodiments of the present invention technical scheme.

Claims (12)

1. a kind of method reading data in magnetic disk is it is characterised in that include:
Virtual machine monitor Hypervisor receives the I/O Request of virtual machine reading disk data;
Described virtual machine monitor checks that described I/O Request needs the sector read whether in caching sector, described caching sector For the corresponding sector of data in magnetic disk of caching in Cache, described Cache is the Cache of the virtual disk of described virtual machine;
If described I/O Request needs the sector read in described caching sector, described virtual machine monitor is from described Cache Obtain target data in the described data in magnetic disk of caching, described target data is returned to described virtual machine.
2. method according to claim 1 is it is characterised in that receive virtual machine reading disk in described virtual machine monitor Before the I/O Request of data, also include:
Described virtual machine monitor receives the first I/O Request of virtual machine reading disk data;
The described IO that virtual machine monitor acts on behalf of the operating system submission reading disk data to main frame for the described virtual machine please Ask;
Described virtual machine monitor a part of data in magnetic disk of pre-read from the disk of described main frame according to described first I/O Request, Described a part of data in magnetic disk of pre-read is cached in described Cache.
3. method according to claim 2 is it is characterised in that carry the target fan that request accesses in described first I/O Request Area;
Described virtual machine monitor a part of data in magnetic disk of pre-read from the disk of described main frame according to described first I/O Request Including:
Described virtual machine monitor determines the target histories IO information mated described target sector, described target histories IO information Include initial sector and length, described target sector belongs to the sector in described target histories IO information;
All sectors in target histories IO information described in described virtual machine monitor pre-read from the disk of described main frame Data in magnetic disk.
4. method according to claim 3 is it is characterised in that methods described also includes:
Reading IO information in start-up course for the described virtual machine monitor record virtual machine;
Described virtual machine monitor selects multiple continuous reading IO information from described reading IO information, and each continuous IO that reads is believed Breath is merged into the history IO information that can pre-read;
By a plurality of described history IO information sorting pre-reading and history of forming IO message file;
Described virtual machine monitor determines that the target histories IO information mated described target sector includes:
What what described virtual machine monitor found from described target IO message file that described target sector mated pre-read History IO information, the history IO information that what described target sector was mated pre-read is described target histories IO information.
5. a kind of method writing data in magnetic disk is it is characterised in that include:
Virtual machine monitor receives the I/O Request of write magnetic disk;
Described virtual machine monitor enters row cache to the I/O Request of described write magnetic disk;
The I/O Request of the continuous write magnetic in sector disk in the I/O Request of each write magnetic disk is merged by described virtual machine monitor, and will The I/O Request of each write magnetic disk merging needs the data of write to merge in the Cache of virtual disk being stored in virtual machine;
The I/O Request of the write magnetic disk after merging is submitted to the operating system of main frame by described virtual machine monitor, and will be described The data merging the described needs write of storage in Cache writes in the disk of described main frame.
6. method according to claim 5 is it is characterised in that described virtual machine monitor is by the I/O Request of each write magnetic disk The I/O Request of sector continuous write magnetic disk merge including:
When the I/O Request of write magnetic disk each in the I/O Request of described sector continuous write magnetic disk needs the data total size of write not surpass Cross described Cache size when, the I/O Request of continuous for described sector write magnetic disk is merged by described virtual machine monitor.
7. a kind of virtual machine monitor is it is characterised in that include:
Receiver module, for receiving the I/O Request of virtual machine reading disk data;
Caching checks module, for checking the sector of described I/O Request needs reading whether in caching sector, described caching fan Area is the corresponding sector of data in magnetic disk of caching in Cache, and described Cache is the Cache of the virtual disk of described virtual machine;
Data acquisition module, for when the sector that described I/O Request needs read is in described caching sector, from described Cache Target data is obtained in the described data in magnetic disk of caching;
Sending module, for returning to described virtual machine by described target data.
8. virtual machine monitor according to claim 7 it is characterised in that
Described receiver module, is additionally operable to, before receiving the I/O Request of virtual machine reading disk data, receive virtual machine and read magnetic First I/O Request of disk data;
Described virtual machine monitor also includes:
I/O Request submits module to, submits described the of reading disk data to the operating system of main frame for acting on behalf of described virtual machine One I/O Request;
Pre-read module, for according to described first I/O Request from the disk of described main frame a part of data in magnetic disk of pre-read, Described a part of data in magnetic disk of pre-read is cached in described Cache.
9. virtual machine monitor according to claim 8 it is characterised in that:
Described receiver module, is additionally operable to, before receiving the I/O Request of virtual machine reading disk data, receive virtual machine and read magnetic First I/O Request of disk data, carries the target sector that request accesses in described first I/O Request;
Described pre-read module includes:
History IO information determination unit, for determining the target histories IO information mated described target sector;
Pre-read unit, for the magnetic of all sectors in target histories IO information described in pre-read from the disk of described main frame Disk data, described target histories IO information includes initial sector and length, and described target sector belongs to described target histories IO Sector in information.
10. virtual machine monitor according to claim 9 is it is characterised in that described virtual machine monitor also includes:
IO information logging modle, for recording reading IO information in start-up course for the virtual machine;
History IO information generating module, for selecting multiple continuous reading IO information from described reading IO information, each is continuous Reading IO information be merged into the history IO information that can pre-read, by a plurality of described history IO information sorting pre-reading and formed History IO message file;
Described history IO information determination unit, specifically for finding described target sector institute from described target IO message file The history IO information pre-reading of coupling, the history IO information that what described target sector was mated pre-read is described target histories IO information.
A kind of 11. virtual machine monitors are it is characterised in that include:
Receiver module, for receiving the I/O Request of write magnetic disk;
I/O Request cache module, for entering row cache to the I/O Request of described write magnetic disk;
I/O Request merges module, for merging the I/O Request of the continuous write magnetic in sector disk in the I/O Request of each write magnetic disk;
Data cache module, the data merging for the I/O Request of each write magnetic disk merging needs write is stored in virtual machine In the Cache of virtual disk;
I/O Request submits module to, for the I/O Request of the write magnetic disk after merging being submitted to the operating system of main frame, and will be described The data merging the described needs write of storage in Cache writes in the disk of described main frame.
12. virtual machine monitors according to claim 11 it is characterised in that:
Described I/O Request merges module, specifically for when in the I/O Request of described sector continuous write magnetic disk, the IO of each write magnetic disk When request needs the size not less than described Cache for the data total size writing, please by the IO of continuous for described sector write magnetic disk Ask and merge.
CN201610828213.2A 2016-09-18 2016-09-18 Disk data reading/writing method and virtual machine monitor Pending CN106406981A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610828213.2A CN106406981A (en) 2016-09-18 2016-09-18 Disk data reading/writing method and virtual machine monitor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610828213.2A CN106406981A (en) 2016-09-18 2016-09-18 Disk data reading/writing method and virtual machine monitor

Publications (1)

Publication Number Publication Date
CN106406981A true CN106406981A (en) 2017-02-15

Family

ID=57998292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610828213.2A Pending CN106406981A (en) 2016-09-18 2016-09-18 Disk data reading/writing method and virtual machine monitor

Country Status (1)

Country Link
CN (1) CN106406981A (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106940626A (en) * 2017-03-17 2017-07-11 郑州云海信息技术有限公司 The method and system of variance data between a kind of acquisition virtual machine multiple disks
CN107229427A (en) * 2017-06-22 2017-10-03 上海七牛信息技术有限公司 A kind of file memory method, system and computer-readable storage medium
CN107729119A (en) * 2017-09-26 2018-02-23 联想(北京)有限公司 Virtual machine migration method and its system
CN108108130A (en) * 2017-12-22 2018-06-01 深圳忆联信息系统有限公司 A kind of method and solid state disk for promoting solid state disk read-write performance
WO2018157543A1 (en) * 2017-02-28 2018-09-07 华为技术有限公司 Timer implementation method and related device
CN108845893A (en) * 2018-05-04 2018-11-20 广东睿江云计算股份有限公司 Magnetic disk of virtual machine reproduction process read method and device based on fixed buffering
CN108984123A (en) * 2018-07-12 2018-12-11 郑州云海信息技术有限公司 A kind of data de-duplication method and device
CN109558205A (en) * 2017-09-25 2019-04-02 南京中兴新软件有限责任公司 Disk access method and device
WO2019091322A1 (en) * 2017-11-08 2019-05-16 阿里巴巴集团控股有限公司 Virtual machine snapshot processing method, apparatus and system
CN110275841A (en) * 2019-06-20 2019-09-24 上海燧原智能科技有限公司 Access request processing method, device, computer equipment and storage medium
CN111045604A (en) * 2019-12-11 2020-04-21 苏州浪潮智能科技有限公司 Small file read-write acceleration method and device based on NVRAM
CN111159124A (en) * 2019-12-30 2020-05-15 浪潮电子信息产业股份有限公司 Asynchronous write caching method, device and medium for Linux kernel file system
CN111209094A (en) * 2018-11-21 2020-05-29 北京小桔科技有限公司 Request processing method and device, electronic equipment and computer readable storage medium
CN111857943A (en) * 2019-04-30 2020-10-30 华为技术有限公司 Data processing method, device and equipment
CN111857943B (en) * 2019-04-30 2024-05-17 华为技术有限公司 Data processing method, device and equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1652091A (en) * 2004-02-07 2005-08-10 华为技术有限公司 Data preacquring method for use in data storage system
CN101814038A (en) * 2010-03-23 2010-08-25 杭州顺网科技股份有限公司 Method for increasing booting speed of computer
CN103870312A (en) * 2012-12-12 2014-06-18 华为技术有限公司 Method and device for establishing storage cache shared by virtual machines
CN104461940A (en) * 2014-12-17 2015-03-25 南京莱斯信息技术股份有限公司 Efficient caching and delayed writing method for network virtual disk client side
CN105376269A (en) * 2014-08-11 2016-03-02 中国电信股份有限公司 Virtual machine storage system, virtual machine storage system realizing method and virtual machine storage system realizing device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1652091A (en) * 2004-02-07 2005-08-10 华为技术有限公司 Data preacquring method for use in data storage system
CN101814038A (en) * 2010-03-23 2010-08-25 杭州顺网科技股份有限公司 Method for increasing booting speed of computer
CN103870312A (en) * 2012-12-12 2014-06-18 华为技术有限公司 Method and device for establishing storage cache shared by virtual machines
CN105376269A (en) * 2014-08-11 2016-03-02 中国电信股份有限公司 Virtual machine storage system, virtual machine storage system realizing method and virtual machine storage system realizing device
CN104461940A (en) * 2014-12-17 2015-03-25 南京莱斯信息技术股份有限公司 Efficient caching and delayed writing method for network virtual disk client side

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018157543A1 (en) * 2017-02-28 2018-09-07 华为技术有限公司 Timer implementation method and related device
CN106940626A (en) * 2017-03-17 2017-07-11 郑州云海信息技术有限公司 The method and system of variance data between a kind of acquisition virtual machine multiple disks
CN106940626B (en) * 2017-03-17 2020-02-07 郑州云海信息技术有限公司 Method and system for acquiring difference data among multiple disks of virtual machine
CN107229427B (en) * 2017-06-22 2019-10-18 上海七牛信息技术有限公司 A kind of file memory method, system and computer storage medium
CN107229427A (en) * 2017-06-22 2017-10-03 上海七牛信息技术有限公司 A kind of file memory method, system and computer-readable storage medium
CN109558205B (en) * 2017-09-25 2022-11-29 南京中兴新软件有限责任公司 Disk access method and device
CN109558205A (en) * 2017-09-25 2019-04-02 南京中兴新软件有限责任公司 Disk access method and device
CN107729119A (en) * 2017-09-26 2018-02-23 联想(北京)有限公司 Virtual machine migration method and its system
WO2019091322A1 (en) * 2017-11-08 2019-05-16 阿里巴巴集团控股有限公司 Virtual machine snapshot processing method, apparatus and system
CN108108130A (en) * 2017-12-22 2018-06-01 深圳忆联信息系统有限公司 A kind of method and solid state disk for promoting solid state disk read-write performance
CN108845893A (en) * 2018-05-04 2018-11-20 广东睿江云计算股份有限公司 Magnetic disk of virtual machine reproduction process read method and device based on fixed buffering
CN108984123A (en) * 2018-07-12 2018-12-11 郑州云海信息技术有限公司 A kind of data de-duplication method and device
CN111209094A (en) * 2018-11-21 2020-05-29 北京小桔科技有限公司 Request processing method and device, electronic equipment and computer readable storage medium
CN111857943A (en) * 2019-04-30 2020-10-30 华为技术有限公司 Data processing method, device and equipment
CN111857943B (en) * 2019-04-30 2024-05-17 华为技术有限公司 Data processing method, device and equipment
CN110275841A (en) * 2019-06-20 2019-09-24 上海燧原智能科技有限公司 Access request processing method, device, computer equipment and storage medium
CN110275841B (en) * 2019-06-20 2020-09-04 上海燧原智能科技有限公司 Access request processing method and device, computer equipment and storage medium
CN111045604A (en) * 2019-12-11 2020-04-21 苏州浪潮智能科技有限公司 Small file read-write acceleration method and device based on NVRAM
CN111045604B (en) * 2019-12-11 2022-11-01 苏州浪潮智能科技有限公司 Small file read-write acceleration method and device based on NVRAM
CN111159124A (en) * 2019-12-30 2020-05-15 浪潮电子信息产业股份有限公司 Asynchronous write caching method, device and medium for Linux kernel file system
CN111159124B (en) * 2019-12-30 2022-04-22 浪潮电子信息产业股份有限公司 Asynchronous write caching method, device and medium for Linux kernel file system

Similar Documents

Publication Publication Date Title
CN106406981A (en) Disk data reading/writing method and virtual machine monitor
CN102906691B (en) Virtual machine migration techniques
CN103493027B (en) Virtual disk memory technology
US8826273B1 (en) Synchronously logging to disk for main-memory database systems through record and replay
US8762660B2 (en) Avoiding physical fragmentation in a virtualized storage environment
US8656222B2 (en) Method and system for recording a selected computer process for subsequent replay
US9122765B1 (en) Efficient overcommitment of main-memory based virtual database system to disk
CN107025070B (en) Versioned stores device and method
US9940152B2 (en) Methods and systems for integrating a volume shadow copy service (VSS) requester and/or a VSS provider with virtual volumes (VVOLS)
US20170371778A1 (en) Reliable Distributed Messaging Using Non-Volatile System Memory
US11188365B2 (en) Memory overcommit by speculative fault
US8799592B2 (en) Direct memory access-like data transfer between guest operating systems
JP2012523024A (en) Request processing system having a multi-core processor
US11436086B2 (en) Raid storage-device-assisted deferred parity data update system
CN104123236A (en) Method and system of high throughput hardware acceleration using pre-staging buffers
US20110087901A1 (en) Fast speed computer system power-on & power-off method
US20130238870A1 (en) Disposition instructions for extended access commands
US7184944B1 (en) Apparatus and method for the simulation of a large main memory address space given limited resources
US10628048B2 (en) Storage control device for controlling write access from host device to memory device
US11010091B2 (en) Multi-tier storage
KR102315102B1 (en) Method, device, apparatus, and medium for booting a virtual machine
CN108334457B (en) IO processing method and device
EP3264254B1 (en) System and method for a simulation of a block storage system on an object storage system
CN116540929A (en) Virtualized reading method and device of disk array, electronic equipment and storage medium
US11334292B2 (en) Autonomous RAID data storage system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170215

RJ01 Rejection of invention patent application after publication