CS533 Concepts of Operating Systems Class 7 Integrated Task and Stack Management.

Slides:



Advertisements
Similar presentations
CS 5204 – Operating Systems 1 Scheduler Activations.
Advertisements

CS533 Concepts of Operating Systems Class 5 Integrated Task and Stack Management.
Chapter 5 Processes and Threads Copyright © 2008.
CS533 Concepts of Operating Systems Class 3 Monitors.
CS533 Concepts of Operating Systems Class 6 The Duality of Threads and Events.
CS533 Concepts of Operating Systems Class 5 Event-Based Systems.
CS533 Concepts of Operating Systems Class 20 Summary.
CS533 Concepts of Operating Systems Class 3 Monitors.
Computer Science 162 Discussion Section Week 2. Agenda Recap “What is an OS?” and Why? Process vs. Thread “THE” System.
1 Concurrent and Distributed Systems Introduction 8 lectures on concurrency control in centralised systems - interaction of components in main memory -
CS533 Concepts of Operating Systems Class 11 System Structuring using Layers.
CS533 Concepts of Operating Systems Class 5 Event-Based Systems.
CS533 Concepts of Operating Systems Class 6 The Duality of Threads and Events.
CS533 Concepts of Operating Systems Class 4 Remote Procedure Call.
Threads 1 CS502 Spring 2006 Threads CS-502 Spring 2006.
CS533 Concepts of Operating Systems Class 5 Event-Based Systems.
Disco Running Commodity Operating Systems on Scalable Multiprocessors.
CS533 Concepts of Operating Systems Class 2 Thread vs Event-Based Programming.
Operating System Concepts with Java – 7 th Edition, Nov 15, 2006 Silberschatz, Galvin and Gagne ©2007 Chapter 4: Threads.
CS533 - Concepts of Operating Systems 1 CS533 Concepts of Operating Systems Class 8 Synchronization on Multiprocessors.
CS533 - Concepts of Operating Systems 1 Class Discussion.
CS533 Concepts of Operating Systems Class 3 Integrated Task and Stack Management.
CS533 Concepts of Operating Systems Class 9 User-Level Remote Procedure Call.
Process Concept An operating system executes a variety of programs
Threads CS 416: Operating Systems Design, Spring 2001 Department of Computer Science Rutgers University
G Robert Grimm New York University Scheduler Activations.
CS 3013 & CS 502 Summer 2006 Threads1 CS-3013 & CS-502 Summer 2006.
CS533 Concepts of Operating Systems Class 4 Remote Procedure Call.
CS533 Concepts of Operating Systems Class 14 Extensible Virtual Memory Management.
ThreadsThreads operating systems. ThreadsThreads A Thread, or thread of execution, is the sequence of instructions being executed. A process may have.
Scheduler Activations Jeff Chase. Threads in a Process Threads are useful at user-level – Parallelism, hide I/O latency, interactivity Option A (early.
Processes Part I Processes & Threads* *Referred to slides by Dr. Sanjeev Setia at George Mason University Chapter 3.
CSE 451: Operating Systems Autumn 2013 Module 6 Review of Processes, Kernel Threads, User-Level Threads Ed Lazowska 570 Allen.
Chapter 8 Windows Outline Programming Windows 2000 System structure Processes and threads in Windows 2000 Memory management The Windows 2000 file.
CS 153 Design of Operating Systems Spring 2015
1 Process States (1) Possible process states –running –blocked –ready Transitions between states shown.
Chapter 4: Threads. 4.2CSCI 380 Operating Systems Chapter 4: Threads Overview Multithreading Models Threading Issues Pthreads Windows XP Threads Linux.
Scheduler Activations: Effective Kernel Support for the User- Level Management of Parallelism. Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska,
Operating Systems Lecture 7 OS Potpourri Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard. Zhiqing Liu School of Software.
Operating Systems CSE 411 Multi-processor Operating Systems Multi-processor Operating Systems Dec Lecture 30 Instructor: Bhuvan Urgaonkar.
30 October Agenda for Today Introduction and purpose of the course Introduction and purpose of the course Organization of a computer system Organization.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
CSE 451: Operating Systems Winter 2015 Module 5 1 / 2 User-Level Threads & Scheduler Activations Mark Zbikowski 476 Allen Center.
Discussion Week 2 TA: Kyle Dewey. Overview Concurrency Process level Thread level MIPS - switch.s Project #1.
Multithreaded Programing. Outline Overview of threads Threads Multithreaded Models  Many-to-One  One-to-One  Many-to-Many Thread Libraries  Pthread.
Overview of Operating Systems Introduction to Operating Systems: Module 0.
Operating Systems CSE 411 CPU Management Sept Lecture 10 Instructor: Bhuvan Urgaonkar.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 4: Threads.
CS399 New Beginnings Jonathan Walpole. 2 Concurrent Programming & Synchronization Primitives.
CS533 Concepts of Operating Systems Jonathan Walpole.
CS533 Concepts of Operating Systems Jonathan Walpole.
What is an Operating System? Various systems and their pros and cons –E.g. multi-tasking vs. Batch OS definitions –Resource allocator –Control program.
1 Why Threads are a Bad Idea (for most purposes) based on a presentation by John Ousterhout Sun Microsystems Laboratories Threads!
Operating Systems Unit 2: – Process Context switch Interrupt Interprocess communication – Thread Thread models Operating Systems.
CS533 Concepts of Operating Systems Jonathan Walpole.
Operating System Concepts
Lecturer 3: Processes multithreaded Operating System Concepts Process Concept Process Scheduling Operation on Processes Cooperating Processes Interprocess.
S ALVATORE DI G IROLAMO (TA) Networks and Operating Systems: Exercise Session 1.
Threads & multithreading
CSE 451: Operating Systems Spring 2012 Module 6 Review of Processes, Kernel Threads, User-Level Threads Ed Lazowska 570 Allen.
CS533 Concepts of Operating Systems Class 10
Operating Systems Lecture 1.
CS533 Concepts of Operating Systems Class 7
February 5, 2004 Adrienne Noble
CS533 Concepts of Operating Systems Class 11
CS510 Operating System Foundations
CS533 Concepts of Operating Systems Class 14
CS703 – Advanced Operating Systems
CS 5204 Operating Systems Lecture 5
CS Introduction to Operating Systems
Presentation transcript:

CS533 Concepts of Operating Systems Class 7 Integrated Task and Stack Management

CS533 - Concepts of Operating Systems 2 Questions  What do these terms mean? o process, thread, kernel-level thread, user-level thread, fiber? o user-level thread stack, user stack, kernel stack? o Address space?

CS533 - Concepts of Operating Systems 3 Questions  How might a user-level thread library support synchronous I/O calls for its threads without losing control of the CPU due to blocking? o How does this approach behave during page-faults? o Does this matter? o Can it deal with preemptions?  Do user-level thread libraries do “stack ripping”?

CS533 - Concepts of Operating Systems 4 Questions  In what way are user-level threads “faster” than kernel-level threads? o Aren’t we just layering abstractions on abstractions?  Why can’t you do preemptive user-level thread scheduling without special kernel support? o Does this mean you can only do sequential task management? o Can you do cooperative task management? o How?

CS533 - Concepts of Operating Systems 5 Questions  Is synchronization needed for cooperative user-level scheduling on uniprocessors? o What precautions must you take? o Is synchronization needed on multiprocessors?  How are synchronization operations such as spin- locks and semaphores implemented, i.e., how do you spin and how do you block? o For user level threads? o For kernel level threads?

CS533 - Concepts of Operating Systems 6 Questions  What stack management model do most OS kernels export? o How are I/O and page faults events handled?  What differences are there between virtual CPUs (threads) and real CPUs (hardware)? o How are I/O and page fault events handled? o How is time managed?  What similarities do kernel-provided scheduler activations have to hardware-provided interrupts?

CS533 - Concepts of Operating Systems 7 Questions  What synchronization-related issues do you have to worry about when writing an interrupt handler? o What about a scheduler activation handler?  Why must the user-level thread library be reentrant? o How is its pattern of entry points and synchronization concerns similar to OS kernel code?

CS533 - Concepts of Operating Systems 8 Questions  How might a scheduler activation handler deadlock? o What would a prevention-based solution look like? o What problems would it have? o What would a recovery-based solution look like? o What problems would it have?  Why does the kernel delay delivery of a second page-fault SA until the first page-fault SA on the same address has completed?

CS533 - Concepts of Operating Systems 9 Questions  What happens immediately following I/O completion if the calling thread still has more kernel code to execute?  In what ways do scheduler activations mix manual and automatic stack management models? o Are they a translation point / boundary between the two models?

CS533 - Concepts of Operating Systems 10 Reminder  Class 8 presenters o Discuss your presentation plans with me ahead of time o Mail me the final version of your slides BEFORE the class