• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Process Control Block & Threads and Their Management

Process Control Block & Threads and Their Management



A presentation by me on the Process Control Block & Threads and Their Management for my CS 5th Sem presentation.

A presentation by me on the Process Control Block & Threads and Their Management for my CS 5th Sem presentation.



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds


Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.


11 of 1 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • In this we will see how the processes are executed by the PCB. Let us first discuss how a normal end user sees the processes being executed.
  • The processes are done in order of priority so there is no specific order.
  • Hybrid level thread is out of syllabus so we will not discuss it.

Process Control Block & Threads and Their Management Process Control Block & Threads and Their Management Presentation Transcript

  • Process Control Block Threads & Their Management By Ujjwal Kumar 1149210055 CS – V – 2013
  • Process Control Block or PCB Presentation by Ujjwal Kumar 2
  • Introduction • Each & every process in the Operating System is represented by a Process Control Block. • Process Control Block ~ Task Control Block or Task Struct. 3 Presentation by Ujjwal Kumar
  • What exactly is PCB? • It is a Data Structure in the operating system kernel containing the information needed to manage a particular process. • The PCB is "the manifestation(Visible) of a process in an operating system” 4 Presentation by Ujjwal Kumar
  • Presentation by Ujjwal Kumar 5 Source: http://lmgtfy.com/?q=define%3Amanifestation/
  • Presentation by Ujjwal Kumar 6 Fig: Process Control Block (PCB)
  • What exactly does this diagram mean? Presentation by Ujjwal Kumar 7
  • • Pointers: It contains the address of another process which is present in the ready queue. • Process State: It contains information about the state of the process i.e., • New • Ready • Running • Waiting • Halted Presentation by Ujjwal Kumar 8
  • • Program Counter: The address of the next instruction to be executed. • CPU Registers: The registers vary in no. and type depending on the type of computer architecture, they include: • Accumulators, index registers, stack pointers and general purpose registers Presentation by Ujjwal Kumar 9
  • • CPU scheduling information: This information includes ▫ Process priority ▫ Pointer to scheduling queues ▫ Other scheduling parameters. • Memory management information: This information includes ▫ Value of base and limit registers ▫ Page tables ▫ Segment tables. Presentation by Ujjwal Kumar 10
  • • Accounting information: This information includes • Amount of CPU and real time used • Time limits • Account numbers • Job or Process numbers etc. • I/O status information: This information includes • List of I/O devices allocated to the process • List of open files etc . Presentation by Ujjwal Kumar 11
  • Now we know what exactly the Process Control Block is. But do we know where the location of PCB is? Presentation by Ujjwal Kumar 12
  • • Contains critical information of processes and hence it must be placed where it is protected from normal user access. • In many Operating systems, it is placed in the beginning of the kernel stack of the process since that is a convenient protected location. Presentation by Ujjwal Kumar 13
  • Interleaving Execution of Processes Presentation by Ujjwal Kumar 14
  • Interleaving Execution of Processes • Perception of normal end user: Presentation by Ujjwal Kumar 15 Process A Process B Process C Process D Time
  • Interleaving Execution of Processes • In reality, this is how the processes are executed: Presentation by Ujjwal Kumar 16 Process 1 Process 2 Process 1 Process 2
  • Threads & their Management Presentation by Ujjwal Kumar 17
  • Threads • Definition: In simple words we can say that Threads are light weight processes. • It is a sequence and not a program because it cannot run on its own so it returns within the program. • A process is divided into smaller tasks and these tasks are known as threads. • A basic unit of CPU Utilization. Presentation by Ujjwal Kumar 18
  • Advantages of Threads • If a process has multiple threads then it will be able to perform more than one single task at the same time. • Better Throughput. • Makes the program Responsive. Presentation by Ujjwal Kumar 19
  • Types of Threading •Single Threading •Multi Threading Presentation by Ujjwal Kumar 20
  • Multithreading • Sometimes several similar tasks have to be performed by the application in order to get the word done. • This is where the Multithreading comes in. Presentation by Ujjwal Kumar 21
  • Real life examples of Multithreading - I • Web browsers: They have different threads to do different work. ▫ One thread will retrieve data from the remote servers. ▫ Another one will render the data received into visual web pages. • Example: Google Chrome, Opera, Firefox etc. Presentation by Ujjwal Kumar 22
  • Real life examples of Multithreading - II • Word Processors: Different threads in word processor will do different jobs. ▫ One will render the text based materials. ▫ Another one will render graphic based materials like the images etc. • Example: Microsoft Office Presentation by Ujjwal Kumar 23
  • Benefits of Multithreading • Responsiveness: The process responds much better while using multithreading as compared to single threaded processes. • Speed Up: The process is speeded up by using multithreading hence giving a much better experience to the end user. • Efficient Communication: The threads of a specific process can communicate with each other efficiently because of the shared address space. Presentation by Ujjwal Kumar 24
  • • Utilization in multiprocessor systems: ▫ Multithreading can take advantages of a multiprocessor system. ▫ Multiple threads can be processed on multiple cores of the system. Presentation by Ujjwal Kumar 25
  • Implementation of Threads • Threads are implemented in a system in three different ways. ▫ Kernel Level Threads ▫ User Level Threads ▫ Hybrid Level Threads Presentation by Ujjwal Kumar 26
  • Kernel Level Threads • Implemented by the kernel itself. • Management of threads is also done by the kernel itself. Presentation by Ujjwal Kumar 27 Process Threads Process Table
  • User Level Thread Presentation by Ujjwal Kumar 28 Kernel Space Thread Table Thread Process User Space
  • User Level Thread • These type of threads are loaded in the user space and the kernel doesn’t have anything to do with this. • Threads are managed in user space so each process must have its own private thread table. • This table consists the information of: ▫ Program Counter ▫ Stack Pointer ▫ Register. Presentation by Ujjwal Kumar 29
  • Acknowledgements • Sir. Mukesh Kumar Singh • Google.com • Book: OS by Vijay Shukla Presentation by Ujjwal Kumar 30
  • Questions You can ask any questions you might have in your mind related to my presentation. Presentation by Ujjwal Kumar 31