The Concurrent C Programming Language

Narain Gehani, William D. Roome

Publisher: Prentice Hall, 1989, 303 pages

ISBN: 0-13-170820-1

Keywords: Programming

Last modified: June 13, 2021, 9:36 p.m.

Concurrent C is a superset of C that provides parallel programming facilities such as those for the declaring and creating processes, for process synchronization and interaction, and for process termination and abortion. Concurrent C was designed for the effective utilization of multiprocessors and multicomputers. Concurrent C, as a compile-time option, also works with C++, and object-oriented superset of C.

In this book, the authors of Concurrent C explains the basic and advanced aspects of Concurrent C , its run-time facilities and Concurrent C++; they discuss issues in concurrent programming, discuss the various models of concurrent programming and compare Concurrent C with the concurrent programming facilities in Ada. The authors give numerous real examples including several large examples. The book also contains the Concurrent C reference manual and a synopsis of C.

  1. Basics
    1. Processes
    2. Process Parameters
    3. Process Interaction & Trans. Calls
    4. Process Declarations
    5. Process Creation
    6. Process Values and Process Ids
    7. Producer-Consumer Example
    8. Shared Memory Hazards
    9. Program Organization Suggestions
    10. Examples
    11. Exercises
  2. Advanced Facilities
    1. Process Values & Process Management
    2. The Delay Statement
    3. Timed Transaction Calls
    4. The Accept Statement
    5. The Select Statement
    6. Collective Termination
    7. Transaction Pointers
    8. Asynchronous Transaction Calls
    9. Examples
    10. Exercises
  3. Run-time Environment
    1. Process Ids
    2. Process States
    3. Process Abortion
    4. Process Priority
    5. Number pf Pending Transaction Calls
    6. Giving Names to Process Instances
    7. Processor Selection on a Multiproc.
    8. Interrupts and Transactions
    9. Process Stack Size
    10. C and UNIX Functions
    11. Exercises
  4. Large Examples
    1. Protocol Simulation
    2. Robot Controller
    3. Concurrent Make
    4. Window Manager
    5. Exercises
  5. Concurrent C++
    1. Brief Summary of C++
    2. Data Abstraction & Concurrent Prog.
    3. Summary
    4. Exercises
  6. Concurrent Programming Models
    1. Concurrent C Concurrent Prog. Model
    2. The Producer-Consumer Example
    3. Concurrent C
    4. Semaphores
    5. Critical Regions
    6. Monitors
    7. Communicating Sequential Processes
    8. Distributed Processes
    9. Ada
    10. Final Comments
    11. Exercises
  7. Concurrent Programming Issues
    1. Message Passing
    2. Deadlock
    3. Maximizing Concurrency
    4. Polling
    5. Exercises
  8. Discrete Event Simulation
    1. The Process-Inter. Model of Sim.
    2. A Two-Stage Queueing Network
    3. Structure of The Simulation Program
    4. Process Implementation
    5. A Feedback Queueing Network
    6. Extensions and Modifications
  1. Concurrent C Reference Manual
    1. Keywords
    2. Processes and Process Interaction
    3. Process Types & Trans. Declarations
    4. Process Bodies
    5. Process Creation
    6. Process types and Ids
    7. Transaction Pointers
    8. Transaction Calls
    9. Accept Statement
    10. Delay Statement
    11. Select Statements
    12. Preprocessor
    13. Library Functions
    14. Syntax Summary
  2. Concurrent C: Design and Implementation
    1. Design
    2. Implementation Overview
  3. Comparison with Conc. Programming Ada
    1. Terminology
    2. The Rendezvous Model
    3. An Example
    4. Process Parameters
    5. Process Specification And Creation
    6. Synchronous vs. Async. Trans. Calls
    7. Ordering Process Interaction Req.
    8. Process Priorities
    9. Transaction Pointers
    10. Immediate Alt. of the Select Stmt.
    11. Collective Process Termination
    12. Miscellaneous
    13. Summary
  4. C: A Synopsis
    1. Examples Illustrating the Language
    2. Types
    3. Type Declarations
    4. Definitions
    5. Operators
    6. Control Structures
    7. Functions
    8. Source File Organization

Reviews

The Concurrent C Programming Language

Reviewed by Roland Buresund

Good ******* (7 out of 10)

Last modified: May 21, 2007, 3:25 a.m.

If you want to see brilliance, buy this book and check when it is written. A pre-cursor to threads, that never really happened.

Comments

There are currently no comments

New Comment

required

required (not published)

optional

required

captcha

required