Cloud computing has emerged as a technology that provides flexibility, availability and scalability of resources. All these features are provided by virtualization technology which can be considered as a heart of cloud computing model. Virtualization technology multiplexes virtual resources onto the physical resources. Cloud computing model provides on demand resources to users as per their varying needs. Hence efficient resource allocation strategies are needed for data centers that reduce cost. The authors developed a system that effectively reduces a system overload and reduces number of physical servers used. They have simulated the algorithm which achieves better performance.