We all agree that communication between threads is ultimately the biggest source of contention for scaling to more processors. This communication is called different things depending on the language in question, but ultimately mutexes, messages, and MVars all do the same thing: communicate state between continuities running concurrently.
ESMIC is an example of how a threaded work queue would be written in C to take advantage of an intelligent parallel algorithm. There is some disparity in the nomenclature used in the source code (i.e. work queue and thread queue) because the code was separated from the original program which was meant to be a CPU emulator.
The Source is available here: ESMIC.tar.gz
The presentation: ESMIC.pdf
G. Amdahl, "The validity of the single processor approach to achieving largescale computing capabilities", Proceedings of AFIPS Spring Joint Computer Conference, pp. 483485, April 1967
These details are provided for information only. No information here is legal advice and should not be used as such.