Data Acquisition System

Topics: Thread, Threads, POSIX Threads Pages: 8 (1042 words) Published: January 2, 2013
Chapter 4: Threads

Chapter 4: Threads
Overview Multithreading Models Threading Issues Pthreads Windows XP Threads Linux Threads Java Threads

Operating System Concepts – 7th edition, Jan 23, 2005

4.2

Silberschatz, Galvin and Gagne ©2005

Single and Multithreaded Processes

Operating System Concepts – 7th edition, Jan 23, 2005

4.3

Silberschatz, Galvin and Gagne ©2005

Benefits
Responsiveness Resource Sharing Economy Utilization of MP Architectures

Operating System Concepts – 7th edition, Jan 23, 2005

4.4

Silberschatz, Galvin and Gagne ©2005

User Threads
Thread management done by user-level threads library Three primary thread libraries: POSIX Pthreads Win32 threads Java threads

Operating System Concepts – 7th edition, Jan 23, 2005

4.5

Silberschatz, Galvin and Gagne ©2005

Kernel Threads
Supported by the Kernel Examples Windows XP/2000 Solaris Linux Tru64 UNIX Mac OS X

Operating System Concepts – 7th edition, Jan 23, 2005

4.6

Silberschatz, Galvin and Gagne ©2005

Multithreading Models
Many-to-One One-to-One Many-to-Many

Operating System Concepts – 7th edition, Jan 23, 2005

4.7

Silberschatz, Galvin and Gagne ©2005

Many-to-One
Many user-level threads mapped to single kernel thread Examples: Solaris Green Threads GNU Portable Threads

Operating System Concepts – 7th edition, Jan 23, 2005

4.8

Silberschatz, Galvin and Gagne ©2005

Many-to-One Model

Operating System Concepts – 7th edition, Jan 23, 2005

4.9

Silberschatz, Galvin and Gagne ©2005

One-to-One
Each user-level thread maps to kernel thread Examples Windows NT/XP/2000 Linux Solaris 9 and later

Operating System Concepts – 7th edition, Jan 23, 2005

4.10

Silberschatz, Galvin and Gagne ©2005

One-to-one Model

Operating System Concepts – 7th edition, Jan 23, 2005

4.11

Silberschatz, Galvin and Gagne ©2005

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 Solaris prior to version 9 Windows NT/2000 with the ThreadFiber package

Operating System Concepts – 7th edition, Jan 23, 2005

4.12

Silberschatz, Galvin and Gagne ©2005

Many-to-Many Model

Operating System Concepts – 7th edition, Jan 23, 2005

4.13

Silberschatz, Galvin and Gagne ©2005

Two-level Model
Similar to M:M, except that it allows a user thread to be bound to kernel thread Examples IRIX HP-UX Tru64 UNIX Solaris 8 and earlier

Operating System Concepts – 7th edition, Jan 23, 2005

4.14

Silberschatz, Galvin and Gagne ©2005

Two-level Model

Operating System Concepts – 7th edition, Jan 23, 2005

4.15

Silberschatz, Galvin and Gagne ©2005

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

Operating System Concepts – 7th edition, Jan 23, 2005

4.16

Silberschatz, Galvin and Gagne ©2005

Semantics of fork() and exec()
Does fork() duplicate only the calling thread or all threads?

Operating System Concepts – 7th edition, Jan 23, 2005

4.17

Silberschatz, Galvin and Gagne ©2005

Thread Cancellation
Terminating a thread before it has finished Two general approaches: Asynchronous cancellation terminates the target thread immediately Deferred cancellation allows the target thread to periodically check if it should be cancelled

Operating System Concepts – 7th edition, Jan 23, 2005

4.18

Silberschatz, Galvin and Gagne ©2005

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. 2. 3.

Signal is generated by particular event Signal is delivered to a process Signal is handled Deliver the signal to the thread to which the signal applies Deliver the signal to every thread in the process Deliver the signal to certain threads...
Continue Reading

Please join StudyMode to read the full document

You May Also Find These Documents Helpful

  • Essay about Sensor Data Acquisition and Data Processing Using Microcontroller
  • Essay on Databig Data and Future of Data-Driven Innovation
  • Essay on Battery Monitoring System
  • Design and Development of a Virtual Instrument for Bio-Signal Acquisition and Processing Using Labview Research Paper
  • Design and Development of sensor based fault detection system Essay
  • Essay about Student registration system
  • Project Payback Analysis and Organizational Feasibility of Enrollment System Essay
  • Feb 2013Lesson 12 Systems Acquisition Management Essay

Become a StudyMode Member

Sign Up - It's Free