11/13/20151 Processes ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original.

Slides:



Advertisements
Similar presentations
Processes Management.
Advertisements

Abhinav Kamra Computer Science, Columbia University 4.1 Operating System Concepts Silberschatz, Galvin and Gagne  2002 Chapter 4: Processes Process Concept.
Adapted from slides ©2005 Silberschatz, Galvin, and Gagne Lecture 4: Processes.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Objectives Understand Process concept Process scheduling Creating.
Chapter 3: Processes.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Processes.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 7, 2006 Chapter 3: Processes Process Concept.
CMPT 300: Operating Systems I Ch 3: Processes Dr. Mohamed Hefeeda
Process Concept n An operating system executes a variety of programs: –Batch system – jobs –Time-shared systems – user programs or tasks n Textbook uses.
Chapter 3: Processes. Process Concept Process Scheduling Operations on Processes Cooperating Processes Interprocess Communication Communication in Client-Server.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Processes.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 4: Processes Process Concept Process Scheduling Operations on Processes Cooperating.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 7, 2006 Chapter 3: Processes Process Concept.
Operating System Concepts
1/26/2007CSCI 315 Operating Systems Design1 Processes Notice: The slides for this lecture have been largely based on those accompanying the textbook Operating.
CE Operating Systems Lecture 5 Processes. Overview of lecture In this lecture we will be looking at What is a process? Structure of a process Process.
Silberschatz and Galvin  Operating System Concepts Module 4: Processes Process Concept Process Scheduling Operation on Processes Cooperating.
Silberschatz, Galvin and Gagne  Applied Operating System Concepts Chapter 4: Processes Process Concept Process Scheduling Operation on Processes.
Process Management. Processes Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication.
Process Concept Process Scheduling Operations on Processes Cooperating Processes Interprocess Communication Communication in Client-Server Systems.
Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication in Client-Server.
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-1 Process Concepts Department of Computer Science and Software.
Chapter 3 Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Jan 19, 2005 Chapter 3: Processes Process Concept.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 4 Process Slide 1 Chapter 4 Process.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Processes.
AE4B33OSS Chapter 3: Processes. 3.2Silberschatz, Galvin and Gagne ©2005AE4B33OSS Chapter 3: Processes Process Concept Process Scheduling Operations on.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 7, 2006 Outline n Process Concept n Process.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 3: Processes Process Concept Process Scheduling Operations.
1 11/1/2015 Chapter 4: Processes l Process Concept l Process Scheduling l Operations on Processes l Cooperating Processes l Interprocess Communication.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Cooperating.
Processes. Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Cooperating Processes Interprocess Communication Communication.
Processes – Part I Processes – Part I. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Review on OSs Upon brief introduction of OSs,
CS212: OPERATING SYSTEM Lecture 2: Process 1. Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Process-Concept.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Processes.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 3 Operating Systems.
Chapter 3: Process-Concept. Process Concept Process Scheduling Operations on Processes Cooperating Processes Interprocess Communication Communication.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 4: Processes Process Concept Process Scheduling Operations on Processes Cooperating.
3.1 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 3: Processes Overview: Process Concept Process Scheduling Operations on Processes.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Jan 19, 2005 Chapter 3: Processes Process Concept.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Process-Concept.
Chapter 3: Processes-Concept. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 3: Processes-Concept Overview Process Scheduling.
Operating Systems (CS 340 D) Dr. Abeer Mahmoud Princess Nora University Faculty of Computer & Information Systems Computer science Department.
Processes. Process Concept Process Scheduling Operations on Processes Interprocess Communication Communication in Client-Server Systems.
Lecture 4: Processes & Threads. Lecture 4 / Page 2AE4B33OSS Silberschatz, Galvin and Gagne ©2005 Contents The concept of Process Process states and life-cycle.
 Process Concept  Process Scheduling  Operations on Processes  Cooperating Processes  Interprocess Communication  Communication in Client-Server.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 3: Processes Process Concept Process Scheduling Operations.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Processes.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 7, 2006 Chapter 3: Processes Process Concept.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 3: Processes Process Concept Process Scheduling Operations.
Chapter 3: Process-Concept. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Principles Chapter 3: Process-Concept Process Concept Process Scheduling.
Chapter 3: Processes. 3.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts - 7 th Edition, Feb 7, 2006 Chapter 3: Processes Process Concept.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 8 Processes II Read Ch.
1 Module 3: Processes Reading: Chapter Next Module: –Inter-process Communication –Process Scheduling –Reading: Chapter 4.5, 6.1 – 6.3.
Operating System Components) These components reflect the services made available by the O.S. Process Management Memory Management I/O Device Management.
Lecture 3 Process.
Chapter 3: Process Concept
Topic 3 (Textbook - Chapter 3) Processes
Process Management Presented By Aditya Gupta Assistant Professor
Processes Overview: Process Concept Process Scheduling
Chapter 3: Process Concept
Chapter 3: Processes Source & Copyright: Operating System Concepts, Silberschatz, Galvin and Gagne.
Chapter 3: Processes.
Chapter 3: Processes.
Chapter 4: Processes Process Concept Process Scheduling
Lecture 2: Processes Part 1
Process & its States Lecture 5.
Chapter 3: Processes.
Chapter 3: Processes.
Chapter 3: Processes Process Concept Process Scheduling
Presentation transcript:

11/13/20151 Processes ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original slides by Silberschatz, Galvin, and Gagne ©2007 from Operating System Concepts with Java, 7th Edition with some modifications –Also includes material by Dr. Susan Vrbsky from the Computer Science Department at the University of Alabama

11/13/20152 Process Concept The main components of a process include –Program counter (instruction pointer – IP register) Contains the address of the next instruction in the program Also has other data in the CPU’s registers –Data section Global data (static variables in Java) –Code section All the code in a program –Stack (runtime stack) Temporary data for method calls such as parameters, return address, local variables, and return value –Heap Dynamically allocated memory for a running process The data for Java objects is stored here

11/13/20153 Process Concept A process is a program in execution –Textbook uses the terms job and process almost interchangeably –The main components of a process include Program counter (instruction pointer – IP register) Data section Code section Stack Heap

11/13/ Process Management A process is a program in execution. –It is a unit of work within the system. A program is a passive entity, process is an active entity. Process needs resources to accomplish its task –CPU, memory, I/O, files Process termination requires reclaim of any reusable resources

11/13/20155 Process in Memory

11/13/20156 Process State As a process executes, it changes state –new: The process is being created –running: Instructions are being executed –waiting: The process is waiting for some event to occur –ready: The process is waiting to be assigned to a processor –terminated: The process has finished execution

11/13/20157 Diagram of Process State

11/13/20158 Process Control Block (PCB) Information associated with each process is stored in a process control block (PCB) Information includes 1.Process state New, ready, running, waiting, etc. 2.Program counter Register containing the address of the next instruction 3.CPU registers Different registers contain sums, index to array elements, runtime stack addresses, etc.

11/13/20159 Process Control Block (PCB) Information includes 4.CPU scheduling information Such information as process priority, addresses to scheduling queues (lines), etc. 5.Memory-management information Information about where the data is stored 6.Accounting information Time limits, account numbers, process numbers, etc. 7.I/O status information List of I/O devices, open files, etc.

11/13/ Process Control Block (PCB)

11/13/ Process to Process CPU Switch

11/13/ Process Scheduling Queues Processes migrate among the various queues –Job queue – set of all processes in the system –Ready queue – set of all processes residing in main memory, ready and waiting to execute –Device queues – set of processes waiting for an I/O device Note that queue is a fancy word for line –As in a line (queue) of people waiting to buy movie tickets

11/13/ Ready Queue And Various I/O Device Queues

11/13/ Schedulers Long-term scheduler (or job scheduler) –selects which processes should be brought into the ready queue Short-term scheduler (or CPU scheduler) –selects which process should be executed next and allocates the CPU to one of them Medium-term scheduler –remove process from memory to disk and later returns the process back to memory (swapping) helps to free up memory

11/13/ Schedulers Short-term scheduler is invoked very frequently –In milliseconds, because must be fast Long-term scheduler is invoked very infrequently –In seconds, or minutes, because may be slow –The long-term scheduler controls the degree of multiprogramming (number of processes in memory) Long-term scheduler may only need to be invoked when a process leaves the system

11/13/ Schedulers Processes can be described as either 1.I/O-bound process Spends more time doing I/O than computations, many short CPU bursts 2.CPU-bound process spends more time doing computations; few very long CPU bursts Long-term scheduler balances the system –By selecting a good process mix of both I/O- bound and CPU-bound processes

11/13/ Context Switch When CPU switches to another process, the system must save the state of the old process and load the saved state for the new process –Context-switch time is pure overhead the system does no useful work while switching –Time dependent on hardware support

11/13/ PID On the UNIX & Windows operating systems, each process is assigned a unique number –Called a process identifier (PID) UNIX command to list user processes –ps UNIX command to list all processes –ps -el –To view the processes on the Windows, press the three keys ctrl-alt-delete Then press Task Manager

11/13/ Process Creation Parent process create children processes, which, in turn create other processes, forming a tree of processes Three possibilities for Resource sharing –Parent and children share all resources –Children share subset of parent’s resources –Parent and child share no resources

11/13/ A tree of processes on a typical Solaris The Solaris Operating System is a Unix-based operating system by Sun Microsystems

11/13/ Process Creation (Cont.) Two possibilities for execution –Parent and children execute concurrently –Parent waits until children terminate Two possibilities for address space –Child duplicate of parent –Child has a program loaded into it

11/13/ Process Termination Process executes last statement and asks the operating system to delete it (exit) –Status value returned to parent process –Process resources are deallocated by OS Parent may terminate execution of children processes (abort) –Child has exceeded allocated resources –Task assigned to child is no longer required –If parent is exiting Some operating system do not allow child to continue if its parent terminates –All children terminated - cascading termination

11/13/ Interprocess Communication Mechanisms to allow processes to communicate 1.shared memory two processes read & write to the shared region 2.message passing two processes exchange data with messages

11/13/ Interprocess Communication Message PassingShared Memory

11/13/ Shared Memory Producer-Consumer Problem –Paradigm for cooperating processes, producer process produces information that is consumed by a consumer process –For example, a web server produces HTML files & images, which a web browser consumes unbounded-buffer places no practical limit on the size of the buffer bounded-buffer assumes that there is a fixed buffer size

11/13/ Message Passing Processes communicate with each other without resorting to shared variables Message passing facility provides two operations: –send(message) – message size can be fixed or variable –receive(message) If P and Q wish to communicate, they need to: –establish a communication link between them –exchange messages via send/receive For example, a chat program on the Internet communicates by exchanging messages