This document discusses different types of threads, including user level threads, kernel level threads, and a combined approach. User level threads are managed entirely by applications, while kernel level threads are managed by the operating system kernel. A combined approach allows multiple threads within an application to run in parallel on multiple processors, without blocking on system calls.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
12 views7 pages
Platform Technology
This document discusses different types of threads, including user level threads, kernel level threads, and a combined approach. User level threads are managed entirely by applications, while kernel level threads are managed by the operating system kernel. A combined approach allows multiple threads within an application to run in parallel on multiple processors, without blocking on system calls.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7
TYPES OF
THREADS START USER LEVEL THREADS
A user thread is an entity
used by programmers to handle multiple flows of controls within a program.
All thread management is
done by the application ADVANTAGES OF USER LEVEL THREADS 1. THREAD SWITCHING DOES NOT REQUIRE KERNEL-MODE PRIVILEGES SINCE THE OVERALL THREAD DATA MANAGEMENT STRUCTURE IS WITHIN THE USER ADDRESS SPACE OF A SINGLE PROCESS. THUS, SAVES THE OVERHEAD OF TWO (2) MODE SWITCHES. 2. SCHEDULING CAN BE APPLICATION-SPECIFIC. THE SCHEDULING ALGORITHM CAN BE TAILORED FOR THE APPLICATION WITHOUT DISTURBING THE OPERATING SYSTEM SCHEDULER. 3. USER-LEVEL THREADS CAN RUN ON ANY OPERATING SYSTEM. THERE ARE NO CHANGES REQUIRED TO THE UNDERLYING KERNEL IN ORDER TO SUPPORT USERLEVEL THREADS. KERNEL- LEVEL THREADS
all thread management is
performed by the operating system's kernel. maintains the context information for the processINSTRUCTION as a whole and for the individual threads within the process. ADVANTAGES OF KERNEL LEVEL THREADS 1. ⦁ THE KERNEL CAN SIMULTANEOUSLY SCHEDULE MULTIPLE THREADS FROM THE SAME PROCESS ON MULTIPLE PROCESSORS. 2. ⦁ IF ONE THREAD IN A PROCESS IS BLOCKED, THE KERNEL CAN SCHEDULE ANOTHER THREAD FROM THE SAME PROCESS. 3. ⦁ THE KERNEL ROUTINES THEMSELVES CAN BE MULTITHREADED. COMBINED USER-LEVEL AND KERNEL-LEVEL APPROACH
multiple threads within the same
application can run in parallel on multiple processors, and a blocking system call does not block the entire process. If properly designed, the combined INSTRUCTION approach should also combine the advantages of the pure user-level threads and the kernel-level threads. The Solaris is a good example of an operating system that implements the combined approach. THANKS FOR LISTENING! END