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

Host cache agents, Your task is to program software agents able to send and...

Your task is to program software agents able to send and receive messages according to the two Gnutella protocols above. Your solution should have two types of agents:   A

What is non-volatile bios, Nonvolatile BIOS memory refers to a small memory...

Nonvolatile BIOS memory refers to a small memory on PC motherboards that is used to kept BIOS settings. It was traditionally known as CMOS RAM because it used a volatile, low-power

Hazard, how to calculate delay for hazard?

how to calculate delay for hazard?

How do you find out the flaw, How do you find out the flaw, which of the ad...

How do you find out the flaw, which of the address getting written wrongly. Fill the full memory once with either random data or sequential data then after filling totally rea

What is assembly language, What is assembly language? Assembly languag...

What is assembly language? Assembly language : It is a family of low-level language for microprocessors, programming computers, microcontrollers etc. All are implement a symbo

Mplement a second-order low-pass filter using the finite dif, you will impl...

you will implement a second-order low-pass filter using the finite difference method. The finite difference method is a useful mathematical method that is used to numerically solve

Mention the various IC logic families, Mention the various IC logic familie...

Mention the various IC logic families. Ans. Different  IC Logic Families: Digital IC's are fabricated through employing either the Unipolar or the Bipolar Technologies and are te

Explain implementation techniques, Explain Implementation techniques Im...

Explain Implementation techniques Implementation techniques(e.g. remote invocation, HTTP). An event-based cooperation can be executed using message passing or it can  be based

Different possible handover scenarios in a gsm network, Problem: (a) C...

Problem: (a) Cellular systems are based on two types of multiplexing, what are those two types of multiplexing? Describe how they are used to improve channel allocation in cel

Programming for arithmetic and string operations, Advanced aspects of assem...

Advanced aspects of assembly language programming in this section. A number of these aspects give assembly an edge over high level language programming as far as efficiency is conc

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