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

Move a layout cell, If you need to line up the cells next to each other you...

If you need to line up the cells next to each other you can resize and move layout cells as you need. You can change size of a layout cell by using one of its resize handles. Yo

What is the purpose of guard bits, What is the purpose of guard bits used i...

What is the purpose of guard bits used in floating point operations? The guard bits are the extra bits which are used to retain the in-between steps to enhance the accuracy in

Difference between the std and class module in vb, Std Global within the p...

Std Global within the project.  Class Global throughout the all project only thing is we require to set the type lib. Class Modules can be Instantiated.

Write a menu driven program to find 10''s complement, Q. Write a menu dri...

Q. Write a menu driven program to find 9's and 10's complement of a decimal number using file. Perform necessary validation with proper message that entered numbers must be de

What is pli, What is PLI Programming  Language  Interface  (PLI)  of  V...

What is PLI Programming  Language  Interface  (PLI)  of  Verilog  HDL  is  a  mechanism  to  interface  Verilog programs  with  programs  written  in  C  language.  It also pro

How semaphores implement mutual exclusion, How semaphores implement mutual ...

How semaphores implement mutual exclusion? Mutual-exclusion implementation along with semaphores: Assume that there are n-processes and they share a semaphore, mutex (stan

Determine the quivalence partitioning, Determine the quivalence Partitionin...

Determine the quivalence Partitioning? The division of domain data into dissimilar equivalence data classes is performed using Equivalence Partitioning. It is executed for redu

Why do you create parameters, Parameters are like script variables. They ar...

Parameters are like script variables. They are used to vary input to the server and to imitate real users. Dissimilar sets of data are sent to the server every time the script is r

Gui status in a program from the object browser, Can we create a gui status...

Can we create a gui status in a program from the object browser? Yes.  You can make a GUI STATUS in a program using SET PF-STATUS.

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