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

Divide two binary numbers, Divide (101110) 2   by (101) 2 Ans. Qu...

Divide (101110) 2   by (101) 2 Ans. Quotient is = -1001 Remainder is = -001

Break keys, Like a normal read, your input should break on the new line cha...

Like a normal read, your input should break on the new line character "\n"   and also on the up and down arrow keys. You will process the input made by the user when he/she enters

What is fork, What is Fork Clk gets its value after 1 time unit, rese...

What is Fork Clk gets its value after 1 time unit, reset after 10 time units, enable after 5 time units, data after 3 time units. All the statements are executed in parallel.

Illustrated three stages of data mining process, Illustrated three stages o...

Illustrated three stages of data mining process? Stage 1: Exploration: This stage generally starts along with data preparation that may involve cleaning data, selecting subse

Interface constructors, Describe a interface 'Human' with methods as walk' ...

Describe a interface 'Human' with methods as walk' and 'speak'. Describe a class 'User' implementing 'Human'. Describe a work() method in User class.Add a class 'Person' also execu

Accept commands from the user, Your shell must accept commands from the use...

Your shell must accept commands from the user. The first step to implement this will be reading a line of input. This section will focus on what to do with the line of input after

Explain isdn addressing with a example, Explain ISDN Addressing with a exam...

Explain ISDN Addressing with a example. A sub address, though a part of the ISDN address, is not seems as an integral part of the numbering scheme. Sub-address is carried in a

What is generalization, What is generalization? Generalization is a rel...

What is generalization? Generalization is a relationship among a class (super class) and one or more variations of the class (sub classes).It arrange classes by similarities an

Explain basic time division and time switching method, What is time divisio...

What is time division switching? With the help of block diagram explain basic time division and time switching method. Time Division Switching: A switching component can be s

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