Distributed semaphore using broadcast algorithm

Closed Posted Dec 3, 2014 Paid on delivery
Closed Paid on delivery

As described by the algorithm, each semaphore user has a helper process which is in charge of communications with other helper processes. These helpers are solely working for the semaphore and are independent to any specific application. These helpers form a framework of the distributed semaphore. A user of the framework should be able to activate a helper process (class DisSemHelper) on each participant computer. An essential requirement of the

broadcast-based algorithms is to establish a connection to every other node from every [url removed, login to view], every DisSemHelper object needs to know the IP addresses and port numbers of all the other nodes. You are suggested to have an Initiator process (running on any one of the nodes) and collect the IP addresses and port numbers of all the other nodes. In doing so, the

constructor of Initiator takes the port number that the process listens to. The constructor of each DisSemHelper has four parameters: the node ID number, the port number of the DisSemHelper, Initiator‘s IP address, and Initiator‘s port number.

In order to achieve flexibility, the framework should allow each application process to communicate with its helper in either of the two ways: the application program instantiates the helper as a thread, or the application program communicate with its helper process by messaging.

You should minimize application programmers’ involvement in messaging. One way to achieve this is to write a class DisSem that has two public methods P() and V(). Conceivably, its constructor takes information regarding the semaphore name (unique), the node address and the port number of its helper process.

Java

Project ID: #6820297

About the project

1 proposal Remote project Active Jan 9, 2015

1 freelancer is bidding on average $100 for this job

inetacad

Hello, I'm very happy to receive the description of your project. I have experience of code development by c++, Java. I have a team of competent developers behind who are full of skills for a variety of web developme More

$100 USD in 1 day
(7 Reviews)
2.7