Module 20: Multi-core Computing Multi-processor Scheduling
  Lecture 39: Multi-processor Scheduling
 


Where Does The OS Run?

  • Master/slave Assignment: Kernel functions always run on a particular processor. Other processors execute user processes.
  • Advantage: Resource conflict resolution simplified since single processor has control.
  • Single point of failure (Master).
  • Peer Assignment: OS executes on all processors. Each processor does its own scheduling from the pool of available processes. Most OSes implement this in an SMP environment.

Mapping Processes to Processors

  • Largely an application issue.
  • Applications may be written for a particular configuration of the machine.
  • Application create threads of computations and channel of communication between these threads assuming a particular machine configuration.
  • Applications may be generic in nature
  • Create n threads of computations. These threads can execute on machines with 1, <n, n or >n processors.
  • OS may assign any number of processors (1 to n) to this application.