Verifying Correctness of Shared Channels in a Cooperatively Scheduled Process-Oriented Language
By: Jan Pedersen, Kevin Chalmers
Potential Business Impact:
Ensures computer parts work right together.
Correct concurrent behaviour is important in understanding how components will act within certain conditions. In this work. we analyse the behaviour of shared communicating channels within a coorporatively scheduled runtime. We use the refinement checking and modelling tool FDR to develop both specifications of how such shared channels should behave and models of the implementations of these channels in the cooperatively scheduled language ProcessJ. Our results demonstrate that although we can certainly implement the correct behaviour of such channels, the outcome is dependant on having adequate resources available to execute all processes involved. We conclude that modelling the runtime environment of concurrent components is necessary to ensure components behave as specified in the real world.
Similar Papers
Fair Kernel-Lock-Free Claim/Release Protocol for Shared Object Access in Cooperatively Scheduled Runtimes
Distributed, Parallel, and Cluster Computing
Lets programs share things fairly and fast.
Towards Bug-Free Distributed Go Programs
Software Engineering
Finds hidden bugs in computer messages.
Testing Message-Passing Concurrency
Programming Languages
Checks if computer messages arrive in order.