Mutual exclusion is a classical problem in distributed computing that provides isolation among concurrent action executions that may require access to the same shared resources. Inspired by algorithmic research on distributed systems of weakly capable entities whose connections change over time, we address the local mutual exclusion problem that tasks each node with acquiring exclusive locks for itself and the maximal subset of its "persistent" neighbors that remain connected to it over the time interval of the lock request. Using the established time-varying graphs model to capture adversarial topological changes, we propose and rigorously analyze a local mutual exclusion algorithm for nodes that are anonymous and communicate via asynchronous message passing. The algorithm satisfies mutual exclusion (non-intersecting lock sets) and lockout freedom (eventual success) under both semi-synchronous and asynchronous concurrency. It requires $\mathcal{O}(\Delta\log\Delta)$ memory per node and messages of size $\mathcal{O}(\log\Delta)$, where $\Delta$ is the maximum number of connections per node. For systems of weak entities, $\Delta$ is often a small constant, reducing the memory and message size requirements to $\mathcal{O}(1)$. We conclude by describing how our algorithm can be used to implement the schedulers assumed by population protocols and the concurrency control operations assumed by the canonical amoebot model, demonstrating its utility in both passively and actively dynamic distributed systems.
翻译:在分布式计算中,相互排斥是一个典型的问题,在同时行动处决中提供隔离,这可能需要使用同样的共享资源。在对分散式系统进行算法研究的启发下,在分布式系统中,能力薄弱的实体的连接随时间变化而变化,我们解决了当地相互排斥问题,每个节点都需获得独家锁,其“持久性”邻居的最大子集在锁定请求的间隔内仍然与它相连。我们利用固定的时间分布式图表模型来捕捉对抗性地形变化,我们提议并严格分析对匿名结点的当地相互排斥算法,并通过非同步传递信息进行沟通。算法满足了相互排斥(非互开锁)和锁定自由(同样成功),在半同步和非同步的调和调调调调调调调调调调调调调调调调调调调调调调调调调调调调调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和,美元是最大调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调和调调调调调的系统如何如何, 。