Differences b/w user level and kernel supported threads, Computer Engineering

Assignment Help:

What are the differences between user level threads and kernel supported threads?

A thread, sometimes termed a lightweight process (LWP), is a fundamental unit of CPU utilization; this comprises a thread ID, a register set, a program counter and a stack.

A thread shares along with other threads belonging to similar process its data section and code section and other operating-system resources, as signals and open files.

If the process has many threads of control, this can do more than one task at a time.

User Level Threads Vs Kernel Supported Threads

i. User threads are supported above the kernel and are implemented through a thread library at the user level.

Here, kernel threads are supported directly through the operating system.

ii. For user threads, the thread library gives support for thread creation, scheduling and management within user space with no support from the kernel as the kernel is unaware of user-level threads. In case of kernel threads, the kernel does thread creation, scheduling and management inside kernel space.

iii. As there is no require of kernel intervention, user-level threads are usually fast to create and manage it. As thread management is made by the operating system, kernel threads are usually slower to create and manage which is a user thread.

iv. Any user-level thread performing blocking system call, if the kernel is single-threaded, will cause the whole process to block, even if other threads are available to run inside the application.

Though, as the kernel is managing the kernel threads, whether a thread performs a blocking system call, the kernel can schedule the other thread in the application for execution.

v. User-thread libraries contain POSIX P threads, Mach C-threads and Solaris 2 UI-threads.

Several of the cotemporary operating systems which support kernel threads are Windows NT, Windows 2000, Solaris 2, BeOS and Tru64 UNIX (formerly Digital UNIX).


Related Discussions:- Differences b/w user level and kernel supported threads

How to call a wml script from a wml page, WML & WML Script 1. How to ca...

WML & WML Script 1. How to call a WML Script from a WML Page? 2. Write a brief note on WML Script Operators and Expressions. 3. Write brief notes on WML Script Statements

Why io devices cannot be connected to the system bus, Why IO devices cannot...

Why IO devices cannot be directly be connected to the system bus? The IO devices cannot be directly linked to the system bus because i.  The data transfer rate of IO device

What are ramps, Ramps A network planning method that makes the most wel...

Ramps A network planning method that makes the most well-organized use of manpower, materials and cash resources between several projects going on concurrently.

Labels in the sub trees, A sorting method which uses the binary tree concep...

A sorting method which uses the binary tree concept such that label of any node is larger than all  the labels in the sub trees, is called A Sorting method which uses the binar

Design a memory buffer of limited size, Extend task 1 so that it now suppor...

Extend task 1 so that it now supports a memory buffer of limited size. Provide the same functionality as task 1 except now make the server work with a limited buffer size. Like

Propositional model, Propositional model: Hence a propositional model ...

Propositional model: Hence a propositional model was simply an assignments of truth values to propositions. In distinguish, a first-order model is a pair (Δ, Θ) where

Which two properties are on every validation control, Which two properties ...

Which two properties are on every validation control?  Two properties are:- a) Control to validate b) Error Message.

Receive a message, Receive a message. tid is integer task identifier of tra...

Receive a message. tid is integer task identifier of transmitting process supplied by user and msgtag is message tag supplied by user( must be non negative integer). The process re

3D rotation, Magnify a triangle with vertices A = (0,0), B = (3,3) and C = ...

Magnify a triangle with vertices A = (0,0), B = (3,3) and C = (6,4) to twice its size in such a way that A remains in its original position.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd