Standby thread state in the Windows NT family*

Slides:



Advertisements
Similar presentations
Vassal: Loadable Scheduler Support for Multi-Policy Scheduling George M. Candea, Oracle Corporation Michael B. Jones, Microsoft Research.
Advertisements

Copyright © 2000, Daniel W. Lewis. All Rights Reserved. CHAPTER 8 SCHEDULING.
李盈賢.  Start a process with a specific priority class  Methods: 1)Cmd: start /’priority’ ‘filename’ 2)Create a shortcut.
IT Systems Multiprocessor System EN230-1 Justin Champion C208 –
1/27/2010CSCI 315 Operating Systems Design1 Processes Notice: The slides for this lecture have been largely based on those accompanying an earlier version.
Introduction to Operating Systems – Windows process and thread management In this lecture we will cover Threads and processes in Windows Thread priority.
Cs238 CPU Scheduling Dr. Alan R. Davis. CPU Scheduling The objective of multiprogramming is to have some process running at all times, to maximize CPU.
1HW1 Explain the transition “interrupted” and “event wait.” Describe how they are different. NewReadyRunningTerminated Waiting (Blocked) admitted Dispatched.
1 Traditional OSes with Soft Real- Time Scheduling Module 3.3 For a good summary, visit:
Chapter 2 Processes and Threads Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved
CPS110: Implementing threads/locks on a uni-processor Landon Cox.
MicroC/OS-II Embedded Systems Design and Implementation.
1 Inside the Windows NT Scheduler, Part 1 Assigning CPU time in a uniprocessor environment by Mark Russinovich Windows NT Magazine - July 1997 Inside the.
Process Scheduling in Windows XP, Linux, and UNIX By Sarah G. Levinson CSC 4320.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Scheduling in Windows Zoltan Micskei
1 Previous lecture review n Out of basic scheduling techniques none is a clear winner: u FCFS - simple but unfair u RR - more overhead than FCFS may not.
SYNCHRONIZATION Module-4. scheduling Scheduling is an operating system mechanism that arbitrate CPU resources between running tasks. Different scheduling.
Cosc 4740 Chapter 6, Part 3 Process Synchronization.
Multithreading in Java Project of COCS 513 By Wei Li December, 2000.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 2 Processes and Threads Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
1 RTOS Design Some of the content of this set of slides is taken from the documentation existing on the FreeRTOS website
Operating Systems CSE 411 Multi-processor Operating Systems Multi-processor Operating Systems Dec Lecture 30 Instructor: Bhuvan Urgaonkar.
The act of Scheduling a process means changing the active PCB pointed to by the CPU. Also called a context switch. A context switch is essentially the.
Silberschatz and Galvin  Chapter 3:Processes Processes –State of a process, process control block, –Scheduling of processes  Long term scheduler,
Processes & Threads Introduction to Operating Systems: Module 5.
CSE 153 Design of Operating Systems Winter 2015 Midterm Review.
Cs431-cotter1 Processes and Threads Tanenbaum 2.1, 2.2 Crowley Chapters 3, 5 Stallings Chapter 3, 4 Silberschaz & Galvin 3, 4.
4.1 Introduction to Threads Overview Multithreading Models Thread Libraries Threading Issues Operating System Examples Windows XP Threads Linux Threads.
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
6.1 Silberschatz, Galvin and Gagne ©2005 Operating System Principles 6.5 Semaphore Less complicated than the hardware-based solutions Semaphore S – integer.
Tutorial 2: Homework 1 and Project 1
CS703 - Advanced Operating Systems
REAL-TIME OPERATING SYSTEMS
Chapter 19: Real-Time Systems
Windows API.
Applied Operating System Concepts -
Chapter 2 Processes and Threads Today 2.1 Processes 2.2 Threads
April 6, 2001 Gary Kimura Lecture #6 April 6, 2001
Operating Systems: A Modern Perspective, Chapter 6
CPU Scheduling – Multiprocessor
O/S State Diagrams © 2004, D. J. Foreman.
Process and Thread State Diagrams
Intro to Processes CSSE 332 Operating Systems
Threads & multithreading
Chapter 3: Windows7 Part 2.
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Chapter 4: Threads.
ICS 143 Principles of Operating Systems
Chapter 5: CPU Scheduling
Modified by H. Schulzrinne 02/15/10 Chapter 4: Threads.
Chapter 3: Windows7 Part 2.
Midterm review: closed book multiple choice chapters 1 to 9
TDC 311 Process Scheduling.
Multithreading 2 Lec 24.
Outline Scheduling algorithms Multi-processor scheduling
CPU scheduling decisions may take place when a process:
Operating Systems Processes (Ch 4.1).
Grades.
Chapter 2 Processes and Threads 2.1 Processes 2.2 Threads
Process and Thread State Diagrams
EE 472 – Embedded Systems Dr. Shwetak Patel.
Chapter 19: Real-Time Systems
Chapter 10 Multiprocessor and Real-Time Scheduling
Processes in Unix and Windows
The VMS Operating System
Shortest-Job-First (SJR) Scheduling
Implementing Processes, Threads, and Resources
CSE 153 Design of Operating Systems Winter 2019
Michael Blinn Ben Hejl Jane McHugh Matthew VanMater
Operating Systems Processes (Ch 2.1).
Presentation transcript:

Standby thread state in the Windows NT family* Julian Kurz Sven Krohlas - krohlas.de *NT 4, Windows 2000, XP, Vista. The implementations differ and specific documentation is hardly available.

Thread states overview (simplified) „Ready“ Ready Deferred Ready Standby Waiting Running

Thread states (1) Per processor states: Ready Standby Running Global states: Deferred Ready Waiting

Thread states (2) „Classic States“: „Ready“: able to run Running: current thread running on a processor Waiting: blocked, waiting for an event Ready is split into: DeferredReady: queued on any Processor Standby: will be imminently start running Ready: queued on target processor by priority see [1]

Scheduling for another CPU High priority thread T1 on CPU A exits critical section Low priority thread T2 waits for CS CPU A can schedule T2 to another CPU B A sets T2 as standby on CPU B A sends interprocessor interrupt to B B dispatches T2 B does not need to decide again which thread to run next => Scalability

Locking local Ready queue will be used mainly, the global Deferrred Ready only occasionally propability of one processor blocking the others on a SMP system when accessing global data structures is reduced

Literature [1] David B. Probert, Ph.D., Windows Kernel Internals: Thread Scheduling http://www.i.u-tokyo.ac.jp/edu/training/ss/lecture/new-documents/Lectures/03-ThreadScheduling/ [2] John Regehr, Using Hierarchical Scheduling to Support Soft Real-Time Applications on General-Purpose Operating Systems, Ch. 9 http://www.cs.utah.edu/~regehr/papers/diss/