Managing resources in virtualization systems
AssigneeTurbonomic, Inc.
InventorsYechiam Yemini, Shmuel Kliger, Danilo Florissi, Shai Benjamin, Yuri Rabover, Mor Cohen, Enlin Xu, Endre Sara
Life of this patent
Estimating the term…
Loading patent…
AssigneeTurbonomic, Inc.
InventorsYechiam Yemini, Shmuel Kliger, Danilo Florissi, Shai Benjamin, Yuri Rabover, Mor Cohen, Enlin Xu, Endre Sara
Estimating the term…
Methods, systems, and apparatus, including computer program products, for managing resources in virtualization systems, including multi-cloud systems. The use of supply chain economics alone and in combination with other techniques offers a unified platform to integrate, optimize or improve, and automate resource management in a virtualization system. These techniques may be used to monitor and control the delivery of service level agreements and software licenses. They may also be used to monitor and control contention of computing resources in a virtualization system, and to suspend or terminate computing resources.
A computer-implemented method, comprising:
A computer-implemented method, comprising:
A computer system for managing access to computer resources, comprising:
A computer system for managing access to computer resources, comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Allocation of resources, e.g. of the central processing unit [CPU]: techniques for rebalancing the load in a distributed system
Hypervisors; Virtual machine monitors: guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
Hypervisors; Virtual machine monitors: hypervisor-specific management and integration aspects
Partitioning or combining of resources: logical partitioning of resources; Management or configuration of virtualized resources
About 3 years 7 months of term left · ends 22 May 2030 (estimated)
This specification relates to virtualization systems, and particularly to managing resources in such systems.
Traditional computer system architectures typically include one or more dedicated computer servers for each application being run, and are often designed to include an excessive allocation of resources in order to be able to handle peak demands. Such partitioning of computer systems through dedicated servers and excessive allocation of resources can be costly, inefficient and difficult to scale and manage.
Virtualization, which refers to the abstraction of computer resources from their hardware or software-based physical constructs, is one manner of dealing with the aforementioned problems. A virtualization system includes one or more virtual machines (VMs), each of which is a software implementation of a computer that executes programs or applications as if it was a physical computer. A virtual machine operates like a physical computer and contains, for example, its own virtual (e.g., software-based) central processing unit (CPU), random access memory (RAM), hard disk storage and network interface card (NIC). Each virtual machine in a virtualization system generally runs its own guest operating system (OS), and the virtual machines generally share the underlying physical machine resources of the system.
FIG. 1 is a block diagram of an example virtualization environment in which resources are managed.
FIG. 2 is a block diagram of an example software system for managing resources in a virtualization system.
FIG. 3 is a flow diagram of an example process for using a platform manager in a virtualization system.
Like reference numbers and designations in the various drawings indicate like elements.
FIG. 1 is a block diagram of an example virtualization environment 100 in which resources are managed. The example environment 100 including two physical servers 102 and 104 that are virtualized, resulting in multiple logical servers. The virtualization of the resources of the servers 102 and 104 is provided by respective virtual machine monitors, or hypervisors 106 and 108. As used herein, the term “hypervisor” refers to virtualization software that allows multiple operating systems to run on a single host computer concurrently. There are multiple types of hypervisors that may be used according to various embodiments, including native hypervisors, which are software systems that run directly on the host server's hardware as a hardware control and guest operating system monitor. Thus, with native hypervisors, the guest operating system runs on another level above the hypervisor. Native hypervisors are also commonly referred to as “bare-metal” or “Type 1” hypervisors. Another type of hypervisor includes hosted hypervisors, which are software applications running within a conventional operating system environment. With hosted hypervisors, considering the hypervisor layer as being a distinct software layer, the guest operating system runs at the third level above the hardware. Hosted hypervisors are also commonly referred to as “Type 2” hypervisors.
In the example embodiment shown in FIG. 1, the hypervisor 106 at the server 102 serves as an intermediary software layer and allocates this server's resources between a first virtual machine 110 and a second virtual machine 112. For example, the hypervisor 106 schedules the CPUs and memory of the server 102 to process the virtual machines 110 and 112. Similarly, the hypervisor 108 at the server 104 allocates this server's resources between its first virtual machine 114 and its second virtual machine 116.