IP Library Granted Patent US 8,336,048
Granted Patent B2
US 8,336,048 · App. 12/315,857 · Granted Dec 18, 2012

Reducing latency in a segmented virtual machine

Assignee: Azul Systems, Inc.
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 8,336,048
App. No.
12/315,857
Granted
Dec 18, 2012
Kind
B2
Abstract

Providing data to an application running on a segmented virtual machine (VM) is disclosed. Providing data includes opening an interface between the segmented VM and an external data source, transferring data from the external data source to an interface buffer, transferring a first selected amount of data from the interface buffer to a shell VM buffer, transferring a second selected amount of data from the shell VM buffer to a core VM buffer, and providing portions of the data from the core VM buffer to the application in response to read requests from the application.

Claims (56)

1. A method of reducing latency in a segmented virtual machine (VM), comprising:

receiving first segment state information regarding the first segment from a first segment of the VM at a second segment of the VM;

storing the first segment state information on the second segment of the VM;

automatically determining future first segment state information on the second segment of the VM without having to receive updates from the first segment

wherein the first segment is a core VM and the second segment is a shell VM; and

wherein the first segment state includes time, file state, or a directory state.

2. A method as recited in claim 1 , further including updating the first segment state information on the second segment of the VM based on the future state information.

3. A method as recited in claim 1 , wherein the future first segment state information does not change unless an update is received from the first segment of the VM.

4. A method as recited in claim 1 , wherein the future first segment state information does not change unless an amount of time has elapsed.

5. A method as recited in claim 1 , further including receiving updated first segment state information from the first segment of the VM.

6. A method as recited in claim 1 , wherein a request for first segment state information by an application running on the second segment of the VM initiates the receiving and storing of the state information.

7. A method as recited in claim 1 , wherein a request to modify first segment state information made by an application running on the second segment of the VM initiates the receiving and storing of the first segment state information.

8. A method as recited in claim 1 , wherein a request to modify first segment state information made by an application running on the second segment of the VM invalidates the first segment state information stored in the second segment of the VM.

9. A method as recited in claim 1 , wherein the first segment state information stored in the second segment of the VM expires after a period of time.

10. A method as recited in claim 1 , further including receiving new first segment state information from the first segment to the second segment.

11. A method as recited in claim 1 , further including receiving new first segment state information from the first segment to the second segment when there is a change in state.

12. A method as recited in claim 1 , wherein the first segment is a shell VM and the second segment is a core VM.

13. A method as recited in claim 1 , wherein future first segment state information is determined at least in part based on a state model configured to model the state of the first segment without having to receive updates from the first segment.

14. A system for reducing latency in a segmented virtual machine (VM), comprising:

a processor configured to:

receive first segment state information regarding the first segment from a first segment of the VM at a second segment of the VM;

store the first segment state information on the second segment of the VM; and

automatically determine future first segment state information on the second segment of the VM without having to receive updates from the first segment; and

a memory coupled with the processor, wherein the memory provides the processor with instructions

wherein the first segment is a core VM and the second segment is a shell VM; and

wherein the first segment state includes time, file state, or a directory state.

15. A system as recited in claim 14 , wherein the processor is further configured to update the first segment state information on the second segment of the VM based on the future state information.

16. A system as recited in claim 14 , wherein the future first segment state information does not change unless an update is received from the first segment of the VM.

17. A system as recited in claim 14 , wherein the future first segment state information does not change unless an amount of time has elapsed.

18. A system as recited in claim 14 , wherein the processor is further configured to receive updated first segment state information from the first segment of the VM.

19. A system as recited in claim 14 , wherein a request for first segment state information by an application running on the second segment of the VM initiates the receiving and storing of the state information.

20. A system as recited in claim 14 , wherein a request to modify first segment state information made by an application running on the second segment of the VM initiates the receiving and storing of the first segment state information.

21. A system as recited in claim 14 , wherein a request to modify first segment state information made by an application running on the second segment of the VM invalidates the first segment state information stored in the second segment of the VM.

22. A system as recited in claim 14 , wherein the first segment state information stored in the second segment of the VM expires after a period of time.

23. A system as recited in claim 14 , wherein the processor is further configured to receive new first segment state information from the first segment to the second segment.

24. A system as recited in claim 14 , wherein the processor is further configured to receive new first segment state information from the first segment to the second segment when there is a change in state.

25. A system as recited in claim 14 , wherein the first segment is a shell VM and the second segment is a core VM.

26. A system as recited in claim 14 , wherein future first segment state information is determined at least in part based on a state model configured to model the state of the first segment without having to receive updates from the first segment.

27. A computer program product for reducing latency in a segmented virtual machine (VM), the computer program product being embodied in a non-transitory computer readable medium and comprising computer instructions for:

receiving first segment state information regarding the first segment from a first segment of the VM at a second segment of the VM;

storing the first segment state information on the second segment of the VM; and

automatically determining future first segment state information on the second segment of the VM without having to receive updates from the first segment

wherein the first segment is a core VM and the second segment is a shell VM; and

wherein the first segment state includes time, file state, or a directory state.

28. A computer program product as recited in claim 27 , further including updating the first segment state information on the second segment of the VM based on the future state information.

29. A computer program product as recited in claim 27 , wherein the future first segment state information does not change unless an update is received from the first segment of the VM.

30. A computer program product as recited in claim 27 , wherein the future first segment state information does not change unless an amount of time has elapsed.

31. A computer program product as recited in claim 27 , further including receiving updated first segment state information from the first segment of the VM.

32. A computer program product as recited in claim 27 , wherein a request for first segment state information by an application running on the second segment of the VM initiates the receiving and storing of the state information.

33. A computer program product as recited in claim 27 , wherein a request to modify first segment state information made by an application running on the second segment of the VM initiates the receiving and storing of the first segment state information.

34. A computer program product as recited in claim 27 , wherein a request to modify first segment state information made by an application running on the second segment of the VM invalidates the first segment state information stored in the second segment of the VM.

35. A computer program product as recited in claim 27 , wherein the first segment state information stored in the second segment of the VM expires after a period of time.

36. A computer program product as recited in claim 27 , further including receiving new first segment state information from the first segment to the second segment.

37. A computer program product as recited in claim 27 , further including receiving new first segment state information from the first segment to the second segment when there is a change in state.

38. A computer program product as recited in claim 27 , wherein the first segment is a shell VM and the second segment is a core VM.

39. A computer program product as recited in claim 27 , wherein future first segment state information is determined at least in part based on a state model configured to model the state of the first segment without having to receive updates from the first segment.

Assignments (7)
RELEASE OF SECURITY INTERESTS IN PATENTS RECORDED AT REEL/FRAME 052293/0121 Recorded Dec 3, 2025
From: GOLUB CAPITAL LLC, AS COLLATERAL AGENT
To: AZUL SYSTEMS, INC.
Reel/Frame 073466/0064 →
SECURITY INTEREST Recorded Dec 3, 2025
From: AZUL SYSTEMS, INC.
To: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 073828/0083 →
SECURITY INTEREST Recorded Apr 2, 2020
From: AZUL SYSTEMS, INC.
To: GOLUB CAPITAL LLC, AS COLLATERAL AGENT
Reel/Frame 052293/0121 →
RELEASE OF SECURITY INTEREST Recorded Apr 2, 2020
From: SILICON VALLEY BANK
To: AZUL SYSTEMS, INC.
Reel/Frame 052293/0869 →
RELEASE OF SECURITY INTEREST Recorded Feb 21, 2019
From: PARTNERS FOR GROWTH IV, L.P.
To: AZUL SYSTEMS, INC.
Reel/Frame 048411/0138 →
SECURITY INTEREST Recorded Mar 1, 2016
From: AZUL SYSTEMS, INC.
To: PARTNERS FOR GROWTH IV, L.P.
Reel/Frame 037959/0694 →
SECURITY AGREEMENT Recorded Nov 18, 2009
From: AZUL SYSTEMS, INC.
To: SILICON VALLEY BANK
Reel/Frame 023538/0316 →
Continuity (2)
Division 11165827 · Jun 24, 2005
Related Publication 20090172665A1 · Jul 2, 2009