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

Coca cola gross profit margin - Rfp cloud computing - How to calculate litres of paint per square metre - Different kinds of splices - First ionisation energy definition - Alazar meaning in bible - Sick flexi soft designer - Is zija international a pyramid scheme - From forth the fatal loins of these two foes - Cause and effect - 3240 kj to calories - Dsdm agile practitioner exam - Soc 110 week 5 team proposal - Saigon institute of technology - Density of diamond and graphite - Giles corey more weight quote - Employment Challenge - Use of Recycled and Waste Materials in Pavement - Cambridge english assessment scale - For don m banned line by line analysis - Financial accounting craig deegan - Name the four most common gases in the atmosphere - Internalized moral perspective definition - Identify a true statement about alliances and joint ventures - Maths homework - Discussion: - Kinetic energy bbc bitesize - Operational Excellence - Paper - Data table 1 chromatogram data - Spanish commands with pronouns worksheet - Course outline template word - All my sons author - Marketing real people real choices pdf - Emerson climate technologies control board - Difference between assimilation and accommodation piaget - Signature Assignment: Smart Parking Space App Presentation - Lutron maestro smart dimmer - The possessive investment in whiteness sparknotes - Ancient china research topics - Mres developmental neuroscience and psychopathology - Short essay - Elections and campaigns in Texas assignment - Nursing Leadership in a Diverse Society - Pharm tech assignment 2 - Istikhara transliteration and translation - How to read an electric motor nameplate - What is preliminary investigation in software engineering - Data Management - Engineering project management uts - Camshaft position sensor a circuit bank 1 - Airport service agent emirates - Irs po box 1214 charlotte nc - Difference between prose and drama - Nursing care plan book online free - Erica branch ridley cause of death - Griffith university enrolment dates 2016 - Np conveyancing byron bay - My nissan maxima won t start - Main idea of me talk pretty one day - Igcse chemistry atoms elements and compounds questions - Who's picking up the puffed rice? - Managing human resources in an international business chapter 13 - Toyota recall crisis management case study - Ronald duska whistleblowing and employee loyalty summary - Lead ii nitrate reacts with sodium iodide balanced equation - Visa global brand protection program guide for acquirers - Competitive advantage case study coca cola - Similarities between job order and process costing - Where to buy docx soda - Budgeting and budgetary control in manufacturing companies - Financial statement analysis - As direct competitors, ups and fedex would have ____. - Which form of salvation is emphasized in the new testament - Walmart employee job satisfaction - Time limit essay but no words limit - Cultural Perspectives - Lactase enzyme lab data sheet answers - Geography weather and climate quiz - Number patterns and recursion - Veronica perfoliata ground cover - Management essay - Security architecture - Healthcare finance basic tools for nonfinancial managers - Why do organizations still have information deficiency problems - Blue tile farm barn - Wolverine brass kitchen faucet 85021 - Maple leaf food crisis 2008 - Biblical meaning of the name yolanda - Essay fashion - B write the equation for ohm's law - How is gladwell's blog post organized - Mini paper on given topic - Bill mckenna the only lesson - Integrative Essay 1 - Ce cb cc amplifier comparison - Animal farm chapter 5 - Airbus case study answers - Create a Lesson Plan - Discussion - Boysen jensen experiment on phototropism