Concetti di Base
Il parallelismo nei linguaggi di programmazione è stato originariamente studiato per la programmazione di sistemi operativi.
Meccanismi di base per la sincronizzazione/comunicazione tra processi:
- semaphores,
- conditional critical regions,
- monitors, e
- read e write.
Questi meccanismi sono stati usati per estendere linguaggi di programmazione sequenziali: Concurrent Pascal, Distributed C.
Numerosi linguaggi concorrenti imperativi.
Molti modelli di programmazione che riflettono numerosi modelli architetturali.