2. ● Resource Management is the dynamic
allocation and de-allocation of resources by
an OS to processes that compete for those
resources.
● Distributed systems contain a set of resources
interconnected by a network
● Processes are migrated to fulfill their resource
requirements
● Resource manager control the assignment of
resources to processes
● Resources can be logical (shared file) or
physical (CPU)
4. Each process submitted is viewed as a
collection of related tasks.
Tasks are scheduled to suitable nodes to
improve performance.
Assumptions of task assignment:
A process has already been split into pieces (task)
Amount of comp. and the speed of node is known
The cost of processing each task is known
The IPC cost between every pair of task is known
Precedence relation among the tasks are known
Reassignment of task is not possible
5. Inter-task Communication Cost (cij)
t1 t2 T3 t4
t1 0 35 3 8
t2 35 0 6 4
t3 3 6 0 23
t4 8 4 23 0
Arbitrary Assignment
Task Node
t1 n2
t2 n2
t3 n2
t4 n3
Optimal Assignment
Task Node
t1 n2
t2 n2
t3 n1
t4 n1
Execution Costs(xab)
Task
Nodes
n1 n2 n3
t1 31 4 14
t2 1 5 6
t3 2 4 ∞
t4 3 28 10
An infinite cost for a
particular task against a
particular node indicate that
the task cannot be executed
on that node due to the
task's requirement of
specific resources that are
not available on that node.
Cost of arbitrary assignment (Total execution and communication cost) = x12 + x22 +
x32 + x43+ c14 + c24 + c34 = 4 + 5 + 10 + 8 + 4 + 23 = 58
Cost of optimal assignment (total execution and communication cost) = x12 + x22 + x31
+ x41+ c13 + c23 + c14 + c24 = 4 + 5 + 2 + 3 + 3 + 6 + 8 + 4 = 38
6. Processes submitted by the user are distributed
among the nodes of the system so as to equalize
the workload among the nodes.
The goal of load-balancing algorithm is to
maintain that each node is neither overloaded
nor idle in order to obtain maximum
performance of the system
Load-balancing Approach is of two types:-
Static Load-balancing
Dynamic Load-balancing
7. – The processes are assign to each nodes at the compile time
according to the performance of the nodes.
– Once the processes are assigned, no change or
reassignment is possible in the run time.
– Number of jobs in each node is fixed and the algorithm do
not collect any information about the nodes.
– The assignment of jobs is done to the processing nodes on
the basis of the following factors: incoming time, extent of
resource needed, mean execution time and inter-process
communication.
– Since these factors should be measured before the
assignment , this is why is called probabilistic algorithm
8. – In dynamic load-balancing algorithm the assignment is done at
the run time.
– Jobs are reassigned at the run time depending upon the situation
that is the load will be transferred from heavily loaded nodes to
the lightly loaded nodes.
– In dynamic load balancing no decision is taken until the process
gets execution.
– This strategy collect the information about the system state and
about the job information.
– As more information is collected by an algorithm in a short
time, potentially the algorithm can make better decision.
– Dynamic approach is mostly considered in heterogeneous
system because it consists of nodes with different speeds,
different memory sizes and different communication link speed
9. – Load balancing approaches attempt to equalize the
workload on all the nodes of a system by
gathering state information
– Load sharing algorithms do not attempt to balance
the average workload on all nodes, they only
ensure that no node is idle or heavily loaded
– Policies for load sharing approach are the same as
load balancing polices, they include load
estimation policy, process transfer policy, location
policy and state information exchange, they differ
in location policy
10. ● No prior knowledge about processes
User does not want to specify information
about characteristic and requirements
● Dynamic in nature
Decision should be made base on changing
load of nodes and not fixed static policy
● Quick decision-making capability
Algorithm must make quick decision about
the assignment of task to nodes of system
11. ● Balanced system performance and scheduling
overhead
Great amount of information gives more intelligent
decision, but increases overhead
● Stability
✔ Unstable when all processes are migrating
without accomplishing any useful work
✔ It occurs when the nodes turn from lightly-
loaded to heavily-loaded state and vice verse
12. ● Scalability
A scheduling algorithm should be capable of
handling small as well as large networks
● Fault tolerance
Should be capable of working after the crash of one
or more nodes of the system
● Fairness of service
More users initiating equivalent processes expect to
receive the same quality of service
13. To make accessibility of data in distributed
environment and mange the resources over the
autonomous network system, we have to
maintain such a system which is efficient,
flexible, portable and secure.