The aim of this presentation is to describe the work developed on scheduling dynamically multi-user and independent jobs on clusters, both homogeneous and heterogeneous. The dynamic behavior means that the scheduler is able to adapt the scheduling when new jobs are submitted and also when processors availability changes. The aim for future work is to study the possibility of extending the scheduling algorithms for dynamic application scheduling on multicore heterogeneous machines. Another field of research is to develop grid (multi-cluster) scheduling strategies according to the utility computing concept. This is, to lower computation costs without damaging users QoS requirements, by taking into account energy consumption as well as computation time.