Communicating Sequential Processes
Communicating Sequential Processes (i.e. sequential processes which communicate), aka CSP, is a formalism for dealing with the interaction of concurrent processes. It’s been used as the basis for the concurrency APIs of environments like Plan 9 and the Occam language.
Tony Hoare’s excellent book, Communicating Sequential Processes, which introduces and develops the concept, is now available online, free of charge.