We present two algorithms for the Group Mutual Exclusion (GME) Problem that
satisfy the properties of Mutual Exclusion, Starvation Freedom, Bounded Exit,
Concurrent Entry and First Come First Served. Both our algorithms use only
simple read and write instructions, have O(N) Shared Space complexity and O(N)
Remote Memory Reference (RMR) complexity in the Cache Coherency (CC) model. Our
first algorithm is developed by generalizing the well-known Lamport's Bakery
Algorithm for the classical mutual exclusion problem, while preserving its
simplicity and elegance. However, it uses unbounded shared registers. Our
second algorithm uses only bounded registers and is developed by generalizing
Taubenfeld's Black and White Bakery Algorithm to solve the classical mutual
exclusion problem using only bounded shared registers. We show that contrary to
common perception our algorithms are the first to achieve these properties with
these combination of complexities.Comment: A total of 21 pages including 5 figures and 3 appendices. The bounded
shared registers algorithm in the old version has a subtle error (that has no
easy fix) necessitating replacement. A correct, but fundamentally different,
bounded shared registers algorithm, which has the same properties claimed in
the old version is presented in this new version. Also, this version has an
additional autho