Cloud computing is a hot topic in both industrial and academic areas. Virtualization employed on large data centers forms the basis of cloud computing, which includes CPU, I/O and memory virtualization. Time-sharing of CPU cycles for multiple virtual machines (VMs) has been the main bottleneck of system-level virtualization. How to schedule CPU cycles for multi-VMs to improve the QoS of web applications need further study. This paper first proposes a CPU management architecture for multi-VMs. Then, we convert the CPU scheduling problem into an integer programming problem. Importantly, we put forward a CPU scheduling algorithm based on utility optimization theory (UOCRS) to increase the global utility. Experiments show that our scheme improves the performance of Web applications remarkably.
展开▼