IP Library Granted Patent US 9,323,638
Granted Patent B2
US 9,323,638 · App. 14/702,397 · Granted Apr 26, 2016

Apparatuses, methods and systems for determining a virtual machine state based on CPU registers

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 9,323,638
App. No.
14/702,397
Granted
Apr 26, 2016
Kind
B2
Abstract

The CPU REGISTER ASSISTED VIRTUAL MACHINE SCREENSHOT CAPTURE TIMING APPARATUSES, METHODS AND SYSTEMS (“CRV”) transforms register retrieval requests, via CRV components, into boot success messages and screenshot capture command invocation outputs. A method comprises determining when to capture a screenshot of a virtual machine's display output by observing the values of a virtual CPU's registers, or the entropy of the virtual CPU's register values, obtained from a hypervisor in communication with the virtual machine's virtual CPU. The method further comprises determining when the virtual machine is at a boot success state and capturing a screenshot of the virtual machine display output.

Claims (286)

1. A method for verifying a status of an operating system running on a virtual machine, the method comprising:

obtaining, by a server, a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determining, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquiring an output of the virtual machine so as to verify the status of the operating system,

wherein:

obtaining the plurality of virtual CPU register values comprises obtaining the plurality of virtual CPU register values in a time-ordered sequence, and

determining the status of the operating system is based at least in part on the time-ordered sequence.

2. The method of claim 1 , wherein determining the status of the operating system comprises:

estimating an entropy of the at least one virtual CPU register based at least in part on the plurality of virtual CPU register values, and

determining the status of the operating system is based at least in part on the entropy of the at least one virtual CPU register.

3. The method of claim 1 , wherein:

determining the status of the operating system comprises determining that the operating system of the virtual machine has booted successfully, and

acquiring the output of the virtual machine comprises acquiring a representation of a display output of the virtual machine, the representation indicating successful booting of the virtual machine.

4. The method of claim 3 , wherein determining the status of the operating system comprises:

determining if an application is running on the virtual machine.

5. The method of claim 1 , wherein determining the status of the operating system comprises:

determining that the operating system is booting, and

checking the status of the operating system after a predetermined period of time in response to determining that the operating system is booting.

6. The method of claim 1 , wherein determining the status of the operating system comprises:

determining that the operating system has booted unsuccessfully.

7. The method of claim 1 , wherein acquiring the output of the virtual machine comprises:

acquiring a representation of a display output of the virtual machine.

8. The method of claim 1 , further comprising:

automatically recognizing text in the output of the virtual machine;

generating a report based at least in part on the text; and

transmitting the report to an administrator user as an indication of the status of the operating system.

9. An apparatus for verifying a status of an operating system of a virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determines, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquires an output of the virtual machine so as to verity the status of the operating system,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains the plurality of virtual CPU register values in a time-ordered sequence, and

determines the status of the operating system based at least in part on the time-ordered sequence.

10. The apparatus of claim 9 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

estimates an entropy of the at least one virtual CPU register based at least in part on the plurality of virtual CPU register values, and

determines the status of the operating system based at least in part on the entropy of the at least one virtual CPU register.

11. The apparatus of claim 9 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted successfully, and

acquires a representation of a display output of the virtual machine, the representation indicating of successful booting of the virtual machine.

12. The apparatus of claim 11 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines if an application is running on the virtual machine.

13. The apparatus of claim 9 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system is booting, and

checks the status of the operating system of the virtual machine after a predetermined period of time in response to determining that the operating system is booting.

14. The apparatus of claim 9 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted unsuccessfully.

15. The apparatus of claim 9 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

acquires a representation of a display output of the virtual machine.

16. The apparatus of claim 9 , upon execution of the processor-executable instructions by the at least one processor, the apparatus:

automatically recognizes text in the output of the virtual machine;

generates a report indicative of the text; and

transmits the report to an administrator user as an indication of the status of the operating system.

17. A method for verifying a status of an operating system of a virtual machine via a hypervisor providing a virtual central processing unit (CPU) to the virtual machine, the method comprising:

obtaining, by a server, a plurality of time-ordered virtual CPU register values associated with at least one virtual CPU register of the virtual CPU on the hypervisor;

determining, based at least in part on the plurality of time-ordered virtual CPU register values, a boot state value of the operating system of the virtual machine, the boot state value indicating that the operating system of the virtual machine (i) is still booting, (ii) has booted successfully, or (iii) has booted unsuccessfully; and

acquiring a representation of a display output of the virtual machine if the boot state value indicates that the operating system of the virtual machine has booted successfully or has booted unsuccessfully.

18. The method of claim 17 , further comprising:

if the operating system of the virtual machine has booted unsuccessfully, determining an error message based at least in part on the representation of the display output of the virtual machine.

19. An apparatus for verifying a status of an operating system of a virtual machine via a hypervisor providing a virtual central processing unit (CPU) to the virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions, wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of time-ordered virtual CPU register values associated with at least one virtual CPU register of the virtual CPU on the hypervisor;

determines based at least in part on the plurality of time-ordered virtual CPU register values, a boot state value of the operating system of the virtual machine, the boot state value indicating that the operating system of the virtual machine (i) is still booting, (ii) has booted successfully, or (iii) has booted unsuccessfully; and

acquires a representation of a display output of the virtual machine if the boot state value indicates that the operating system of the virtual machine has booted successfully or has booted unsuccessfully.

20. The apparatus of claim 19 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines an error message based at least in part on the representation of the display output of the virtual machine, when the operating system of the virtual machine has booted unsuccessfully.

21. A method for verifying a status of an operating system running on a virtual machine, the method comprising:

obtaining, by a server, a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determining, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquiring an output of the virtual machine so as to verify the status of the operating system,

wherein determining the status of the operating system comprises:

estimating an entropy of the at least one virtual CPU register based at least in part on the plurality of virtual CPU register values, and

determining the status of the operating system is based at least in part on the entropy of the at least one virtual CPU register.

22. The method of claim 21 , wherein:

determining the status of the operating system comprises determining that the operating system of the virtual machine has booted successfully, and

acquiring the output of the virtual machine comprises acquiring a representation of a display output of the virtual machine, the representation indicating successful booting of the virtual machine.

23. The method of claim 22 , wherein determining the status of the operating system comprises:

determining if an application is running on the virtual machine.

24. The method of claim 21 , wherein determining the status of the operating system comprises:

determining that the operating system is booting, and

checking the status of the operating system after a predetermined period of time in response to determining that the operating system is booting.

25. The method of claim 21 , wherein determining the status of the operating system comprises:

determining that the operating system has booted unsuccessfully.

26. The method of claim 21 , wherein acquiring the output of the virtual machine comprises:

acquiring a representation of a display output of the virtual machine.

27. The method of claim 21 , further comprising:

automatically recognizing text in the output of the virtual machine;

generating a report based at least in part on the text; and

transmitting the report to an administrator user as an indication of the status of the operating system.

28. An apparatus for verifying a status of an operating system of a virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determines, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquires an output of the virtual machine so as to verity the status of the operating system,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

estimates an entropy of the at least one virtual CPU register based at least in part on the plurality of virtual CPU register values, and

determines the status of the operating system based at least in part on the entropy of the at least one virtual CPU register.

29. The apparatus of claim 28 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted successfully, and

acquires a representation of a display output of the virtual machine, the representation indicating of successful booting of the virtual machine.

30. The apparatus of claim 29 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines if an application is running on the virtual machine.

31. The apparatus of claim 28 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system is booting, and

checks the status of the operating system of the virtual machine after a predetermined period of time in response to determining that the operating system is booting.

32. The apparatus of claim 28 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted unsuccessfully.

33. The apparatus of claim 28 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

acquires a representation of a display output of the virtual machine.

34. The apparatus of claim 28 , upon execution of the processor-executable instructions by the at least one processor, the apparatus:

automatically recognizes text in the output of the virtual machine;

generates a report indicative of the text; and

transmits the report to an administrator user as an indication of the status of the operating system.

35. A method for verifying a status of an operating system running on a virtual machine, the method comprising:

obtaining, by a server, a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determining, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquiring an output of the virtual machine so as to verify the status of the operating system,

wherein:

determining the status of the operating system comprises determining that the operating system of the virtual machine has booted successfully,

acquiring the output of the virtual machine comprises acquiring a representation of a display output of the virtual machine, the representation indicating successful booting of the virtual machine, and

wherein determining the status of the operating system comprises:

determining if an application is running on the virtual machine.

36. The method of claim 35 , wherein determining the status of the operating system comprises:

determining that the operating system is booting, and

checking the status of the operating system after a predetermined period of time in response to determining that the operating system is booting.

37. The method of claim 35 , wherein determining the status of the operating system comprises:

determining that the operating system has booted unsuccessfully.

38. The method of claim 35 , wherein acquiring the output of the virtual machine comprises:

acquiring a representation of a display output of the virtual machine.

39. The method of claim 37 , further comprising:

automatically recognizing text in the output of the virtual machine;

generating a report based at least in part on the text; and

transmitting the report to an administrator user as an indication of the status of the operating system.

40. An apparatus for verifying a status of an operating system of a virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determines, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquires an output of the virtual machine so as to verity the status of the operating system,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted successfully,

acquires a representation of a display output of the virtual machine, the representation indicating of successful booting of the virtual machine, and

determines if an application is running on the virtual machine.

41. The apparatus of claim 40 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system is booting, and

checks the status of the operating system of the virtual machine after a predetermined period of time in response to determining that the operating system is booting.

42. The apparatus of claim 40 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted unsuccessfully.

43. The apparatus of claim 40 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

acquires a representation of a display output of the virtual machine.

44. The apparatus of claim 40 , upon execution of the processor-executable instructions by the at least one processor, the apparatus:

automatically recognizes text in the output of the virtual machine;

generates a report indicative of the text; and

transmits the report to an administrator user as an indication of the status of the operating system.

45. A method for verifying a status of an operating system running on a virtual machine, the method comprising:

obtaining, by a server, a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determining, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquiring an output of the virtual machine so as to verify the status of the operating system,

wherein determining the status of the operating system comprises:

determining that the operating system is booting, and

checking the status of the operating system after a predetermined period of time in response to determining that the operating system is booting.

46. The method of claim 45 , wherein:

determining the status of the operating system comprises determining that the operating system of the virtual machine has booted successfully, and

acquiring the output of the virtual machine comprises acquiring a representation of a display output of the virtual machine, the representation indicating successful booting of the virtual machine.

47. The method of claim 45 , wherein determining the status of the operating system comprises:

determining that the operating system has booted unsuccessfully.

48. The method of claim 45 , wherein acquiring the output of the virtual machine comprises:

acquiring a representation of a display output of the virtual machine.

49. The method of claim 45 , further comprising:

automatically recognizing text in the output of the virtual machine;

generating a report based at least in part on the text; and

transmitting the report to an administrator user as an indication of the status of the operating system.

50. An apparatus for verifying a status of an operating system of a virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determines, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquires an output of the virtual machine so as to verity the status of the operating system,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system is booting, and

checks the status of the operating system of the virtual machine after a predetermined period of time in response to determining that the operating system is booting.

51. The apparatus of claim 50 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted successfully, and

acquires a representation of a display output of the virtual machine, the representation indicating of successful booting of the virtual machine.

52. The apparatus of claim 50 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted unsuccessfully.

53. The apparatus of claim 50 wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

acquires a representation of a display output of the virtual machine.

54. The apparatus of claim 50 , upon execution of the processor-executable instructions by the at least one processor, the apparatus:

automatically recognizes text in the output of the virtual machine;

generates a report indicative of the text; and

transmits the report to an administrator user as an indication of the status of the operating system.

55. A method for verifying a status of an operating system running on a virtual machine, the method comprising:

obtaining, by a server, a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determining, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquiring an output of the virtual machine so as to verify the status of the operating system,

wherein determining the status of the operating system comprises:

determining that the operating system has booted unsuccessfully.

56. The method of claim 55 , wherein:

determining the status of the operating system comprises determining that the operating system of the virtual machine has booted successfully, and

acquiring the output of the virtual machine comprises acquiring a representation of a display output of the virtual machine, the representation indicating successful booting of the virtual machine.

57. The method of claim 55 , wherein acquiring the output of the virtual machine comprises:

acquiring a representation of a display output of the virtual machine.

58. The method of claim 55 , further comprising:

automatically recognizing text in the output of the virtual machine;

generating a report based at least in part on the text; and

transmitting the report to an administrator user as an indication of the status of the operating system.

59. An apparatus for verifying a status of an operating system of a virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determines, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquires an output of the virtual machine so as to verity the status of the operating system,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted unsuccessfully.

60. The apparatus of claim 59 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted successfully, and

acquires a representation of a display output of the virtual machine, the representation indicating of successful booting of the virtual machine.

61. The apparatus of claim 59 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

acquires a representation of a display output of the virtual machine.

62. The apparatus of claim 59 , upon execution of the processor-executable instructions by the at least one processor, the apparatus:

automatically recognizes text in the output of the virtual machine;

generates a report indicative of the text; and

transmits the report to an administrator user as an indication of the status of the operating system.

63. A method for verifying a status of an operating system running on a virtual machine, the method comprising:

obtaining, by a server, a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determining, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquiring an output of the virtual machine so as to verify the status of the operating system,

wherein acquiring the output of the virtual machine comprises:

acquiring a representation of a display output of the virtual machine.

64. The method of claim 63 , wherein:

determining the status of the operating system comprises determining that the operating system of the virtual machine has booted successfully, and

acquiring the output of the virtual machine comprises acquiring a representation of a display output of the virtual machine, the representation indicating successful booting of the virtual machine.

65. The method of claim 63 , further comprising:

automatically recognizing text in the output of the virtual machine;

generating a report based at least in part on the text; and

transmitting the report to an administrator user as an indication of the status of the operating system.

66. An apparatus for verifying a status of an operating system of a virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determines, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquires an output of the virtual machine so as to verity the status of the operating system,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

acquires a representation of a display output of the virtual machine.

67. The apparatus of claim 66 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted successfully, and

acquires a representation of a display output of the virtual machine, the representation indicating of successful booting of the virtual machine.

68. The apparatus of claim 66 , upon execution of the processor-executable instructions by the at least one processor, the apparatus:

automatically recognizes text in the output of the virtual machine;

generates a report indicative of the text; and

transmits the report to an administrator user as an indication of the status of the operating system.

69. A method for verifying a status of an operating system running on a virtual machine, the method comprising:

obtaining, by a server, a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determining, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquiring an output of the virtual machine so as to verify the status of the operating system,

further comprising:

automatically recognizing text in the output of the virtual machine,

generating a report based at least in part on the text, and

transmitting the report to an administrator user as an indication of the status of the operating system.

70. The method of claim 69 , wherein:

determining the status of the operating system comprises determining that the operating system of the virtual machine has booted successfully, and

acquiring the output of the virtual machine comprises acquiring a representation of a display output of the virtual machine, the representation indicating successful booting of the virtual machine.

71. An apparatus for verifying a status of an operating system of a virtual machine, the apparatus comprising:

a memory to store processor-executable instructions; and

at least one processor, operably coupled to the memory, to execute the processor executable instructions,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

obtains a plurality of virtual central processing unit (CPU) register values associated with at least one virtual CPU register of a virtual CPU on a hypervisor, the hypervisor providing virtualization services to the virtual machine;

determines, based at least in part on the plurality of virtual CPU register values, the status of the operating system; and

acquires an output of the virtual machine so as to verity the status of the operating system,

wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

automatically recognizes text in the output of the virtual machine,

generates a report indicative of the text, and

transmits the report to an administrator user as an indication of the status of the operating system.

72. The apparatus of claim 71 , wherein, upon execution of the processor-executable instructions by the at least one processor, the apparatus:

determines that the operating system has booted successfully, and

acquires a representation of a display output of the virtual machine, the representation indicating of successful booting of the virtual machine.

Assignments (14)
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Mar 24, 2025
From: DATTO, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS SECOND LIEN COLLATERAL AGENT
Reel/Frame 070609/0599 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Mar 21, 2025
From: DATTO, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 070586/0681 →
RELEASE OF SECURITY INTEREST (PATENTS) Recorded Mar 20, 2025
From: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
To: DATTO, INC.
Reel/Frame 070583/0566 →
CHANGE OF NAME Recorded Oct 27, 2023
From: DATTO, INC.
To: DATTO, LLC
Reel/Frame 065385/0256 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Aug 9, 2022
From: DATTO, INC.
To: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
Reel/Frame 061129/0839 →
RELEASE OF SECURITY INTEREST Recorded Jun 23, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: DATTO, INC.; AUTOTASK CORPORATION; OPEN MESH, INC.; SOONR, INC.
Reel/Frame 060293/0565 →
PATENT SECURITY AGREEMENT Recorded Oct 23, 2020
From: DATTO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 054191/0984 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 48776/0282 Recorded Oct 23, 2020
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: DATTO, INC.
Reel/Frame 054191/0913 →
RELEASE OF SECURITY INTEREST Recorded Apr 3, 2019
From: GOLDMAN SACHS PRIVATE MIDDLE MARKET CREDIT LLC, AS COLLATERAL AGENT
To: DATTO, INC.
Reel/Frame 048786/0521 →
PATENT SECURITY AGREEMENT Recorded Apr 2, 2019
From: DATTO, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 048776/0282 →
PATENT SECURITY AGREEMENT Recorded Dec 12, 2017
From: DATTO, INC.
To: GOLDMAN SACHS PRIVATE MIDDLE MARKET CREDIT LLC, AS COLLATERAL AGENT
Reel/Frame 044833/0923 →
RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY COLLATERAL AT REEL/FRAME NO. 42510/0073 Recorded Dec 11, 2017
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: DATTO, INC.
Reel/Frame 044830/0231 →
SECURITY INTEREST Recorded May 25, 2017
From: DATTO, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 042510/0073 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2015
From: COLEMAN, MATTHEW; MCCHORD, AUSTIN
To: DATTO, INC.
Reel/Frame 036553/0847 →