In this thesis, we design scheduling heuristics for independent tasks under budget and time constraints, in order to satisfy the requirement on performance or on energy consumption. The first three chapters of this thesis have performance as objective, while the fourth chapter focuses on energy-efficiency. The first three chapters have a common framework: We have a bag of tasks whose execution times follow some probability distributions. We can decide at any instant to interrupt the execution of a long running task and to launch a new one instead. The main questions are how many (or which) processors to enroll, and whether and when to interrupt tasks if they have been executing for a long time. In previous work, the problem has been dealt w...