With the trend towards multi-core processors, support for multi-threaded programming is increasingly important. We are interested in providing development and deployment options to allow programmers to select minimal locks, achieving maximal concurrency, at different levels of granularity within a composite system. We explore local properties of the fixpoint lattice of a Galois connection between exclusion requirements and concurrency potential of a composite object. This allows us to develop incremental algorithms for lock selection. Implemented within integrated development environments, such algorithms will allow programmers to interactively select minimal locks with safety.
With the advent of multiprocessors on the desktop, software applications are increasingly likely to adopt multithreaded architectures. To cope with the complexity of concurrent systems, programmers build systems from threadsafe components. This produces excessive and redundant locking, restricting the potential for concurrency within the system.Rather than deploying individual thread-safe components, we advocate deferring the deployment of locks until the code dependencies are known. This avoids redundant locking, and allows the granularity of concurrency to be chosen in a flexible way. In earlier work we identified a formal relationship, known as a Galois connection, between the potential for concurrency in a composite system and the locking requirements for its components. This paper explores further properties of this relationship, and demonstrates how lock selection can be made easy with appropriate tool support.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.