IP Library Granted Patent US 10,031,767
Granted Patent B2
US 10,031,767 · App. 14/631,731 · Granted Jul 24, 2018

Dynamic information virtualization

Inventor: Sreekumar Nair (San Jose, CA)
Assignee: Dynavisor, Inc.
G06F9/455G06F9/4555G06F9/45533G06F9/45541G06F9/45545G06F9/45558G06F12/00G06F12/08G06F12/0802G06F12/084G06F12/0846G06F21/57G06F21/60G06F2009/45575G06F2009/45579G06F2009/45583G06F2009/45587
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,031,767
App. No.
14/631,731
Granted
Jul 24, 2018
Kind
B2
Abstract

A system and method for providing dynamic information virtualization (DIV) is disclosed. According to one embodiment, a device includes a dynamic optimization manager (DOM), a process and memory manager (PMM), a memory, and a host device driver. The device starts virtual functions after booting to allow a virtual machine (VM) running a guest operating system to identify the virtual functions and load virtual drivers of the virtual functions. The PMM allocates a unified cache from the memory to facilitate coherent access to information from storage and network resources by the VM. The host device driver enables a guess process in the VM to access the information stored in the unified cache in a secure and isolated manner.

Claims (39)

1. A device for providing dynamic information virtualization (DIV) comprising:

a dynamic optimization manager (DOM);

a process and memory manager (PMM);

a memory;

a host device driver,

wherein the device starts virtual functions after booting to allow a virtual machine (VM) running a guest operating system to identify the virtual functions and load virtual drivers of the virtual functions,

wherein the PMM allocates a unified cache inside the host from the memory to facilitate coherent access to information from storage devices, persistent coherent objects, and network resources,

wherein the DOM allocates additional memory on a host for a DOM optimization, and

wherein the host device driver enables a guest process in the VM to access the information stored in the unified cache in a secure and isolated manner; and

a unified cache manager that aggregates the information from the storage devices, persistent coherent objects, and network resources and deduplicates the information prior to being stored in the unified cache and provides a backing store for the information.

2. The device of claim 1 , wherein the device is a PCIe card inserted into a PCIe slot of a host computer.

3. The device of claim 1 , wherein virtual functions of the device are assigned to virtual machines of a hypervisor running on a host computer.

4. The device of claim 1 , wherein the device is emulated in software of a hypervisor of a host computer.

5. The device of claim 1 , wherein the device provides information virtualization of one or more hardware devices including at least one of a storage device, a networking device, and a graphics device.

6. The device of claim 5 , wherein the virtual drivers comprise a file system driver, and a network protocol driver, and a direct rendering manager (DRM) driver.

7. The device of claim 1 , wherein each of the virtual drivers establishes direct communication with a corresponding host device driver in a host operating system via shared memory protocols including streams.

8. The device of claim 1 , wherein the virtual drivers of the VM intercepts a request from an application running on the virtual machine and relays the request to the host device driver.

9. The device of claim 8 , wherein the PMM determines that a file to access by the request is stored in a cache and maps a memory block that belongs to the file into a guest process address space.

10. The device of claim 1 , wherein a first application running on the guest operating system accesses information served by the host device driver through a secure portal, wherein the secure portal limits access to the information allowed to the application by a second application.

11. The device of claim 10 , wherein the information is exchanged between the first application and the host device driver via a hostcall.

12. The device of claim 1 , wherein the information is stored in a backing store.

13. The device of claim 1 , wherein the PMM manages a generational caching of a distributed unified information cache (DUIC) for storing and managing data blocks (DBs).

14. The device of claim 13 , wherein the DBs are stored in a nursery pool, an aging pool, and a tenured pool.

15. A computer-implemented method comprising:

starting virtual functions of a device;

allowing a virtual machine (VM) running a guest operating system to identify the virtual functions and loads virtual drivers of the virtual functions;

allocating a unified cache inside the host from the memory to facilitate coherent access to information from storage devices, persistent coherent objects, and network resources;

allocating additional memory on a host for a DOM optimization;

enabling a guest process in the VM to access the information stored in the unified cache in a secure and isolated manner;

aggregating the information from the storage devices, persistent coherent objects, and network resources;

deduplicating the information prior to being stored in the unified cache; and

provide a backing store for the information.

16. The computer-implemented method of claim 15 , wherein the information is available from one or more hardware devices connected to the device.

17. The computer-implemented method of claim 16 , wherein the one or more hardware devices include a storage device, a networking device, and a graphics device.

18. The computer-implemented method of claim 15 , wherein the virtual drivers comprise a file system driver, and a network protocol driver, and a direct rendering manager (DRM) driver.

19. The computer-implemented method of claim 15 , further comprising allowing a first application running on the guest operating system to access the information served by a host device driver through a secure portal, and limiting a second application to access the information.

20. The computer-implemented method of claim 15 , further comprising:

intercepting a request from an application at the virtual drivers of the VM; and

relaying the request to the host device driver.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2017
From: NAIR, SREEKUMAR R.
To: DYNAVISOR, INC.
Reel/Frame 040874/0116 →
Continuity (2)
Provisional Application 61944474 · Feb 25, 2014
Related Publication 20150242227A1 · Aug 27, 2015
Cited By (1)
US 12,282,797