Research Article Open Access

pmonpp: Pthread Monitor Preprocessor

Jinhua Guo

Abstract

Monitors have become an exceedingly important synchronization mechanism because they are a natural generalization of the object-oriented programming. A monitor construct encapsulates private data with public methods to operate on that data. Although the Pthread library contains dozens of functions for threading and synchronization, it does not provide direct support for the monitor. Students must explicitly provide mutual exclusion around "monitor procedures" using mutex locks. However, monitor procedures by definition execute with implicit mutual exclusion. This makes it hard to teach the monitor concept in class and explain the semantic differences between monitors and semaphores. To solve this problem, we have designed and implemented a monitor preprocessor for Pthreads that provides explicit support for monitors in Pthreads.

Journal of Computer Science
Volume 2 No. 10, 2006, 765-769

DOI: https://doi.org/10.3844/jcssp.2006.765.769

Submitted On: 23 June 2006 Published On: 31 October 2006

How to Cite: Guo, J. (2006). pmonpp: Pthread Monitor Preprocessor. Journal of Computer Science, 2(10), 765-769. https://doi.org/10.3844/jcssp.2006.765.769

  • 3,336 Views
  • 2,461 Downloads
  • 0 Citations

Download

Keywords

  • Concurrent programming
  • mutual exclusion
  • condition synchronization
  • process synchronization