The document discusses different scheduling algorithms used in operating systems. It describes embedded and autonomous schedulers, priority scheduling, and common scheduling algorithms like first-in-first-out (FIFO), shortest job first (SJF), round-robin (RR), and earliest deadline first (EDF). It also compares different scheduling methods and discusses how scheduling policies are determined by factors like priority functions and decision modes.
19. An Embedded Scheduler Scheduler () { do { Find highest priority ready_a process p; Find a free cpu ; if ( cpu != NIL) Allocate_CPU (p, cpu ); } while ( cpu != NIL); do { Find highest priority ready_a process p; Find lowest priority running process q; if (Priority(p) > Priority(q)) Preempt (p,q); } while (Priority(p) > Priority(q)); if (self->Status.Type != ’ running ’) Preempt (p,self); } How to simplify the scheduler for a uniprocessor system?
20. Operating Systems Principles Process Management and Coordination Lecture 5: Process and Thread Scheduling Scheduling Methods