US11169708B1ActiveUtility
Zero memory buffer copying in a reliable distributed computing system
Est. expiryNov 25, 2034(~8.4 yrs left)· nominal 20-yr term from priority
H04L 67/1097G06F 3/0664G06F 9/45533G06F 3/0608G06F 3/061G06F 3/0631G06F 3/0659G06F 2009/45583G06F 9/45558H04L 67/10G06F 3/0683
53
PatentIndex Score
0
Cited by
2
References
10
Claims
Abstract
Reducing buffer space that is reserved when a VM attempts to write to disk. A shared memory maintains stored information available to all VM's, allowing translation between accessible to RSD's, independent of how that VM's storage is divided into VSD's. When a guest OS writes to a VSD, an “extent”, designating a location in the shared memory and amount of data to be transferred, which can be passed directly from the guest OS, through each element involved in translating the operation into one or more operations on RSD's, keeping copying to a minimum. No substantial changes need be made to the guest OS.
Claims
exact text as granted — not AI-modifiedThe invention claimed is:
1. Apparatus including a processor hosting
one or more guest operating systems;
one or more hypervisors, each guest operating system associated with one of said hypervisors, and each guest operating system being subject to the control of its associated hypervisor;
wherein
each said hypervisor includes
a block driver element coupled to an associated guest operating system and disposed to receive one or more instructions directed to one or more virtual storage devices,
said one or more virtual storage devices associated with said associated guest operating system,
and said one or more virtual storage devices being implemented by said hypervisor,
said one or more instructions each including an extent defining a block of data in a shared memory, and
an I/O interface coupled to said block driver element and disposed to control one or more real storage devices in response to said one or more instructions; and
wherein only said extent defining said block of data, without the data therein, need be sent between said associated guest operating system and said one or more real storage devices to couple the data in said block between said associated guest operating system and said one or more real storage devices.
2. Apparatus as in claim 1 , wherein
said block driver element is accessible to said one or more associated guest operating systems;
said I/O interface is accessible to said one or more real storage devices; and
said hypervisor includes one or more elements disposed to interface between said instructions directed to said one or more virtual storage devices and instructions directed to said one or more real storage devices.
3. Apparatus as in claim 2 , wherein
said instructions include read commands directed to said one or more virtual storage devices.
4. Apparatus as in claim 2 , wherein
said instructions include write commands directed to said one or more virtual storage devices.
5. Apparatus as in claim 2 , wherein
said one or more elements disposed to interface between said instructions directed to said one or more virtual storage devices and instructions directed to said one or more real storage devices include
a server element coupled to said block driver element and disposed to receive said one or more instructions; and
an I/O manager coupled to said server element and disposed to receive said one or more instructions.
6. Apparatus as in claim 1 , wherein
said block driver element is accessible to said one or more associated guest operating systems;
said I/O interface is accessible to said one or more real storage devices; and
said hypervisor includes
a server element coupled to said block driver element and disposed to receive said instructions and said metadata, and
an I/O manager coupled to said server element and disposed to receive said instructions and said metadata,
said instructions include read commands directed to said one or more virtual storage devices.
7. Apparatus as in claim 6 , wherein
said instructions include read commands directed to said one or more virtual storage devices.
8. Apparatus as in claim 6 , wherein
said instructions include write commands directed to said one or more virtual storage devices.
9. Apparatus as in claim 1 , wherein
said block of data defined by said metadata is accessible both with respect to said one or more virtual storage devices and said one or more real storage devices.
10. Apparatus as in claim 1 , wherein
said block of data defined by said metadata is accessible both with respect to said one or more guest operating systems and said one or more real storage devices.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.