# A distributed solution to the *k*-out of-*M* resources allocation problem

## Abstract

We consider, in a distributed system, a set of *M* identical resources shared between *n* processes. Each of these resources can be used by at most one process at a given time (i.e. in mutual exclusion). In the *k*-out of-*M* resources allocation problem a process *P*_{ i } can requestat once any number *k*_{ i } of these *M* resources ; this process remains blocked until it has got a set of *k*_{ i } resources. A distributed algorithm, which generalizes the Ricart-Agrawala's mutual exclusion algorithm, is given for this problem ; a variant reducing the number of messages is also proposed. Finally this solution is extended to solve the generalized resourcesallocation problem in which a process request can concern several instances of different types of resources, each type being represented by some number of identical resources.

## Index terms

*k*-out of-

*M*resources allocation distributed mutual exclusion distributed synchronization and-synchronization permission-based algorithms

## Preview

Unable to display preview. Download preview PDF.

## 8 References

- [1]CARVALHO O.S.F., ROUCAIROL G.
*Assertion decomposition and partial correctness of distributed algorithms*. In Distributed Computing, (Paker and Verjus Ed.), Academic Press, (1983), pp. 67–93.Google Scholar - [2]CARVALHO O.S.F., ROUCAIROL G.
*On the distribution of an assertion*. Proc. of the 2d ACM Sigact-Sigops Symposium on P.O.D.C., (August 1982), pp. 121–131.Google Scholar - [3]CHANDY K.M., MISRA J.
*The drinking philosophers problem*. ACM Transactions on Programming Languages and Systems, 6(4):632–646, (1984).Google Scholar - [4]HELARY J.M., PLOUZEAU N., RAYNAL M.
*A distributed algorithm for mutual exclusion in an arbitrary network*. The Computer Journal, 31(4): 289–295, (1988).Google Scholar - [5]LAMPORT L.
*Time, clocks and ordering of events in distributed systems*. communications of the ACM, 21(7): 558–564, (1978).CrossRefGoogle Scholar - [6]LE LANN G.
*Distributed systems: towards a formal approach*. IFIP congress, Toronto, (1977), pp. 155–160.Google Scholar - [7]MARTIN A.J.
*Distributed mutual exclusion on a ring of processes*. Science of Computer Programming, vol.5, (1985), pp. 265–276.Google Scholar - [8]RAYMOND K.
*A tree-based algorithm for distributed mutual exclusion*. ACM Transactions on Computer Systems, 7(1): 61–77, (1989).Google Scholar - [9]RAYMOND K.
*A distributed algorithm for multiple entries to a critical section*. Inf. Processing Letters, vol.30, (1989), pp. 189–193.Google Scholar - [10]RAYNAL M.
*Algorithms for mutual exclusion*. MIT Press, (1986), 107 p.Google Scholar - [11]RAYNAL M.
*Distributed computations and networks: concepts, tools and algorithms*. MIT Press, (1988), 160 p.Google Scholar - [12]RICART G., AGRAWALA A.K.
*An optimal algorithm for mutual exclusion in computer networks*. Communication of the ACM, 24(1): 9–17, (1981).Google Scholar - [13]SANDERS B.
*The information structure of distributed mutual exclusion algorithms*. ACM Transactions on Computer Systems, 5(3): 284–299, (1987).Google Scholar - [14]Van de SNEPSCHEUT J.L.
*Fair mutual exclusion on a graph of processes*. Distributed Computing, 2: 113–115, (1987).Google Scholar