Premium
Type‐safe concurrent resource sharing
Concurrency And Computation: Practice And ExperiencePeer ReviewedWittie Lea +12010Journals
Concurrent systems often have many processes sharing a common set of resources, both memory regions and hardware devices. Among the many challenges in producing safe concurrent software are single access, atomic transactions, starvation, and deadlock. Locks are frequently used to provide single access to shared resources, but do not guarantee safe usage. This paper extends the previous work on linear, singleton, and arithmetic types and linear memory primitives. Our contributions are capabilities for shared resources, and locks to control these capabilities in provably safe ways. We present formalized locks in a lambda calculus along with the soundness properties of preservation and progress. The type system described here prevents data races. The formalized locks have also been implemented in a C‐like language and used in a network device driver. Copyright © 2010 John Wiley & Sons, Ltd.

This content is not available in your region!

Continue researching from Zendy home

Having issues? Contact support