Function ADS::mcNaughton

Function Documentation

inline std::pair<double, std::vector<std::vector<Piece>>> ADS::mcNaughton(const std::vector<double> &t, int m)

the rule of McNaughton: the length d of the schedule and the pieces of each processor; the programs fill a processor up to d and go on at time 0 of the next one, and the two pieces of a program do not overlap because t[ i ] <= d; O( n + m ) time (exercise 19.3)

Pre:

m >= 1 and t is not negative

Post:

each program runs for its time within [ 0 , d ], never on two processors at once