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

Slides:



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

Threads Irfan Khan Myo Thein What Are Threads ? a light, fine, string like length of material made up of two or more fibers or strands of spun cotton,
Chapter 4: Threads. Overview Multithreading Models Threading Issues Pthreads Windows XP Threads.
CS533 Concepts of Operating Systems Class 3 Monitors.
CS533 Concepts of Operating Systems Class 20 Summary.
SCHEDULER ACTIVATIONS Effective Kernel Support for the User-level Management of Parallelism Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska, Henry.
CS533 Concepts of Operating Systems Class 8 Shared Memory Implementations of Remote Procedure Call.
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 4 Remote Procedure Call.
Threads vs. Processes April 7, 2000 Instructor: Gary Kimura Slides courtesy of Hank Levy.
Threads 1 CS502 Spring 2006 Threads CS-502 Spring 2006.
Threads CSCI 444/544 Operating Systems Fall 2008.
CS533 Concepts of Operating Systems Class 2 Thread vs Event-Based Programming.
CS533 Concepts of Operating Systems Class 7 Integrated Task and Stack Management.
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 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.
Inter-Process Communication  most OSs provide several abstractions for inter- process communication: message passing, shared memory, etc.  communication.
Threads. Processes and Threads  Two characteristics of “processes” as considered so far: Unit of resource allocation Unit of dispatch  Characteristics.
Process Concept An operating system executes a variety of programs
CPS110: Implementing threads/locks on a uni-processor Landon Cox.
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.
Threads math 442 es Jim Fix. Reality vs. Abstraction A computer’s OS manages a lot: multiple users many devices; hardware interrupts multiple application.
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.
Chapter 51 Threads Chapter 5. 2 Process Characteristics  Concept of Process has two facets.  A Process is: A Unit of resource ownership:  a virtual.
Processes Part I Processes & Threads* *Referred to slides by Dr. Sanjeev Setia at George Mason University Chapter 3.
Chapter 8 Windows Outline Programming Windows 2000 System structure Processes and threads in Windows 2000 Memory management The Windows 2000 file.
9/13/20151 Threads ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original slides.
CS 153 Design of Operating Systems Spring 2015
Operating Systems Lecture 09: Threads (Chapter 4)
Processes and Threads.
1 Process States (1) Possible process states –running –blocked –ready Transitions between states shown.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 4: Threads.
Chapter 4: Threads. 4.2CSCI 380 Operating Systems Chapter 4: Threads Overview Multithreading Models Threading Issues Pthreads Windows XP Threads Linux.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 5: Threads Overview Multithreading Models Threading Issues Pthreads Solaris.
Multithreading Allows application to split itself into multiple “threads” of execution (“threads of execution”). OS support for creating threads, terminating.
Multiple Processor Systems. Multiprocessor Systems Continuous need for faster and powerful computers –shared memory model ( access nsec) –message passing.
Threads and Concurrency. A First Look at Some Key Concepts kernel The software component that controls the hardware directly, and implements the core.
Multithreading in Java Project of COCS 513 By Wei Li December, 2000.
Multiple Processor Systems. Multiprocessor Systems Continuous need for faster computers –shared memory model ( access nsec) –message passing multiprocessor.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
CS333 Intro to Operating Systems Jonathan Walpole.
ITFN 3601 Introduction to Operating Systems Lecture 3 Processes, Threads & Scheduling Intro.
Windows 2000 Michael Blinn Ben Hejl Jane McHugh Matthew VanMater.
CSE 451: Operating Systems Winter 2015 Module 5 1 / 2 User-Level Threads & Scheduler Activations Mark Zbikowski 476 Allen Center.
Operating Systems CSE 411 CPU Management Sept Lecture 10 Instructor: Bhuvan Urgaonkar.
Operating Systems: Internals and Design Principles
1 OS Review Processes and Threads Chi Zhang
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.
CS533 Concepts of Operating Systems Jonathan Walpole.
Operating System Concepts
1 Threads, SMP, and Microkernels Chapter 4. 2 Process Resource ownership - process includes a virtual address space to hold the process image Scheduling/execution-
Lecturer 3: Processes multithreaded Operating System Concepts Process Concept Process Scheduling Operation on Processes Cooperating Processes Interprocess.
Processes and Threads Processes and their scheduling
CS490 Windows Internals Quiz 2 09/27/2013.
Operating Systems Lecture 1.
CS703 - Advanced Operating Systems
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 5 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  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 How would you support cooperative task management?

CS533 - Concepts of Operating Systems 4 Questions  Is synchronization needed for cooperative user-level scheduling on uni-processors? 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 5 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 Can it deal with preemptions?  Do user-level thread libraries do “stack ripping”?

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?