Loading...

Messages

Proposals

Stuck in your homework and missing deadline? Get urgent help in $10/Page with 24 hours deadline

Get Urgent Writing Help In Your Essays, Assignments, Homeworks, Dissertation, Thesis Or Coursework & Achieve A+ Grades.

Privacy Guaranteed - 100% Plagiarism Free Writing - Free Turnitin Report - Professional And Experienced Writers - 24/7 Online Support

Multithreading models in operating system pdf

29/11/2021 Client: muhammad11 Deadline: 2 Day

CMET 331 Operating Systems

4. Threads

Outline • Overview • Multithreading Models • Threading Issues • Windows XP Threads • Linux Threads

Thread • A thread, sometimes called a lightweight

process (LWP), is a basic unit of CPU utilization; it comprises a thread ID, a program counter, a register set, and a stack. —There may be multiple threads in a single process.

Those threads share: • Code • Data • Other OS resources

Single and Multithreaded Processes

Motivation • A traditional (or heavyweight) process has a

single thread of control. • If the process has multiple threads of control, it

can do more than one task at a time. • Examples

—A web browser might have one thread display images or text while another thread retrieves data from the network

—A word processor may have a thread for displaying graphics, another thread for reading keystrokes from the user, and a third thread for performing spelling and grammar checking in the background.

Why Use Threads Other Than Processes? • In fact, this process-creation method was in

common use before threads became popular. • Process creation is very heavyweight • If the new process will perform the same tasks

as the existing process, why incur all that overhead?

• It is generally more efficient for one process that contains multiple threads to serve the same purpose.

Benefits • Takes less time to create a new thread than a

process • Less time to terminate a thread than a process • Less time to switch between two threads within

the same process • Since threads within the same process share

memory and files, they can communicate with each other without invoking the kernel

Some Features • Suspending a process involves suspending all

threads of the process since all threads share the same address space

• Termination of a process, terminates all threads within the process

User Threads • Thread management done by user-level threads

library

• Three primary thread libraries: — POSIX (Portable Operating System Interface)

Pthreads — Win32 threads — Java threads

Kernel Threads • Supported and managed directly by the

operating system

• Examples —Windows XP/2000 —Solaris —Linux —Tru64 UNIX —Mac OS X

Multithreading Models • Many-to-One

• One-to-One

• Many-to-Many

Many-to-One • Many user-level threads mapped to single kernel

thread —Thread management is done by the thread library in

user space, so it is efficient —The entire process will block if a thread makes a

blocking system call —Only one thread can access the kernel at a time,

multiple threads are unable to run in parallel on multiprocessors

• Examples: —Solaris Green Threads —GNU Portable Threads

Many-to-One Model

One-to-One • Each user-level thread maps to a kernel thread

— It provides more concurrency than the many-to-one model by allowing another thread to run when a thread makes a blocking system call

— Multiple threads are able to run in parallel on multiprocessors — The overhead of creating kernel threads can burden the

performance of an application, most implementations of this model restrict the number of threads supported by the system

• Examples — Windows NT/XP/2000 — Linux — Solaris 9 and later

One-to-one Model

Many-to-Many Model • Allows many user level threads to be mapped to

many kernel threads • Allows the operating system to create a

sufficient number of kernel threads —Developers can create as many user threads as

necessary, and the corresponding kernel threads can run in parallel on a multiprocessor

—When a thread performs a blocking system call, the kernel can schedule another thread for execution

• Solaris prior to version 9 • Windows NT/2000 with theThreadFiber package

Many-to-Many Model

Threading Issues • Semantics of fork() and exec() system calls • Thread cancellation • Signal handling • Thread pools • Thread specific data • Scheduler activations

Semantics of fork() and exec() • What happens when a multi-threaded process

calls fork()? —All threads could be duplicated.

OR

—Just the calling thread.

• How exec() works? —If a thread invokes the exec () system call, the

program specified in the parameter to exec () will replace the entire process-including all threads.

Thread Cancellation • Terminating a thread before it has finished • A thread that is to be canceled is often referred

to as the target thread • Two general approaches:

—Asynchronous cancellation terminates the target thread immediately

—Deferred cancellation allows the target thread to periodically check if it should be cancelled

Signal Handling • Signals are used in UNIX systems to notify a

process that a particular event has occurred • A signal handler is used to process signals

1. Signal is generated by particular event 2. A generated signal is delivered to a process 3. Once delivered, the signal must be handled

• Options for delivering a signal: 1. Deliver the signal to the thread to which the signal

applies 2. Deliver the signal to every thread in the process 3. Deliver the signal to certain threads in the process 4. Assign a specific thread to receive all signals for the

process

Thread Pools • Create a number of threads in a pool where

they await work • Advantages:

—Usually slightly faster to service a request with an existing thread than create a new thread

—Allows the number of threads in the application(s) to be bound to the size of the pool

Thread Specific Data • Threads belonging to a process share the data

of the process • However, in some circumstances, each thread

might need its own copy of certain data • Thread-specific data allows each thread to

have its own copy of data • Useful when you do not have control over the

thread creation process (i.e., when using a thread pool)

Scheduler Activations • One scheme for communication between the user-

thread library and the kernel is known as scheduler activation

• How it works? — The kernel provides an application with a set of virtual

processors (LWPs), and the application can schedule user threads onto an available virtual processor

— The kernel must inform an application about certain events — This procedure is known as an upcall

• Scheduler activations provide upcalls - a communication mechanism from the kernel to the thread library

• This communication allows an application to maintain the correct number kernel threads

Windows XP Threads • Implements the one-to-one mapping • Each thread contains

—A thread id —Register set —Separate user and kernel stacks —Private data storage area

• The register set, stacks, and private storage area are known as the context of the threads

• The primary data structures of a thread include: —ETHREAD (executive thread block) —KTHREAD (kernel thread block) —TEB (thread environment block)

Linux Threads • Linux refers to them as tasks rather than

threads • Thread creation is done through clone()

system call • clone() allows a child task to share the address

space of the parent task (process)

Homework is Completed By:

Writer Writer Name Amount Client Comments & Rating
Instant Homework Helper

ONLINE

Instant Homework Helper

$36

She helped me in last minute in a very reasonable price. She is a lifesaver, I got A+ grade in my homework, I will surely hire her again for my next assignments, Thumbs Up!

Order & Get This Solution Within 3 Hours in $25/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 3 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 6 Hours in $20/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 6 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 12 Hours in $15/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 12 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

6 writers have sent their proposals to do this homework:

Top Rated Expert
High Quality Assignments
Engineering Solutions
Supreme Essay Writer
Coursework Helper
Innovative Writer
Writer Writer Name Offer Chat
Top Rated Expert

ONLINE

Top Rated Expert

I have assisted scholars, business persons, startups, entrepreneurs, marketers, managers etc in their, pitches, presentations, market research, business plans etc.

$19 Chat With Writer
High Quality Assignments

ONLINE

High Quality Assignments

I have worked on wide variety of research papers including; Analytical research paper, Argumentative research paper, Interpretative research, experimental research etc.

$38 Chat With Writer
Engineering Solutions

ONLINE

Engineering Solutions

I can assist you in plagiarism free writing as I have already done several related projects of writing. I have a master qualification with 5 years’ experience in; Essay Writing, Case Study Writing, Report Writing.

$36 Chat With Writer
Supreme Essay Writer

ONLINE

Supreme Essay Writer

Being a Ph.D. in the Business field, I have been doing academic writing for the past 7 years and have a good command over writing research papers, essay, dissertations and all kinds of academic writing and proofreading.

$28 Chat With Writer
Coursework Helper

ONLINE

Coursework Helper

I reckon that I can perfectly carry this project for you! I am a research writer and have been writing academic papers, business reports, plans, literature review, reports and others for the past 1 decade.

$50 Chat With Writer
Innovative Writer

ONLINE

Innovative Writer

I can assist you in plagiarism free writing as I have already done several related projects of writing. I have a master qualification with 5 years’ experience in; Essay Writing, Case Study Writing, Report Writing.

$49 Chat With Writer

Let our expert academic writers to help you in achieving a+ grades in your homework, assignment, quiz or exam.

Similar Homework Questions

Principal beliefs of judaism - Hazpak risk assessment tool - Midshires College of Midwifery and Nursing - Recording transactions in a financial transaction worksheet - Even though parts of the title sound the same as units that you have previously completed, there is significant difference i - Grand harvest square raid blade and soul - Http www whitman edu content virtualpig - Schroder singapore trust price - Science current event worksheet answers - 3 methyl 2 butanone msds - International hrm case study brunt hotels answers - Types of Qualitative Research - Global perspectives pre u - Marble launcher lab physics answers - Diamond foods fraud case - E1 - Pedagogy of the oppressed questions - English - The norton introduction to literature online book - YouTube video - Heraeus quartz uk ltd - Consumer behavior case study answers - Nothing's changed tatamkhulu afrika - Discussion: Aviation Simulators and their Different Applications - Gas meter inside house - Work out your salvation with fear and trembling - Ubi universal basic income is an unbelievably bad idea - Set-admpwdcomputerselfpermission object not found - Calming and alerting sensory activities - LEG 500 Discussion week 3 - Cpcccm1015a carry out measureme - Bruce w tuckman model of group development - A total asset turnover ratio of 2.8 indicates that - I need 850 words Essay on Social Media. - Virtual fly lab drosophila answers - Specific gas constant steam - Any work which has been copied or shared between students will result in a Fail grade for all students concerned. - Personal Ethical Considerations Paper - Bsbfim601 assessment answers - Why did the egyptian sculptors idealize rulers in their sculptures - Baker sheet metal townsville - The graph shows a distribution of data - Sas tactical mt gravatt - Walnut lane memorial bridge - The pirate bay search engine - Communication - Inlanguage boutique brunswick east - The financial statements for castile products, inc., are given below: - Conflict Scenario - Route of north south interconnector - Mississippi trial 1955 summary - Designing Mixed Methods Research 8110 - Transition metal colours list - Which statement about bacteria is true - English as a second language coursebook fifth edition - Multifactor productivity questions and answers - Dr. Coppolino's Deadly House Calls - Coarse pearlite vs fine pearlite - This i believe statement ideas - Literal meaning of the poem the road not taken - Sustainability and Natural resources - Labour department domestic helper guide - Ln-25 wire feeder manual - Under armour challenging nike in sports apparel case analysis - Discussion Board 5.1: Public Health Initiative: Town Hall Meeting - Molecular geometry test questions - Then morris gleitzman quotes - Cessna caravan ex price - BUSINESS LAW, ETHICS, AND SOCIAL RES - The harlem dancer analysis - Superposition theorm and norton - Midland energy case study - Staff performance evaluation checklist - Informative speech outlines for college students - Death Penalty in America 2 - Solarwinds lem system requirements - English writing homework - Krell industries has a share price of - Book Review on Souls of Black Folk - Brecon beacons visitor centre - Amazons vision statement - Prewriting outlines - Why It's Worth Listening to People We Disagree With - Crime Analysis Report - Glenfield hospital breast clinic - 100 words positive response with three references due tonight at 7Pm - If poem by rudyard kipling meaning - Primary secondary tertiary sectors quiz - Spep blood test tube color - Payoneer payment pending for approval - Table 3 dichotomous key results - Example of descriptive theory - Egoism a deux - Community DQ5 - Seven principles of economics - Pablo management has five part time employees - In what pursuit is solmization useful or important - Algorithm - 11.2.4 configure a ppp wan link - Geriatric Depression - 2 pages