文件名称:Ricart-Agrawala-algorithm-for-distributed-mutual-exclusion
文件大小:14KB
文件格式:ZIP
更新时间:2024-06-20 21:04:21
Java
里卡特-阿格拉瓦拉 使用 Roucairol Carvalho 优化实现 Ricart Agrawala 算法 系统中有十个节点,编号从零到九。 每对节点之间都有可靠的套接字连接 (TCP)。 与互斥算法有关的消息通过这些连接发送。 代码的执行分为两个阶段,如下所述。 阶段 1:每个节点经历以下操作序列,直到每个节点成功退出临界区 20 次: (a) 等待一段时间,在 [5, 10] 时间单位范围内均匀分布,然后再尝试进入临界区。 (b) 在进入临界区时,节点执行以下操作: i. 在新行上打印“进入”,然后是节点号和当前物理时间,ii。 让 3 个单位的时间过去,然后退出临界区。 阶段 2:在阶段 1 之后,奇数节点继续以与之前相同的速率发出进入临界区的请求。 偶数节点在退出临界区后,会等待一段均匀分布在 [45, 50] 个时间单位范围内的时间,然后再尝试进入临界区。 与阶段 1
【文件预览】:
Ricart-Agrawala-algorithm-for-distributed-mutual-exclusion-master
----Server.java(1KB)
----SocketConnections.java(940B)
----.gitignore(574B)
----MessageSender.java(3KB)
----README.md(3KB)
----TimeStamp.java(866B)
----PriorityQ.java(2KB)
----.gitattributes(378B)
----RicartAgrawala.java(5KB)
----ParseFile.java(2KB)
----CriticalSectionRequests.java(1KB)
----TCPRunner.java(1KB)
----Client.java(1KB)
----Node.java(63B)
----Message.java(66B)
----MessageReceiver.java(3KB)
----DeferredRequests.java(450B)