Cart
Free Shipping in the UK
Proud to be B-Corp

Concurrent Programming Greg Andrews

Concurrent Programming By Greg Andrews

Concurrent Programming by Greg Andrews


£4.20
New RRP £128.49
Condition - Very Good
Only 1 left

Summary

Concurrent programming is critical to a variety of applications, including parallel computation, workstation window systems, multi-user database systems, and network file servers. Andrews provides an in-depth overview of underlying principles as well as practical techniques that can be used to desi

Concurrent Programming Summary

Concurrent Programming: Principles and Practice by Greg Andrews

This book provides an in-depth overview of underlying principles as well as practical techniques that can be used to design concurrent programs. Anyone interested in sequential and concurrent computing will find this book to be an essential reference and innovative work. Andrews's shows how to approach key decisions, discusses the tradeoffs between how processes should be used, and explains how those processes should interact.

About Greg Andrews

Gregory Andrews received a B.S. degree in Mathematics from Stanford University in 1969 and a Ph.D. degree in Computer Science from the University of Washington in 1974. From 1974-79 he was an Assistant Professor at Cornell University. Since 1979 he has been at The University of Arizona, where he is currently Professor of Computer Science. From 1986-93 he chaired the department; in 1986 he received a distinguished teaching award.

Greg has been on the editorial board of Information Processing Letters since 1979. He was the general chair of the Twelfth ACM Symposium on Operating Systems Principles in 1989 and has been on the program committees of numerous conferences. From 1988-92 he was on advisory committees for the computing directorate of the National Science Foundation. Since 1991 he has been on the Board of Directors of the Computing Research Association (CRA).

Greg's research interests include all aspects of concurrent programming. A long-term project has been the design and implementation of the SR programming language. Current work focuses on the development of Filaments, a software package that provides efficient fine-grain parallelism on a variety of parallel machines.

0805300864AB04062001

Table of Contents

I. BASIC CONCEPTS.

Sequential Programming.

Language Notation.

Logic, Propositions, and Predicates.

A Programming Logic.

Proofs in Programming Logic.

Program Derivation.

Historical Notes and References.

Exercises.

Concurrency and Synchronization.

Specifying Concurrent Execution.

Atomic Actions and Synchronization.

Semantics of Concurrent Execution.

Techniques for Avoiding Interference.

Auxiliary Variables.

Safety and Liveness Properties.

Historical Notes and References.

Exercises.

II. SHARED VARIABLES.

Fine-Grained Synchronization.

The Critical Section Problem.

Critical Sections: Tie-Breaker Algorithm.

Critical Sections: Ticket Algorithm.

Critical Sections: Bakery Algorithm.

Barrier Synchronization.

Data Parallel Algorithms.

On-The-Fly Garbage Collection.

Implementing Processes.

Historical Notes and References.

Exercises.

Semaphores.

Notation and Semantics.

Basic Uses and Programming Techniques.

Selective Mutual Exclusion.

General Condition Synchronization.

Resource Allocation.

Implementation.

Historical Notes and References.

Exercises.

Conditional Critical Regions.

Notation and Semantics.

Dining Philosophers Revisited.

Reader/Writers Revisited.

Interprocess Communication.

Scheduling and Resource Allocation.

Implementations.

Historical Notes and References.

Exercises.

Monitors.

Programming Notation.

Formal Semantics and Program Proofs.

Synchronization Techniques.

Disk Scheduling: Program Structures.

Alternative Approaches to Synchronization.

Implementations.

Historical Notes and References.

Exercises.

III. MESSAGE PASSING.

Asynchronous Message Passing.

Programming Notation.

Formal Semantics.

Filters: A Sorting Network.

Clients and Servers.

Heartbeat Algorithms.

Probe/Echo Algorithms.

Broadcast Algorithms.

Token-Passing Algorithms.

Replicated Servers.

Implementations.

Historical Notes and References.

Exercises.

Synchronous Message Passing.

Programming Notation.

Formal Semantics.

Networks of Filters.

Interacting Parallel Processes.

Clients and Servers.

Implementations.

Historical Notes and References.

Exercises.

RPC and Rendezvous.

Remote Procedure Call.

Rendezvous.

A Multiple Primitives Notation.

Clients and Servers.

Parallel Algorithms.

Implementation.

Historical Notes and References.

Exercises.

IV. PRACTICE.

Language Overviews.

Turing Plus: Monitors.

Occam: Synchronous Message Passing.

Ada: Rendezvous.

SR: Multiple Primitives.

Linda: Distributed Data Structures.

Comparison and Performance.

Historical Notes and References.

Exercises.

Glossary.
Bibliography.
Index. 0805300864T04062001

Additional information

GOR002095178
9780805300864
0805300864
Concurrent Programming: Principles and Practice by Greg Andrews
Used - Very Good
Paperback
Pearson Education (US)
19910705
656
N/A
Book picture is for illustrative purposes only, actual binding, cover or edition may vary.
This is a used book - there is no escaping the fact it has been read by someone else and it will show signs of wear and previous use. Overall we expect it to be in very good condition, but if you are not entirely satisfied please get in touch with us

Customer Reviews - Concurrent Programming