0% 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.
Copyright
© © All Rights Reserved
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% 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.
Copyright
© © All Rights Reserved
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

You might also like