Search Books
Visual Information Retrieva… A Concise Introduction to M…

Shared-Memory Synchronization (Synthesis Lectures on Computer Architecture)

Author Michael L. Scott
Publisher Morgan & Claypool Publishers
Category Computers
📄 Viewing lite version Full site ›
🌎 Shop on Amazon — choose country
50.00 USD
🛒 Buy New on Amazon 🇺🇸 🏷 Buy Used — $54.39

✓ Usually ships in 24 hours

Share:
Book Details
ISBN / ASIN160845956X
ISBN-139781608459568
AvailabilityUsually ships in 24 hours
Sales Rank1,933,823
CategoryComputers
MarketplaceUnited States 🇺🇸

Description

Since the advent of time sharing in the 1960s, designers of concurrent and parallel systems have needed to synchronize the activities of threads of control that share data structures in memory. In recent years, the study of synchronization has gained new urgency with the proliferation of multicore processors, on which even relatively simple user-level programs must frequently run in parallel. This lecture offers a comprehensive survey of shared-memory synchronization, with an emphasis on "systems-level" issues. It includes sufficient coverage of architectural details to understand correctness and performance on modern multicore machines, and sufficient coverage of higher-level issues to understand how synchronization is embedded in modern programming languages. The primary intended audience is "systems programmers"—the authors of operating systems, library packages, language run-time systems, concurrent data structures, and server and utility programs. Much of the discussion should also be of interest to application programmers who want to make good use of the synchronization mechanisms available to them, and to computer architects who want to understand the ramifications of their design decisions on systems-level code. Table of Contents: Introduction / Architectural Background / Essential Theory / Practical Spin Locks / Busy-wait Synchronization with Conditions / Read-mostly Atomicity / Synchronization and Scheduling / Nonblocking Algorithms / Transactional Memory / Author's BiographySince the advent of time sharing in the 1960s, designers of concurrent and parallel systems have needed to synchronize the activities of threads of control that share data structures in memory. In recent years, the study of synchronization has gained new urgency with the proliferation of multicore processors, on which even relatively simple user-level programs must frequently run in parallel. This lecture offers a comprehensive survey of shared-memory synchronization, with an emphasis on "systems-level" issues. It includes sufficient coverage of architectural details to understand correctness and performance on modern multicore machines, and sufficient coverage of higher-level issues to understand how synchronization is embedded in modern programming languages. The primary intended audience is "systems programmers" the authors of operating systems, library packages, language run-time systems, concurrent data structures, and server and utility programs. Much of the discussion should also be of interest to application programmers who want to make good use of the synchronization mechanisms available to them, and to computer architects who want to understand the ramifications of their design decisions on systems-level code. Table of Contents: Introduction / Architectural Background / Essential Theory / Practical Spin Locks / Busy-wait Synchronization with Conditions / Read-mostly Atomicity / Synchronization and Scheduling / Nonblocking Algorithms / Transactional Memory / Author's Biography
The Good Web Site Guide 2006: The Completely Revised, …
View
The Pentium Microprocessor
View
Advanced Intel Microprocessors: 80286, 80386, And 80486
View
Differential Equations: Matrices and Models
View
Digital Experiments: Emphasizing Troubleshooting (Merr…
View
Data Structures for Computer Information Systems
View
The Little LISPer, Third Edition
View
Inside Networks
View
Computer Graphics Using Open GL (2nd Edition)
View