Adaptive Resource Management and Scheduling for Cloud Computing