SlideShare a Scribd company logo
2
Most read
8
Most read
9
Most read
Scheduler Activations

With some slides modified from
Raymond Namyst, U. Bordeaux
User-level Threads
User Mode




        Scheduler     Scheduler   Scheduler




         Process A   Process B    Process C




                     Scheduler
Kernel Mode
User-level Threads
Fast thread management (creation, deletion,
switching, synchronisation…)
Blocking blocks all threads in a process
– Syscalls
– Page faults
No thread-level parallelism on multiprocessor
Kernel-Level Threads
User Mode




         Process A   Process B   Process C




                     Scheduler
Kernel Mode
Kernel-level Threads
Slow thread management (creation, deletion,
switching, synchronisation…)
• System calls
Blocking blocks only the appropriate thread in
a process
Thread-level parallelism on multiprocessor
Hybrid Multithreading
User Mode




        Scheduler     Scheduler   Scheduler




         Process A   Process B    Process C




                     Scheduler
Kernel Mode
Hybrid Multithreading
Can get real thread parallelism on
multiprocessor
Blocking still a problem!!!
Scheduler Activations
• First proposed by [Anderson et al. 91]
• Idea: Both schedulers co-operate
      • User scheduler uses system calls
      • Kernel scheduler uses upcalls!
• Two important concepts
   – Upcalls
      • Notify the user-level of kernel scheduling events
   – Activations
      • A new structure to support upcalls and execution
          – approximately a kernel thread
      • As many running activations as (allocated) processors
      • Kernel controls activation creation and destruction
Scheduler Activations
• Instead of         CPU time wasted
                syscall
User Space
                    I/O request     interrupt
Kernel Space

Hardware



• …rather use the following scheme:
                          CPU used
User Space
                           upcall               upcall
Kernel Space

Hardware
Upcalls to User-level
            scheduler
• New
  – Allocated a new virtual CPU
  – Can schedule a user-level thread
• Preempted
  – Deallocated a virtual CPU
  – Can schedule one less thread
• Blocked
  – Notifies thread has blocked
  – Can schedule another user-level thread
• Unblocked
  – Notifies a thread has become runnable
  – Must decided to continue current or unblocked thread
Working principle
• Blocking syscall scenario on 2 processors
                   Process




                User scheduler
Working principle
• Blocking syscall scenario on 2 processors
                    Process




                      new
Working principle
• Blocking syscall scenario on 2 processors
                   Process




                     new
Working principle
• Blocking syscall scenario on 2 processors
                   Process
Working principle
• Blocking syscall scenario on 2 processors
                   Process




                     preempt




                               Preempt
Working principle
• Blocking syscall scenario on 2 processors
                   Process
Working principle
• Blocking syscall scenario on 2 processors
                   Process




                       Blocking syscall
Working principle
• Blocking syscall scenario on 2 processors
                   Process




                    New + blocked
Working principle
• Blocking syscall scenario on 2 processors
                   Process




                             I/O completion
Working principle
• Blocking syscall scenario on 2 processors
                    Process




                       Unblocked
Working principle
• Blocking syscall scenario on 2 processors
                   Process
Scheduler Activations
• Thread management at user-level
  – Fast
• Real thread parallelism via activations
  – Number of activations (virtual CPU) can equal
    CPUs
• Blocking (syscall or page fault) creates new
  activation
  – User-level scheduler can pick new runnable
    thread.
• Fewer stacks in kernel
  – Blocked activations + number of virtual CPUs
Adoption
• Adopters
  – BSD “Kernel Scheduled Entities”
  – K42
  – Digital UNIX
  – Solaris
  – Mach
• Linux -> kernel threads

More Related Content

PPTX
Linux System Programming - File I/O
PDF
Linux Memory Management
PPTX
process and thread.pptx
PPTX
04. availability-concepts
PPTX
Linux Memory Management
PDF
Course 102: Lecture 14: Users and Permissions
PPTX
05. performance-concepts
PPTX
Chapter 10
Linux System Programming - File I/O
Linux Memory Management
process and thread.pptx
04. availability-concepts
Linux Memory Management
Course 102: Lecture 14: Users and Permissions
05. performance-concepts
Chapter 10

What's hot (20)

PDF
Lesson 2 Understanding Linux File System
PDF
Linux cgroups and namespaces
PPT
PPTX
Concurrency Control in Distributed Systems.pptx
PPT
41 page replacement fifo
PPTX
How to shutdown and power up of the netapp cluster mode storage system
PPTX
Samba power point presentation
PPTX
Chorus - Distributed Operating System [ case study ]
PPTX
Synchronization problems
PPTX
Linux administration
PPTX
IP tables and Filtering
PPTX
Dealing with exceptions Computer Architecture part 2
PPTX
05. performance-concepts-26-slides
PPTX
Memory virtualization
PDF
PDF
CS9222 ADVANCED OPERATING SYSTEMS
PPTX
Operating system 34 contiguous allocation
PPTX
Superscalar processor
PDF
HDFS HA セミナー #hadoop
PPTX
physical file system in operating system
Lesson 2 Understanding Linux File System
Linux cgroups and namespaces
Concurrency Control in Distributed Systems.pptx
41 page replacement fifo
How to shutdown and power up of the netapp cluster mode storage system
Samba power point presentation
Chorus - Distributed Operating System [ case study ]
Synchronization problems
Linux administration
IP tables and Filtering
Dealing with exceptions Computer Architecture part 2
05. performance-concepts-26-slides
Memory virtualization
CS9222 ADVANCED OPERATING SYSTEMS
Operating system 34 contiguous allocation
Superscalar processor
HDFS HA セミナー #hadoop
physical file system in operating system
Ad

Viewers also liked (20)

PPT
Scheduler Activations - Effective Kernel Support for the User-Level Managemen...
PPTX
Kernel (computing)
PPT
Arrangeren van-leermiddelen: keuzes in het leerplan
PPSX
আত্ম সচেনতা অর্জনের সূত্র
PDF
Оборот 2013 // Как освежить отношения с клиентами ? // OZON.ru (Кира Жесткова)
PPT
Social Media for NFP
PDF
CARTA FESTES MARROCS 2015
PPT
Ponencia smagua zaragoza marzo 2016
PDF
Tele4653 l5
PPT
dMT SPC Presentation Rotating Equip.-E
PPTX
Prof. Tara Dean on allergies - Cafe Scientifique Isle of Wight
PDF
Lect15
PPS
Era town
PPTX
Slide bio3397
PDF
Memoràndum 2013 maquetat
PPT
2n taller iloquid qualitat - diba - 06-06-12
PPTX
My Resume Presentation
PPT
Prof Arnold Taylor: The significant experiments of Robert Hooke - 8 June 2015
PDF
РИФ+КИБ 2013 // Как создать персонализированный маркетинг? // OZON.ru (Кира Ж...
PDF
Kamaroninfo núm 23 març 1998
Scheduler Activations - Effective Kernel Support for the User-Level Managemen...
Kernel (computing)
Arrangeren van-leermiddelen: keuzes in het leerplan
আত্ম সচেনতা অর্জনের সূত্র
Оборот 2013 // Как освежить отношения с клиентами ? // OZON.ru (Кира Жесткова)
Social Media for NFP
CARTA FESTES MARROCS 2015
Ponencia smagua zaragoza marzo 2016
Tele4653 l5
dMT SPC Presentation Rotating Equip.-E
Prof. Tara Dean on allergies - Cafe Scientifique Isle of Wight
Lect15
Era town
Slide bio3397
Memoràndum 2013 maquetat
2n taller iloquid qualitat - diba - 06-06-12
My Resume Presentation
Prof Arnold Taylor: The significant experiments of Robert Hooke - 8 June 2015
РИФ+КИБ 2013 // Как создать персонализированный маркетинг? // OZON.ru (Кира Ж...
Kamaroninfo núm 23 març 1998
Ad

Similar to Scheduler activations (20)

PPT
OS Thr schd.ppt
PPTX
OS_module2. .pptx
PPT
4.Process.ppt
PPTX
Chapter -2 operating system presentation
DOCX
Process scheduling
PPT
Chapter 2 (Part 2)
PPTX
Os unit 3 , process management
PPTX
LM9 - OPERATIONS, SCHEDULING, Inter process xommuncation
PPTX
UNIT-2-PROCESS MANAGEMENT in opeartive system.pptx
PPTX
Operating System Process Management.pptx
PDF
Module 2 - PPT.pdfModule 2 - PPT.pdfModule 2 - PPT.pdfModule 2 - PPT.pdfModul...
PPTX
Operating Systems Process Management.pptx
PDF
Unit 2 part 2(Process)
PPTX
Process, Threads, Symmetric Multiprocessing and Microkernels in Operating System
PDF
CSI-503 - 2. Processor Management
PDF
Lect06
PDF
Operating System
PDF
Process And Scheduling Algorithms in os
PPTX
Lecture 2 Processes in operating systems.pptx
OS Thr schd.ppt
OS_module2. .pptx
4.Process.ppt
Chapter -2 operating system presentation
Process scheduling
Chapter 2 (Part 2)
Os unit 3 , process management
LM9 - OPERATIONS, SCHEDULING, Inter process xommuncation
UNIT-2-PROCESS MANAGEMENT in opeartive system.pptx
Operating System Process Management.pptx
Module 2 - PPT.pdfModule 2 - PPT.pdfModule 2 - PPT.pdfModule 2 - PPT.pdfModul...
Operating Systems Process Management.pptx
Unit 2 part 2(Process)
Process, Threads, Symmetric Multiprocessing and Microkernels in Operating System
CSI-503 - 2. Processor Management
Lect06
Operating System
Process And Scheduling Algorithms in os
Lecture 2 Processes in operating systems.pptx

More from Vin Voro (20)

PDF
Tele3113 tut6
PDF
Tele3113 tut5
PDF
Tele3113 tut4
PDF
Tele3113 tut1
PDF
Tele3113 tut3
PDF
Tele3113 tut2
PDF
Tele3113 wk11tue
PDF
Tele3113 wk10wed
PDF
Tele3113 wk10tue
PDF
Tele3113 wk11wed
PDF
Tele3113 wk7wed
PDF
Tele3113 wk9tue
PDF
Tele3113 wk8wed
PDF
Tele3113 wk9wed
PDF
Tele3113 wk7wed
PDF
Tele3113 wk7wed
PDF
Tele3113 wk7tue
PDF
Tele3113 wk6wed
PDF
Tele3113 wk6tue
PDF
Tele3113 wk5tue
Tele3113 tut6
Tele3113 tut5
Tele3113 tut4
Tele3113 tut1
Tele3113 tut3
Tele3113 tut2
Tele3113 wk11tue
Tele3113 wk10wed
Tele3113 wk10tue
Tele3113 wk11wed
Tele3113 wk7wed
Tele3113 wk9tue
Tele3113 wk8wed
Tele3113 wk9wed
Tele3113 wk7wed
Tele3113 wk7wed
Tele3113 wk7tue
Tele3113 wk6wed
Tele3113 wk6tue
Tele3113 wk5tue

Recently uploaded (20)

PDF
Hazard Identification & Risk Assessment .pdf
PPTX
Chinmaya Tiranga Azadi Quiz (Class 7-8 )
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PDF
HVAC Specification 2024 according to central public works department
PPTX
Unit 4 Computer Architecture Multicore Processor.pptx
PPTX
Introduction to pro and eukaryotes and differences.pptx
PPTX
Share_Module_2_Power_conflict_and_negotiation.pptx
PDF
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
PDF
IGGE1 Understanding the Self1234567891011
PDF
Paper A Mock Exam 9_ Attempt review.pdf.
PDF
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
PDF
Vision Prelims GS PYQ Analysis 2011-2022 www.upscpdf.com.pdf
PPTX
A powerpoint presentation on the Revised K-10 Science Shaping Paper
PPTX
20th Century Theater, Methods, History.pptx
PDF
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf
PDF
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 1)
DOC
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
PPTX
Introduction to Building Materials
PPTX
B.Sc. DS Unit 2 Software Engineering.pptx
Hazard Identification & Risk Assessment .pdf
Chinmaya Tiranga Azadi Quiz (Class 7-8 )
202450812 BayCHI UCSC-SV 20250812 v17.pptx
Chinmaya Tiranga quiz Grand Finale.pdf
HVAC Specification 2024 according to central public works department
Unit 4 Computer Architecture Multicore Processor.pptx
Introduction to pro and eukaryotes and differences.pptx
Share_Module_2_Power_conflict_and_negotiation.pptx
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
IGGE1 Understanding the Self1234567891011
Paper A Mock Exam 9_ Attempt review.pdf.
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
Vision Prelims GS PYQ Analysis 2011-2022 www.upscpdf.com.pdf
A powerpoint presentation on the Revised K-10 Science Shaping Paper
20th Century Theater, Methods, History.pptx
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 1)
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
Introduction to Building Materials
B.Sc. DS Unit 2 Software Engineering.pptx

Scheduler activations