Dynamic Task Scheduling in Cloud Computing Based on the Availability Level of Resources