Suppose that a unique priority number is associated

Assignment Help Computer Engineering
Reference no: EM1334196

Derive an election algorithm for bidirectional rings that is more efficient than the ring algorithm:

The ring algorithm assumes that the links are unidirectional and that each process sends its message to the neighbor on the right. The main data structure used by the algorithm is the active list, a list that contains the priority numbers of all active processes in the system when the algorithm ends; each process maintains its own active list. The algorithm works as follows:

1. If process Pi detects a coordinator failure, it creates a new active list that is initially empty. It then sends a message "elect(i)" to its right neighbor and adds the number i to its active list.

2. If Pi receives a message "elect(i)" from the process on the left, it must respond in one of three ways:
a) If this is the first 'elect' message it has seen or sent, Pi creates a new active list with the numbers i and j. It then sends the message 'elect(i)', followed by the message 'elect(i)'.
b) If i does not equal j - that is, the message received does not contain Pi's number - then Pi adds j to its active list and forwards the message to its right neighbor.
c) If i = j - that is, Pi receives the message 'elect(i)' - then the active list for Pi now contains the numbers of all the active processes in the system. Process Pi can now determine the largest number in the active list to identify the new coordinator process.

How many messages are needed for n processes?
(There is no need to program the algorithm, but explain the algorithm idea with words.)

Additional info on Election algorithm:
Many distributed algorithms employ a coordinator process that performs functions needed by the other processes in the system. These functions include enforcing mutual exclusion, maintaining a global wait-for graph for deadlock detection, replacing a lost token, and controlling an input or output device in the system. If the coordinator process fails due to the failure of the site at which it resides, the system can continue execution only by restarting a new copy of the coordinator on some other site. The algorithms that determine where a new copy of the coordinator should be restarted are called election algorithms.

Election algorithms assume that a unique priority number is associated with each active process in the system, For ease of notation, we assume the priority of process Pi is i. To simplify the discussion, we assume a one-to-one correspondence between processes and sites and thus refer to both as processes, The coordinator is always the process with the largest priority number. Hence, when a coordinator fails, the algorithm must elect that active process with the largest priority number. This number must be sent to each active process in the system. In addition, the algorithm must provide a mechanism for a recovered process to identify the current coordinator.

The answer can be an existing algorithm on bi-directional ring election algorithm, it just has to be explained how it works.

Reference no: EM1334196

Questions Cloud

Define product champion : Define product champion and what are the potential problems associated with ANY scoring model?
Effects on the business that is restructured : Restructuring is a popular management technique in recent business experience within the United States. Define this term. Discuss both its positive and negative effects on the business that is restructured.
Outline the description of hospitality marketing : Outline the Description of Hospitality Marketing and mobile technology affected using geography as a method of segmenting markets in both a positive and negative
Rule 1.6 providing : What does Rule 1.6 provide, exactly? Does it say that mentioning the names of parties constitutes a violation?
Suppose that a unique priority number is associated : find an election algorithm for bidirectional rings that is more efficient than the ring algorithm.
Describe why you selected these offenses : Describe why you selected these offenses and If the dismissed employee sued do you think the organization would be able to defend its action in court
Describing money and interest rates : What are the primary economic indicators that you would use if you were thinking about making a large purchase and needed a loan? For example, you may consider a new house, car, or new capital for a business?
Active and passive portfolio management styles : Consider only positions titles, not specific names, in your debate. What are Active and Passive Portfolio management styles?
Describe the augmented product concept : Describe the augmented product concept and also define the product protocols.

Reviews

Write a Review

Computer Engineering Questions & Answers

  Consider which properties could be verified

define that some properties that can only be validated originally can be approximately transformed to properties that could be verified.

  What would be the mappings between cache block

take a memory of 64 blocks (labeled 0 through 63) and a cache of 16 blocks (labeled 0 through 15). In the questions below, list only correct results.

  Write down a little man computer program

Write down a Little Man Computer program.

  Developing the constants

You will require to set up the constants within your program for the following: number of square feet per square yard (9), inches per foot (12), price per square yard of saxony carpet (15.62).

  The web page is passed back to the client

One of the features of Javascript that we have been looking at this week is that code is interpreted within the browser environment, on client machine.

  Assigning the link password

Bob has forgotten his password. Allocate him a password of LINK and require that the Bob change his password next time he logs on.

  How much physical memory is required

An editor has 100 KB of program text, 30 KB of initialized data, and 50 KB of BSS (Block started by symbol). The initial stack is 10 KB. assume that three copies of this editor are started simultaneously.

  How to find the "smallest" and "largest" in a series of word

Write a program that finds the "Smallest" and "Largest" in a sequence of words. After user enter the words, the program will determine which words would come first and last if the words were listed in dictionary order.

  Constraint programming

It is about the constraint programming. We have party organizations for being social. Each participant has their own preference list for parties, every party organizers has their own preference list for providing the parties.

  Program simulating the rolling of one dice

Write down a program which simulates rolling one dice utilizing the following steps: Prompt user for the number of sides on the dice.

  Program for dissimilar values for real numbers

Program for dissimilar values for real numbers

  How to create a visual studio 2008 asp .net web site

If result is a positive number, display the answer in Arial font. The Label server control should also display an error message to the user if they tried to divide by zero on first Web Form.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd