Abstract-Cloud computing became so important due to virtualization and IT systems in this decade. It has introduced as a distributed and heterogeneous computing pattern to sharing resources. Task Scheduling is necessary to make high performance heterogeneous computing. The optimization of related parameters, and using heuristic and meta-heuristic algorithms can lead to a reduction of the search space complexity and execution time. So, several studies have tried using a variety of algorithms to solve this issue and improve relative efficiency in their environments. This paper considered examines existing heuristic task scheduling algorithms. First, the concepts of scheduling, the layer of cloud computing, especially scheduling concept in the SaaS and PaaS layer, the main limits for improving the quality of service, evaluation methods of algorithms and applied tools for evaluating these ideas and practical experimental used methods were discussed and compared. Finally, future works in this area were also concluded and a summary of this article is presented in the form of a mind map.