With the emergence of grid and cloud technologies, the problem of scheduling tasks in heterogeneous distributed systems has been arousing attention. In this paper, we present two scheduling techniques for optimizing overall execution time and minimizing r