Skip to content
This repository has been archived by the owner on Feb 12, 2024. It is now read-only.

rickb777/libcsp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libcsp - CSP For Posix Threads

"Communicating Sequential Processes" is a mathematical algebra for analysing the behaviour of concurrent systems. Because most software systems interact with the real world, they are concurrent to a greater or lesser extent.

libcsp is a library that provides for C programmers a level of abstraction that makes programming with threads much easier. By providing an easy mechanism to express and reason about programs with multiple threads, it becomes easier to fit software into the real world.

In essence, libcsp is a C library that provides the benefits previously known to occam programmers:

  • threads communicate by passing messages;

  • when a message is passed between threads, the sender and the receiver have to rendezvous in time - usually this means one thread has to wait for the other;

  • receiver threads can select between alternate sources - called alternation in CSP;

  • as in occam and unlike CSP itself, senders cannot alternate between output sources (this would cause implementation performance issues and is not strictly necessary).

For further information, see

Changes

v0.50 2001-06-12 Uploaded to Sourceforge.net

v0.41 2000-11-21 Minor change to commstime benchmark (but not to how it measures!)

v0.4 2000-09-15 Improved channel algorithm.

v0.3 2000-09-08 Added commstime benchmark.

v0.2 Added alternation.

v0.1 First release. Buggy and very incomplete. Contains simple channels only.

About

CSP For Posix Threads

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published