schedulers
play

Schedulers University of New Mexico - PowerPoint PPT Presentation

Schedulers University of New Mexico https://commons.wikimedia.org/wiki/ File:Simplified_Structure_of_the_Linux_Kern el.svg 2 University of New Mexico O(1) scheduler (older) Two arrays, switching between them is just changing a pointer


  1. Schedulers

  2. University of New Mexico https://commons.wikimedia.org/wiki/ File:Simplified_Structure_of_the_Linux_Kern el.svg 2

  3. University of New Mexico O(1) scheduler (older)  Two arrays, switching between them is just changing a pointer  Uses heuristjcs to try to know which processes are interactjve  Average sleep tjme  htups://en.wikipedia.org/wiki/O(1)_scheduler 3

  4. University of New Mexico CFS scheduler (currently in Linux)  Completely Fair Scheduler  Red-black tree of executjon to the nanosecond  niffjes  Like weighted fair queuing for packet networks  An ideal processor would share equally  maximum executjon tjme = tjme the process has been waitjng to run / total number of processes  htups://en.wikipedia.org/wiki/Completely_Fair_Scheduler 4

  5. University of New Mexico BFS (now MuQQS)  Brain “Hug” Scheduler  Specifjcally for desktops  Weighted round-robin where the weights are based on some very complex formulae (see Wikipedia for details)  No priority modifjcatjon for sleep behavior  Time slice = 6ms (human perceptjon of jituer ≈ 7ms)  Performs slightly betuer than CFS for <16 cores  htups://en.wikipedia.org/wiki/Brain_Fuck_Scheduler  htups://lwn.net/Artjcles/720227/ 5

  6. University of New Mexico Windows NT through 10 ● Multilevel Feedback Queue (MLFQ) 6

  7. University of New Mexico Mac OS X ● XNU is a mix of FreeBSD and Mach – Network, files, processes, POSIX interface, etc. come from FreeBSD – CPU scheduling, memory management, specialized IPC, etc. comes from Mach ● Round-robin and MLFQ schedulers 7

  8. University of New Mexico IOS ( i.e. , iPhone) ● Same as Mac OS X – MLFQ and round-robin 8

  9. University of New Mexico Android ● Same as Linux – Completely Fair Scheduler 9

  10. University of New Mexico FreeBSD ● https://www.usenix.org/legacy/event/bsdco n03/tech/full_papers/roberson/roberson.pdf ● ULE scheduler ● Looks a lot like Linux’s old O(1) scheduler 10

  11. University of New Mexico Others ● GNU Hurd uses GNU Mach’s scheduler – MLFQ and RR ● Haiku has a simple RR scheduler where the time slice is based on the priority ● Solaris uses MLFQ ● Minix and xv6 - ??? ● Real-time OSes - ??? ● Supercomputers - ??? 11

More recommend