Advertisement

Semaphores in packetC

  • Peder Jungck
  • Ralph Duncan
  • Dwight Mulcahy

Abstract

The complexities of parallel processing introduce the problem that generally leads to complex interprocess communications. With packetC, the notion of global data is ever-present and even though access to data elements is atomic, programs represent information in more complex structures than basic scalar types. As such, a mechanism for communication with other contexts is required in order to notify them to not touch portions of global memory that are in use, or more important, being manipulated by another context. Locking of memory can grind a parallel system to a halt. So, instead, packetC introduces a method of semaphores where any global int data element can be used as a semaphore representing whatever the application desires. It is a cooperative inter-process memory protection model that trades off some security in return for significant performance. Lock and unlock methods are applicable to global data elements which provide an atomic test-and-set, storing a magic number in the data element itself. Should the lock be successful, the application can proceed to work on other data elements safely, knowing it is not in competition.

Keywords

Parallel Processing Data Element Global Memory Critical Section Magic Number 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© CloudShield Technologies, Inc. An SAIC Company 2011

Authors and Affiliations

  • Peder Jungck
  • Ralph Duncan
  • Dwight Mulcahy

There are no affiliations available

Personalised recommendations