Lecture for Chapter 5.6 (Fall 11)

advertisement
Distributed Process Scheduling
Summery
BY:-Yonatan Negash
Title…

1

2. Objectives

3.Static Process Scheduling

4.Dynamic Load Sharing and Balancing

5.Distributed Process Implementation

6.Future work

7.Reference
. Definition
Definition
1.Distribute process scheduling

A distributed system is a collection of autonomous computers linked by a computer
network that appear to the users of the system as a single computer
2.Some important term on this chapter

CPU utilization – keep the CPU as busy as possible

Throughput – # of processes that complete their

Turnaround time – amount of time to execute a particular process

Waiting time – amount of time a process has been waiting in the ready queue

execution per time unit
Response time – amount of time it takes from when a request was submitted until the
first response is produced, not output (for timesharing environment)
Objectives
◦
The primary objective of scheduling is to enhance overall system performance metrics
*** such as:- 1.process completion time and
2. processor utilization.
◦
The existence of multiple processing nodes in distributed systems present a challenging problem for
scheduling processes onto processors and vice versa.
Why a Distributed System?








Resource sharing
◦
Specialized hardware
◦
Data/Database
Computation speedup
◦
Partitioning computations allowing concurrent processing
◦
Load balancing
Reliability
◦ In event of system resource failure, shift its processing load to another similar resource.
Allows collaboration, information exchange irrespective of geographical location(banking , reservation systems)
Doing tasks faster by doing them in parallel
Avoiding a single point of failure
Incremental Growth
Facilitates human to human communication
Why scheduling?
Before processes can execute, they need to be:
Scheduled and

Allocated with resources.
Why scheduling?
1.To enhance overall system performance metrics like:

Process completion time and

Processor utilization.
2. To achieve location and performance transparencies by distributed process scheduling.
Disadvantages of Distributed
Systems




Difficulties of developing distributed software
Networking Problems
Security problems[B. Karp, S. Hailes]
Distributed Operating System Goals:
 Efficiency
 Consistency
 Robustness
The existence of multiple processing nodes in distributed systems present a challenging problem for
scheduling processes onto processors and vice versa.

If processes are not constrained by precedence relations and are free to be redistributed or moved around
among processors in the system, performance can be further improved by sharing the workload

statically - load sharing

dynamically - load balancing
Static Process Scheduling

Scheduling a set of partially ordered tasks on a nonpreemtive multiprocessor system of identical
processors to minimize the overall finishing time (makespan)

Is used to find optimal solution to the problem.

There are two extreme cases of work assignment.

mapping of processes is done before execution of the processes. once process started it stays at
the processor until completion of the process. And never preempted.

Decentralized and non –Adaptive are the drawbacks of Static process scheduling.

Program is represented by a directed acyclic graph (DAG)

Computational model--this model is used to describe scheduling for ‘program’ which consists
of several sub-tasks.The schedulable unit is sub-tasks.

Primary objective of task scheduling is to achieve maximal concurrency for task execution
within a program.

Scheduling goal: minimize the makespan time.
Dynamic load sharing and Balancing

Load balancing can be defined as a technique to distribute work between many computers processes or
any other resources to get optimal resource utilization.

controller reduces the process idling through load sharing ie,by joining the shortest queue and
equalizing queue sizes by load balancing.

Further, processes can be allowed to move from longer queue to shorter queue through load
Redistribution.

No prior knowledge is assumed
– Scheduling need to be dynamic
– Assignment decision made locally

Based on disjoint process model

Performance goal for scheduling is the high utilization of the system and equal fairness of user
processes

Solutions without a centralized controller: sender- and receiver-initiated algorithms.
Distributed process implementation

Remote Service:-The message is interpreted as a request for a known service at the remote site

Three different software levels:As remote procedure calls at the language level.
As remote commands at the operating system level.
As interpretive messages at the application level
.
Depending on how the request messages are interpreted,
there are three main application scenarios:

Remote Service
◦ The message is interpreted as a request for a known service at the remote site.

Remote Execution
 The messages contain a program to be executed at the remote site.

Process Migration

The messages represent a process being migrated to a remote site for continuing
execution.
the
Future work
A. The problem of process distribution in a computer network can be formulated as a
distributed search process.

The goal is to find those processors which can execute the processes in the most costefficient way.

Present a modified version of the AO*algorithm using statistical data as a heuristic
function. Based on previous observations of processors' efficiency in process execution
the search will focus on the most promising search path to locate appropriate
processors.(Gyires,T 1995)

A new process scheduling queue system called the distributed queue tree (DQT) for a
distributed memory, dynamically partitionable parallel machines was proposed.

The combination of dynamically nested partitioning and time-sharing scheduling may provide an
interactive environment and higher processor utilization.

The key idea of DQT is to distribute process scheduling (Hori, A.;1995) queues to each partition.

A round-robin scheduling algorithm and several task allocation policies on DQT was proposed .
Future work
B***Distributed Immune Systems for Wireless Networks
1.
Continuous Monitoring of the Network
2.Formal and Statistical Models for Detection and Security Problems
***
Synopsis: We are interested in detecting and signaling anomalies in the network by the use of sequential probability
ratio tests. Some examples we are looking at are detecting distributed attacks in fixed networks and routing attacks for ad hoc
wireless networks.
3.Communication-Friendly Encryption of Multimedia
4 and Other area

Continuous Monitoring of the Network

Formal and Statistical Models for Detection and Security Problems

Machine Learning Methods for Intrusion Detection

Detection and Classification of Known and Unknown Attacks

Covert Information Transmission in Wireless Systems

Communication-Friendly Encryption of Multimedia

Cooperation Intrusion Detection Databases with Aggregates on Shadow Security Networks

Reference
[1].http://www.google.com
[2]. Randy Chow, Theodore Johnson, “Distributed Operating Systems & Algorithms”, Addison Wesley.(all diagrams)
[3]. http://www.isr.umd.edu/Labs/SEIL/Research_Projects/CurrentProjects/wireless_security.html#Continous
monitoring
?
Thanks
Download