Fair Kernel-Lock-Free Claim/Release Protocol for Shared Object Access in Cooperatively Scheduled Runtimes

๐Ÿ“… 2025-10-12
๐Ÿ“ˆ Citations: 0
โœจ Influential: 0
๐Ÿ“„ PDF
๐Ÿค– AI Summary
To address fairness and verifiability challenges in accessing shared objects (e.g., IPC channels) within cooperative scheduling runtimes, this paper proposes a spin-free, kernel-lock-free user-space mutual exclusion protocol. The protocol employs a lock-free FIFO queue to ensure ordered request enqueuing and leverages cooperative scheduling semantics to guarantee linearizability and strict FIFO fairness. It introduces a reusable fairness verification mechanism and applies formal modeling and verification using CSP and FDR. Notably, it presents the first claim/release protocol implemented in the ProcessJ runtime that eliminates both kernel locks and busy-waiting. Experimental evaluation demonstrates that the protocol significantly improves predictability and safety of concurrent programs. By providing a formally verified, fair synchronization primitive, it advances the design of coroutine- and lightweight-thread-based runtimes, enabling rigorous reasoning about fairness properties in cooperative execution environments.

Technology Category

Computer Vision: Bias, Fairness & PrivacyGame Theory and Economic Paradigms: Fair DivisionPlanning, Routing, and Scheduling: Scheduling under Uncertainty

Application Category

Security and Privacy: Data transparency and provenanceUser Modeling, Personalization and Recommendation: Fairness-aware retrieval and rankingEconomics, Online Markets and Human Computation: Fairness and ethical considerations in crowd work and in human-in-the-loop AI systems
๐Ÿ“ Abstract
We present the first spin-free, kernel-lock-free mutex that cooperates with user-mode schedulers and is formally proven FIFO-fair and linearizable using CSP/FDR. Our fairness oracle and stability-based proof method are reusable across coroutine runtime designs. We designed the claim/release protocol for a process-oriented language -- ProcessJ -- to manage the race for claiming shared inter-process communication channels. Internally, we use a lock-free queue to park waiting processes for gaining access to a shared object, such as exclusive access to a shared channel to read from or write to. The queue ensures control and fairness for processes wishing to access a shared resource, as the protocol handles claim requests in the order they are inserted into the queue. We produce CSP models of our protocol and a mutex specification, demonstrating with FDR that our protocol behaves as a locking mutex.
Problem

Research questions and friction points this paper is trying to address.

Designing a spin-free kernel-lock-free mutex for cooperative schedulers
Ensuring FIFO-fair linearizable access to shared communication channels
Managing race conditions in shared object access via lock-free queues
Innovation

Methods, ideas, or system contributions that make the work stand out.

Spin-free kernel-lock-free mutex for user-mode schedulers
Lock-free queue parks processes for shared access
CSP/FDR formally verifies FIFO-fair linearizable protocol
๐Ÿ”Ž Similar Papers
2024-03-06arXiv.orgCitations: 0
2024-10-09International Conference on Architectural Support for Programming Languages and Operating SystemsCitations: 0