Distributed shared memory
General architecture
Design and Implementation of issues of DSM
Granularity
Factors Influencing Block size Selection
Consistency Model
Replacement strategy
Which block be replace
where to place a replace block
thrashing
heterogeneous DSM
Issues
Deadlock
The buffer manager is the software layer that is responsible for bringing pages from physical disk to main memory as needed. The buffer manages the available main memory by dividing the main memory into a collection of pages, which we called as buffer pool. The main memory pages in the buffer pool are called frames.
In a Mobile Ad hoc Network (MANET), due to mobility, limited battery power and poor features of nodes,
network partitioning and nodes disconnecting occur frequently. To improve data availability, database
systems create multiple copies of each data object and allocate them on different nodes. This paper
proposes Automated Re-allocator of Replicas Over MANET (ARROM), that addresses these issues.
ARROM reduces the average response time of requests between clients and database servers by
reallocating replicas frequently. In addition, ARROM increases the average throughput in the network. Our
performance study indicates that ARROM improves average response time and average network
throughput in MANET as compared to resent existing scheme.
The buffer manager is the software layer that is responsible for bringing pages from physical disk to main memory as needed. The buffer manages the available main memory by dividing the main memory into a collection of pages, which we called as buffer pool. The main memory pages in the buffer pool are called frames.
In a Mobile Ad hoc Network (MANET), due to mobility, limited battery power and poor features of nodes,
network partitioning and nodes disconnecting occur frequently. To improve data availability, database
systems create multiple copies of each data object and allocate them on different nodes. This paper
proposes Automated Re-allocator of Replicas Over MANET (ARROM), that addresses these issues.
ARROM reduces the average response time of requests between clients and database servers by
reallocating replicas frequently. In addition, ARROM increases the average throughput in the network. Our
performance study indicates that ARROM improves average response time and average network
throughput in MANET as compared to resent existing scheme.
An Adaptive Load Sharing Algorithm for Heterogeneous Distributed SystemIJORCS
Due to the restriction of designing faster and faster computers, one has to find the ways to maximize the performance of the available hardware. A distributed system consists of several autonomous nodes, where some nodes are busy with processing, while some nodes are idle without any processing. To make better utilization of the hardware, the tasks or load of the overloaded node will be sent to the under loaded node that has less processing weight to minimize the response time of the tasks. Load balancing is a tool used effectively for balancing the load among the systems. Dynamic load balancing takes into account of the current system state for migration of the tasks from heavily loaded nodes to the lightly loaded nodes. In this paper, we devised an adaptive load-sharing algorithm to balance the load by taking into consideration of connectivity among the nodes, processing capacity of each node and link capacity.
Many real-time systems are naturally distributed and these distributed systems require not only highavailability
but also timely execution of transactions. Consequently, eventual consistency, a weaker type of
strong consistency is an attractive choice for a consistency level. Unfortunately, standard eventual
consistency, does not contain any real-time considerations. In this paper we have extended eventual
consistency with real-time constraints and this we call real-time eventual consistency. Followed by this new
definition we have proposed a method that follows this new definition. We present a new algorithm using
revision diagrams and fork-join data in a real-time distributed environment and we show that the proposed
method solves the problem.
A Kernel-Level Traffic Probe to Capture and Analyze Data Flows with Prioritiesidescitation
This paper describes the proposal of a priority flow
oriented design of the Ksensor architecture. Ksensor is a
multiprocessor traffic capture and analysis system for high
speed networks developed at kernel space. While the current
architecture permits the capture and analysis of data flows,
there are several scenarios where it does not perform
adequately to achieve this goal, for example, if a certain type
of traffic is more valuable than others. Thus, this work pursues
the design that allows Ksensor to provide data flow treatment
to a larger extent. This improvement will allow the new
architecture to provide more reliability in data flow capture
and processing.
Load balancing is one of the main challenges of every structured peer-to-peer (P2P) system that uses
distributed hash tables to map and distribute data items (objects) onto the nodes of the system. In a typical
P2P system with N nodes, the use of random hash functions for distributing keys among peer nodes can
lead to O(log N) imbalance. Most existing load balancing algorithms for structured P2P systems are not
adaptable to objects’ variant loads in different system conditions, assume uniform distribution of objects in
the system, and often ignore node heterogeneity. In this paper we propose a load balancing algorithm that
considers the above issues by applying node movement and replication mechanisms while load balancing.
Given the high overhead of replication, we postpone this mechanism as much as possible, but we use it
when necessary. Simulation results show that our algorithm is able to balance the load within 85% of the
optimal value.
Distributed Dynamic Replication Management Mechanism Based on Accessing Frequ...May Sit Hman
Thesis (Master) of Computer Science. It's based on Distributed System and Database System. It's about management replica on distributed database systemm.
Advanced delay reduction algorithm based on GPS with Load Balancingijdpsjournal
A Mobile Ad-Hoc Network (MANET) is a self-configuring network of mobile nodes connected by wireless
links, to form an arbitrary topology. The nodes are free to move arbitrarily in the topology. Thus, the
network's wireless topology may be random and may change quickly. An ad Hoc network is formed by
sensor networks consisting of sensing, data processing, and communication components. There is frequent
occurrence of congested links in such a network as wireless links inherently have significantly lower
capacity than hardwired links and are therefore more prone to congestion. Here we proposed a algorithm
which involves the reduction in the delay with the help of Request_set created on the basis of the location
information of the destination node. Across the paths found in the Route_reply (RREP) packets the load is
equally distributed
Distribution transparency and Distributed transactionshraddha mane
Distribution transparency and Distributed transaction.deadlock detection .Distributed transaction and their types and threads and processes and their difference.
Introduction to distributed systems
Architecture for Distributed System, Goals of Distributed system, Hardware and Software
concepts, Distributed Computing Model, Advantages & Disadvantage distributed system, Issues
in designing Distributed System,
An Adaptive Load Sharing Algorithm for Heterogeneous Distributed SystemIJORCS
Due to the restriction of designing faster and faster computers, one has to find the ways to maximize the performance of the available hardware. A distributed system consists of several autonomous nodes, where some nodes are busy with processing, while some nodes are idle without any processing. To make better utilization of the hardware, the tasks or load of the overloaded node will be sent to the under loaded node that has less processing weight to minimize the response time of the tasks. Load balancing is a tool used effectively for balancing the load among the systems. Dynamic load balancing takes into account of the current system state for migration of the tasks from heavily loaded nodes to the lightly loaded nodes. In this paper, we devised an adaptive load-sharing algorithm to balance the load by taking into consideration of connectivity among the nodes, processing capacity of each node and link capacity.
Many real-time systems are naturally distributed and these distributed systems require not only highavailability
but also timely execution of transactions. Consequently, eventual consistency, a weaker type of
strong consistency is an attractive choice for a consistency level. Unfortunately, standard eventual
consistency, does not contain any real-time considerations. In this paper we have extended eventual
consistency with real-time constraints and this we call real-time eventual consistency. Followed by this new
definition we have proposed a method that follows this new definition. We present a new algorithm using
revision diagrams and fork-join data in a real-time distributed environment and we show that the proposed
method solves the problem.
A Kernel-Level Traffic Probe to Capture and Analyze Data Flows with Prioritiesidescitation
This paper describes the proposal of a priority flow
oriented design of the Ksensor architecture. Ksensor is a
multiprocessor traffic capture and analysis system for high
speed networks developed at kernel space. While the current
architecture permits the capture and analysis of data flows,
there are several scenarios where it does not perform
adequately to achieve this goal, for example, if a certain type
of traffic is more valuable than others. Thus, this work pursues
the design that allows Ksensor to provide data flow treatment
to a larger extent. This improvement will allow the new
architecture to provide more reliability in data flow capture
and processing.
Load balancing is one of the main challenges of every structured peer-to-peer (P2P) system that uses
distributed hash tables to map and distribute data items (objects) onto the nodes of the system. In a typical
P2P system with N nodes, the use of random hash functions for distributing keys among peer nodes can
lead to O(log N) imbalance. Most existing load balancing algorithms for structured P2P systems are not
adaptable to objects’ variant loads in different system conditions, assume uniform distribution of objects in
the system, and often ignore node heterogeneity. In this paper we propose a load balancing algorithm that
considers the above issues by applying node movement and replication mechanisms while load balancing.
Given the high overhead of replication, we postpone this mechanism as much as possible, but we use it
when necessary. Simulation results show that our algorithm is able to balance the load within 85% of the
optimal value.
Distributed Dynamic Replication Management Mechanism Based on Accessing Frequ...May Sit Hman
Thesis (Master) of Computer Science. It's based on Distributed System and Database System. It's about management replica on distributed database systemm.
Advanced delay reduction algorithm based on GPS with Load Balancingijdpsjournal
A Mobile Ad-Hoc Network (MANET) is a self-configuring network of mobile nodes connected by wireless
links, to form an arbitrary topology. The nodes are free to move arbitrarily in the topology. Thus, the
network's wireless topology may be random and may change quickly. An ad Hoc network is formed by
sensor networks consisting of sensing, data processing, and communication components. There is frequent
occurrence of congested links in such a network as wireless links inherently have significantly lower
capacity than hardwired links and are therefore more prone to congestion. Here we proposed a algorithm
which involves the reduction in the delay with the help of Request_set created on the basis of the location
information of the destination node. Across the paths found in the Route_reply (RREP) packets the load is
equally distributed
Distribution transparency and Distributed transactionshraddha mane
Distribution transparency and Distributed transaction.deadlock detection .Distributed transaction and their types and threads and processes and their difference.
Introduction to distributed systems
Architecture for Distributed System, Goals of Distributed system, Hardware and Software
concepts, Distributed Computing Model, Advantages & Disadvantage distributed system, Issues
in designing Distributed System,
Distributed system lectures
Engineering + education purpose
This series of lectures was prepared for the fourth class of computer engineering / Baghdad/ Iraq.
This series is not completed yet, it is just a few lectures in the object.
Forgive me for anything wrong by mistake, I wish you can profit from these lectures
My regard
Marwa Moutaz/ M.Sc. studies of Communication Engineering / University of Technology/ Bagdad / Iraq.
Operating System
Topic Memory Management
for Btech/Bsc (C.S)/BCA...
Memory management is the functionality of an operating system which handles or manages primary memory. Memory management keeps track of each and every memory location either it is allocated to some process or it is free. It checks how much memory is to be allocated to processes. It decides which process will get memory at what time. It tracks whenever some memory gets freed or unallocated and correspondingly it updates the status.
Mutual exclusion:
Concurrency control property which is introduce to prevent race.
Distributed transaction:
Transaction that span multiple database servers,as well are connected by a network.
Distributed Database Architecture
Database Links
Distributed Database Administration
Transaction Processing in a Distributed System
Distributed Database Application Development
Character Set Support for Distributed Environments
Operation “Blue Star” is the only event in the history of Independent India where the state went into war with its own people. Even after about 40 years it is not clear if it was culmination of states anger over people of the region, a political game of power or start of dictatorial chapter in the democratic setup.
The people of Punjab felt alienated from main stream due to denial of their just demands during a long democratic struggle since independence. As it happen all over the word, it led to militant struggle with great loss of lives of military, police and civilian personnel. Killing of Indira Gandhi and massacre of innocent Sikhs in Delhi and other India cities was also associated with this movement.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
This is a presentation by Dada Robert in a Your Skill Boost masterclass organised by the Excellence Foundation for South Sudan (EFSS) on Saturday, the 25th and Sunday, the 26th of May 2024.
He discussed the concept of quality improvement, emphasizing its applicability to various aspects of life, including personal, project, and program improvements. He defined quality as doing the right thing at the right time in the right way to achieve the best possible results and discussed the concept of the "gap" between what we know and what we do, and how this gap represents the areas we need to improve. He explained the scientific approach to quality improvement, which involves systematic performance analysis, testing and learning, and implementing change ideas. He also highlighted the importance of client focus and a team approach to quality improvement.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
Ethnobotany and Ethnopharmacology:
Ethnobotany in herbal drug evaluation,
Impact of Ethnobotany in traditional medicine,
New development in herbals,
Bio-prospecting tools for drug discovery,
Role of Ethnopharmacology in drug evaluation,
Reverse Pharmacology.
The Roman Empire A Historical Colossus.pdfkaushalkr1407
The Roman Empire, a vast and enduring power, stands as one of history's most remarkable civilizations, leaving an indelible imprint on the world. It emerged from the Roman Republic, transitioning into an imperial powerhouse under the leadership of Augustus Caesar in 27 BCE. This transformation marked the beginning of an era defined by unprecedented territorial expansion, architectural marvels, and profound cultural influence.
The empire's roots lie in the city of Rome, founded, according to legend, by Romulus in 753 BCE. Over centuries, Rome evolved from a small settlement to a formidable republic, characterized by a complex political system with elected officials and checks on power. However, internal strife, class conflicts, and military ambitions paved the way for the end of the Republic. Julius Caesar’s dictatorship and subsequent assassination in 44 BCE created a power vacuum, leading to a civil war. Octavian, later Augustus, emerged victorious, heralding the Roman Empire’s birth.
Under Augustus, the empire experienced the Pax Romana, a 200-year period of relative peace and stability. Augustus reformed the military, established efficient administrative systems, and initiated grand construction projects. The empire's borders expanded, encompassing territories from Britain to Egypt and from Spain to the Euphrates. Roman legions, renowned for their discipline and engineering prowess, secured and maintained these vast territories, building roads, fortifications, and cities that facilitated control and integration.
The Roman Empire’s society was hierarchical, with a rigid class system. At the top were the patricians, wealthy elites who held significant political power. Below them were the plebeians, free citizens with limited political influence, and the vast numbers of slaves who formed the backbone of the economy. The family unit was central, governed by the paterfamilias, the male head who held absolute authority.
Culturally, the Romans were eclectic, absorbing and adapting elements from the civilizations they encountered, particularly the Greeks. Roman art, literature, and philosophy reflected this synthesis, creating a rich cultural tapestry. Latin, the Roman language, became the lingua franca of the Western world, influencing numerous modern languages.
Roman architecture and engineering achievements were monumental. They perfected the arch, vault, and dome, constructing enduring structures like the Colosseum, Pantheon, and aqueducts. These engineering marvels not only showcased Roman ingenuity but also served practical purposes, from public entertainment to water supply.
How to Split Bills in the Odoo 17 POS ModuleCeline George
Bills have a main role in point of sale procedure. It will help to track sales, handling payments and giving receipts to customers. Bill splitting also has an important role in POS. For example, If some friends come together for dinner and if they want to divide the bill then it is possible by POS bill splitting. This slide will show how to split bills in odoo 17 POS.
The Art Pastor's Guide to Sabbath | Steve ThomasonSteve Thomason
What is the purpose of the Sabbath Law in the Torah. It is interesting to compare how the context of the law shifts from Exodus to Deuteronomy. Who gets to rest, and why?
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxEduSkills OECD
Andreas Schleicher presents at the OECD webinar ‘Digital devices in schools: detrimental distraction or secret to success?’ on 27 May 2024. The presentation was based on findings from PISA 2022 results and the webinar helped launch the PISA in Focus ‘Managing screen time: How to protect and equip students against distraction’ https://www.oecd-ilibrary.org/education/managing-screen-time_7c225af4-en and the OECD Education Policy Perspective ‘Students, digital devices and success’ can be found here - https://oe.cd/il/5yV
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Dos unit3
1.
2. Programming of of applications for loosely coupled
distributed memory machines with the message-
passing paradigm is a difficult and error-prone task.
The Distributed Shared Memory (DSM) facility
simplifies this programming task by providing a
higher level abstraction that allows programmers to
write programs with the shared-memory
paradigm,which is consistent with the way sequential
applications access data.
3.
4. The DSM system normally have an architecture of
the form.
Each node of the system consists of one or more
CPUs and a memory unit.
The nodes are connected by a high-speed
communication network.
A simple message-passing system allows processes
on different nodes to exchange messages with each
other
5. The DSM abstraction presents a large shared-
memory space to the processors of all nodes.
In contrast to the shared physical memory in
tightly coupled parallel architecture, the shared
memory of DSM exists only virtually.
A software memory- mapping manager routine in
each node maps the local memory onto the
shared virtual memory.
To facilitate the mapping operation, the shared-
memory space is partitioned into blocks.
6. Granularity
Structure of shared-memory space
Memory coherence and access
synchronization
Data location and access
Replacement strategy
Thrashing
Heterogenity
7. One of the most visible parameters to be chosen in
the design of a DSM system is the block size.
Just as with paged main memory, there are a number
of trade-offs and no single criterion dominates.
8. Paging Overhead- Because shared memory
programs provide locality of reference, a process is
likely to access a large region of its shared address
space in a small amount of time.
Directory Size- Another factor affecting the choice of
block size is the need keep directory information
about the blocks in the system.
9. Thrashing- The problem of thrashing may occur
when data items in the same data block are being
updated by multiple nodes at the same time, causing
large numbers of data block transfers among the
nodes without much progress in the execution of the
application.
False Sharing- False sharing occurs when two
different processes access two unrelated variables
that reside in the same data block.
10. 1) No sharing- Most DSM systems do not structure
their shared-memory space. In these systems, the
shared-memory space is simply a linear array of
words. It is convenient to choose any suitable page
size as the unit of sharing and a fixed grain size may
be used for all applications.
2) Structuring by data type- In this method, the shared-
memory space is either as a collection of objects
and Orca or as a collection of variables in the source
language.
11. 3) Structuring as a database- Another method is to
structure the shared memory like a database. A set of
primitives that can be added to any base language are
provided to place tuples in the tuple space and to
read or extract them from tuple space.
12. Strict Consistency model
Sequential consistency model
Causal Consistency model
Pipelined Random-Access Memory Consistency
Model
Processor Consistent Model
Weak Consistency Model
Release Consistency Model
13. In DSM systems that allow shared-memory blocks to
be dynamically migrated/replicated, the following
issues must be addressed when the available space
for caching shared data fill up at a node:
1) Which block should be replaced to make
space for a newly required block?
2) Which should the replaced block be placed?
14. The problem of replacement has been studied
extensively for paged main memories and shared-
memory multiprocessor systems.
The usual classification of replacement algorithm
group them into the following categories:
15. 1) Usage based versus non-usage based- Usage based
algorithms keep track of the history of usage of a
cache line and use this information to make
replacement decisions.
2) Fixed space versus variable space- Fixed-space
algorithms assume that the cache size fixed while
variable-space algorithms are based on the
assumption that the cache size can be changed
dynamically depending on the need.
16. Unused: A free memory block that is not currently
being used.
Nil: A block that has been invalidated.
Read-only: A block for which the node has only read
right.
Read-owned: A block for which the node has only
read access right but is also the owner of the block.
Writable: A block for which the node has write
access permission. Obviously, the node is the owner
of the block because IVY uses the write-invalidate
protocol.
17. Once a memory block has been selected for
replacement, it should not be lost.
1)Using Secondary storage
2) Using the memory space of other nodes.
18. Using Secondary store: In this method, the block is
simply transferred on to a local disk. The advantage
of this method is that it does not waste any memory
space, and if the node want to access the same block
again.
Using the memory space of thee other nodes:
Sometimes it may be faster to transfer a block over
the network than to transfer it to a block disk.
19. Thrashing is said to occur when the system spends a
large amount of time transferring shared data blocks
from one node to another, compared to the time
spent doing the useful work of executing application
process.
20. 1) When interleaved data accesses made by process on
two or more nodes causes a data block to move
back and forth from one node to another in quick
succession.
2) When blocks with read-only permissions are
repeatedly invalidated soon after they are replicated.
21. The following methods may be used to solve the thrashing
problem in DSM systems:
1) Providing Application-controlled locks.
2) Nailing a block to a node for a minimum amount of
time.
3) Tailoring the coherence algorithm to the shared-data
usage patterns.
22. Heterogeneous DSM is a mechanism that provides
the shared-memory paradigm in a heterogeneous
environment and allows memory sharing among
machines of different architecture.
23. The main issues in building a DSM system on a
network of heterogeneous machines are :
1) Data conversion
2) Block size selection
24. Simpler Abstraction
Better Portability of Distributed Applications
Programs
Better Performance of some Applications
Flexible Communication Environment
Ease of Process Migration
25. A distributed system consists of a collection of
distinct processes that are spatially separated and run
concurrently.
The rules for enforcing correct interaction are
implemented in the form of synchronization
mechanisms.
27. In a distributed system, an application may have
process that concurrently run on multiple nodes of
the system.
For correct results, several such distributed
applications require that the clocks of the nodes are
synchronized with each other.
28. In a distributed system, synchronized clocks also
enable one to measure the duration of distributed
activities that start on one node and terminate on
another node, for instance, calculating the time taken
to transmit a message from one node to another at
any arbitrary time.
It is difficult to get the correct result in this case if
the clocks of the sender and receiver nodes are not
synchronized.
29. Keeping the clocks in a distributed system
synchronize to within 5 or 10 msec is an expensive
and nontrivial task.
Lamport observed that for most application it is not
necessary to keep the clocks in a distributed system
synchronized.
Rather, it is sufficient to ensure that all events that
occur in a distributed system be totally ordered in a
manner that is consistent with an observed
behaviour.
30. There are several resources in a system that must not
be used simultaneously by multiple processes if
program operation is to be correct.
For example, a file must not be simultaneously
updated by multiple processes.
Similarly, use of unit record peripherals such as tape
drives or printers must be restricted to a single
process at a time.
31. Therefore, exclusive acces to such a shared resource
by a process must be ensured.
This exclusiveness of access is called mutual
exclusion between process.
The section of a program that need exclusive access
to shared resources are referred to as critical
sections.
32. There are three approaches in the mutual exclusion:
1) Centralized approach
2) Distributed approach
3) Token-pausing approach
33. In concurrent computing, a deadlock is a state in
which each member of a group is waiting for another
member, including itself, to take action, such as
sending a message or more commonly releasing a
lock.
34. Request: The process first makes a request for the
resource. If the requested resource is not available.
Allocate: The system allocates the resources to the
requesting process as soon as possible. It maintains a
table in which it records whether each resource is
free or allocated and, if it is allocated.
Release: After the process has finished using the
allocated resource, it releases the resource to the
system.
35. Asking for operator intervention
Termination
Rollback of process
36. Asking for operator Intervention: The simplest way
is to inform the operator that a deadlock has occurred
and to let the operator deal with it manually.
Termination of process: The simplest way to
automatically recover from a deadlock is to
terminate one or more processes and to reclaim the
resources held by them, which can then be
reallocated.
Rollback of process: Killing a process requires its
restart from the very expensive, particularly when
the process has already run for a substantially long
time.
37. Election algorithms are meant for electing a
coordinator process from among the currently
running processes in such a manner that any instance
of time there is a single coordinator for all processes
in the system.
38. 1) Each process in the system has a unique priority
number.
2) Whenever an election is held, the process having the
highest priority number among the currently active
processes is elected as the coordinator.
3) On recovery, a failed process can take appropriate
actions to rejoin the set of active processes.