CSCI 431: Parallel Programming

Motivation

Variations on subprogram control associated with concurrency

Basic Parallel Programming Concepts

Synchronization

Mutual Exclusion

Methods for implementing mutual exclusion

Software locks

The Semaphore

Semaphore example

Semaphores have a number of disadvantages:

The Monitor

Message passing

Storage Management in Tasks

Languages for Concurrent Programming

Ada

Ada message passing

Multiple Entry points

Guarded Clauses

Task Termination

Ada Examples

A little bit about Java

The Thread class