SlideShare a Scribd company logo
CS 704DAdvanced Operating System(Distributed Computing)Debasis Das
Distributed Computing FundamentalsMIT    CS704D Advanced OS           Class of 20112
Motivations for Distributed ComputingFast but inexpensive processors are available aplentyAvailability of cost effective and efficient communication networks Result is ; distributing the computing load even over large geographical distances is an cost effective option now.MIT    CS704D Advanced OS           Class of 20113
Types of Interconnected MultiprocessorsTightly coupled systemsProcessors in the system operate through a common address space(a common main memory)Loosely couple systemEach processor has its own private memory  and are on different address spacesMIT    CS704D Advanced OS           Class of 20114
Block DiagramsMIT    CS704D Advanced OS           Class of 20115Tightly coupledCPUCPUCPUCPUSystemwideShared memoryLocal MemLocal MemLocal MemLocal MemCPUCPUCPUCPUCommunication NetworkLoosely coupled
A Distributed Computing SystemA collection of processorsInterconnected by a networkEach processor has its own local memory & peripheralsCommunication between processors is by messagesA node is a local processor with its own local memory and peripheralsAll others are “remote” nodesMIT    CS704D Advanced OS           Class of 20116
Distributed System ModelsMinicomputer ModelWorkstation ModelWorkstation-server modelProcessor pool ModelHybrid modelMIT    CS704D Advanced OS           Class of 20117
Minicomputer ModelMIT    CS704D Advanced OS           Class of 20118CommunicationnetworkMinicomputerMinicomputerMinicomputerMinicomputer
Mini-computer ModelA user is connected to his local machineCan access to the remote nodesResource sharingMIT    CS704D Advanced OS           Class of 20119
Workstation ModelMIT    CS704D Advanced OS           Class of 201110WorkstationWSWSComunicationnetworkWSWSWS
Workstation ModelUser submits work to the local workstationIf the local station is not able to manage the processing, it will find one idle machines and transfer processes to other workstationsProblems are How to find an idle WSHow to transfer a process & execute itWhat happens to the remote process if user logs on to an WS that was idle until now and was given for a remote process executionMIT    CS704D Advanced OS           Class of 201111
Workstation-Server modelMIT    CS704D Advanced OS           Class of 201112WSWSWSWSWSWSCommunicationnetworkServerServerServer
Workstation-Server modelAdvantages compared to WS modelCheaper to provides servers with the required services than providing it locally. e.g file servicesAny WS can be used to access the file serversWith diskless workstations, it is easier to maintain a few large disks centrallyProcess migration is not necessary, request response protocol (client server model of communication)User gets guaranteed response time as workstations are not used for remote processes, processing power may be wastedMIT    CS704D Advanced OS           Class of 201113
Processor Pool ModelMIT    CS704D Advanced OS           Class of 201114TerminalsNetRunServerFile Server
Processor Pool ModelCompared to WS-Server modelProvides better resource utilizationAdditional services can be provided without the need for more processorsNot very suitable for high performance interactive ( such as graphics & windowing) applications, WS-server models probably will work betterMIT    CS704D Advanced OS           Class of 201115
Hybrid ModelReal models depend of the workload being handled.The work station server is a model suitable model for users doing most work locally, doing a little bit of interactive work, send emails, execute simple programs etc.Workstation-server configurations may have pools of processors. These pools can be used for jobs that are compute intensiveMIT    CS704D Advanced OS           Class of 201116
Advantages of Distributed Computing SystemsDesign of distributed systems are more complex than centralized ones. That’s because communication and security issues have to be handled additionally. Still the advantages are Applications are inherently distributable in many casesInformation sharingResource sharingBetter price performanceShorter response times, higher throughputsHigher reliabilityExtensibility & incremental growthFlexibility in meeting user needsMIT    CS704D Advanced OS           Class of 201117
Inherently Distributed ApplicationsApplications that need local processing as well as global level processing and viewing requirementsEmployee database of a multi branch companyBankingAirlines ticketingMIT    CS704D Advanced OS           Class of 201118
Information Sharing among Distributed UsersPerson to person communication over distance. In a distributed system work at a local node can be easily shared at remote nodes tooThus users distributed at diverse areas can collaborateGroupware is possible and is a natural for distributed computingMIT    CS704D Advanced OS           Class of 201119
Resource SharingBesides informationSoftware in librariesDatabasesHardware resources can be sharedMIT    CS704D Advanced OS           Class of 201120
Better Price PerformanceIncreasing performance yet falling prices of processorsBetter  & higher speed networks being available at higher reliability yet lower pricesBetter resource sharingMIT    CS704D Advanced OS           Class of 201121
Shorter Response & higher ThroughputIf the problem can be split suitablyMore processors will reduce processing timeThroughput will increaseBetter resource utilizationMIT    CS704D Advanced OS           Class of 201122
Higher ReliabilityRedundant drives,  back up copies etc. can be easily arranged in a distributed systemAvailability is better Fail soft is possible etc.MIT    CS704D Advanced OS           Class of 201123
Extensibility & Incremental GrowthAdditional resources can be added incrementallyAdditional processors can be added when neededAddition of resources does not disrupt the work too muchMIT    CS704D Advanced OS           Class of 201124
Flexibility in Meeting User NeedsOrdinary data processingHigh performance computingWork can be distributed to specialized processing unitFor example, interactive jobs can run on local work stations while processor pools can manage compute intensive jobsMIT    CS704D Advanced OS           Class of 201125
What is a Distributed OS?“ An operating System of is a program that controls the resources of a computer system and provides its users with an interface or virtual machine that is more convenient to use than the bare machine.”- Tannenbaum & Van Renesse [1985]Thus what OS needs to do arePresent users with a VM that is easier to program than the underlying hardwareManage resources, keep track of resource users, track requests, account usage, be the umpire in deciding who gets whatMIT    CS704D Advanced OS           Class of 201126
NOS vs. DOSSystem ImageIn case of NOS it is known to the users that distinct machines working cooperatively through a communication system. Whereas a DOS  provides a single machine imageAutonomySystems are autonomous. In DOS the operating system manages all the machinesFault tolerance capabilityNo fault tolerance, DOS provides high levels of toleranceMIT    CS704D Advanced OS           Class of 201127
Definition of a DOSAgain by Tannenbaum & Van RenesseA distributed OS is one that looks to its users like an ordinary centralized operating system but runs on multiple, independent central processing units. The key concept here is transparency. In other words, the use of multiple processors should be invisible(transparent) to the user. Another way of expressing the same idea is to say that the user views the system as a “virtual uniprocessor”, not as a collection of distinct machines.MIT    CS704D Advanced OS           Class of 201128
DifficultiesDo manage resources optimally, the manager must be aware of the accurate status of every resource. However, a distributed system never has thatResources are physically separatedNo common clockDelivery of message may be delayed or even lostNo accurate status information is thus available, yet the OS has to try and run things optimallyMIT    CS704D Advanced OS           Class of 201129
DOS Design IssuesMIT    CS704D Advanced OS           Class of 201130
Features of a DOSTransparencyReliabilityFlexibilityPerformanceScalabilityHeterogeneitySecurityEmulation of existing OSMIT    CS704D Advanced OS           Class of 201131
TransparencyAccess transparencyUniform access whether remote or local; uniform system calls and naming conventionsLocation transparencyName  transparency & user mobilityReplication transparencyNaming & replication controlFailure transparencyRedundancy; servers, communication etc.Migration transparencyAutomatic, no name change, message passing (receiver has migrated)Concurrency transparencyEvent driven ordering, mutual exclusion, no-starvationPerformance transparencyAuto reconfig, scaling should not cause disruptionMIT    CS704D Advanced OS           Class of 201132
ReliabilityFaults can be fail-stop or Byzantine; prevention includesFault AvoidanceGood design practices, low failure components, redundancy etc.Fault ToleranceRedundancy, distributed controlFault Detection & RecoveryAtomic transactions, stateless servers, ack & time out based messagesMIT    CS704D Advanced OS           Class of 201133
FlexibilityEase of modificationsWhen required it should be easy to modify sub-systemsEase of enhancementWhen required it should be easy to enhance featuresStructure of the kernelMonolithic kernel or a microkernelModular, server based services, easy to implement and modifyThere is a small performance penaltyMIT    CS704D Advanced OS           Class of 201134
PerformanceBatch, if possibleCache whenever possibleMinimize copying of dataMinimize network trafficTake advantage of fine grained parallelism for multiprocessingMIT    CS704D Advanced OS           Class of 201135
ScalabilityAvoid centralized entitiesAvoid centralized algorithmsPerform most operations on client workstationsMIT    CS704D Advanced OS           Class of 201136
HeterogeneityFormat related issues could be a big hurdleFormat interchange conversions will have to be supportedBetter to have an intermediate internal formatMIT    CS704D Advanced OS           Class of 201137
SecuritySender needs to know the right receiver received the messageThe receiver needs to have assurance that a genuine sender sent the  messageBoth sender and receiver need to be assured that the contents  of the message was not tampered  with during transmissionMIT    CS704D Advanced OS           Class of 201138
Emulation of Existing Operating SystemNew developments will use the API of the new OSNecessary for the ability to run existing applicationsBackward compatibilityMIT    CS704D Advanced OS           Class of 201139

More Related Content

PPT
Distributed Systems Architecture in Software Engineering SE11
PPTX
Distributed architecture (SAD)
PPTX
Distributed Systems - Information Technology
PPTX
Cs 704 d dce ipc-msgpassing
PPTX
Distributed computing environment
PPT
Jms intro
PPTX
Aos distibutted system
PDF
XenDesktop 7 Blueprint
Distributed Systems Architecture in Software Engineering SE11
Distributed architecture (SAD)
Distributed Systems - Information Technology
Cs 704 d dce ipc-msgpassing
Distributed computing environment
Jms intro
Aos distibutted system
XenDesktop 7 Blueprint

What's hot (20)

PPTX
ISBG 2015 - Infrastructure Assessment - Analyze, Visualize and Optimize
PPT
Distributed information sys
PPT
Client server computing in mobile environments
PPTX
Distributed information system
PPTX
PPT
Topic1 Understanding Distributed Information Systems
PPTX
Introduction to Distributed System
PPT
1. Overview of Distributed Systems
PDF
CSI-503 - 11.Distributed Operating System
PDF
Intro ds 1
PPT
Chapter 1
PDF
Client server-computing
PPT
Distributed network
DOCX
Client server computing_keypoint_and_questions
PDF
Client server computing
PPTX
Design patterns of Distributed Systems
PPTX
Distributed Operating System
DOCX
Cloud computing notes unit II
PPT
Components of client server application
ISBG 2015 - Infrastructure Assessment - Analyze, Visualize and Optimize
Distributed information sys
Client server computing in mobile environments
Distributed information system
Topic1 Understanding Distributed Information Systems
Introduction to Distributed System
1. Overview of Distributed Systems
CSI-503 - 11.Distributed Operating System
Intro ds 1
Chapter 1
Client server-computing
Distributed network
Client server computing_keypoint_and_questions
Client server computing
Design patterns of Distributed Systems
Distributed Operating System
Cloud computing notes unit II
Components of client server application
Ad

Similar to Cs 704 d set4distributedcomputing-1funda (20)

PPT
Introduction distributed system modernss
PPT
lec3_10.ppt
PPT
CH12.ppt
PPT
Introduction To .Net Compact Framework and SQL Server CE Development
PPTX
Dos unit1
PPTX
Distributed Systems.pptx
PPT
Wk6a
PPT
Advanced Operating System- Introduction
PPTX
Chapter 1-Introduction to distributed system.pptx
PPT
DISTRIBUTED SYSTEMS lecture notes 25 .ppt
PDF
chapter 1-Introductionkkkclll;;;x;lc,.pdf
PPTX
Future prediction-ds
PPTX
Intro to distributed systems
PDF
Introduction to paralle and distributed computing
PPTX
Distributed Computing system
PPTX
The Art of IOS and Distributed System IO
PPTX
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
PPTX
Software_Defined_Networking.pptx
PPTX
Cloud Computing
PPT
Distributed Processing
Introduction distributed system modernss
lec3_10.ppt
CH12.ppt
Introduction To .Net Compact Framework and SQL Server CE Development
Dos unit1
Distributed Systems.pptx
Wk6a
Advanced Operating System- Introduction
Chapter 1-Introduction to distributed system.pptx
DISTRIBUTED SYSTEMS lecture notes 25 .ppt
chapter 1-Introductionkkkclll;;;x;lc,.pdf
Future prediction-ds
Intro to distributed systems
Introduction to paralle and distributed computing
Distributed Computing system
The Art of IOS and Distributed System IO
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
Software_Defined_Networking.pptx
Cloud Computing
Distributed Processing
Ad

More from Debasis Das (20)

PPTX
Developing robust & enterprise io t applications
PPTX
IoT: An Introduction and Getting Started Session
PPTX
Development eco-system in free-source for io t
PPTX
Microprocessors & microcontrollers- The design Context
PPT
Management control systems jsb 606 part4
PPT
Management control systems jsb 606 part3
PPT
Management control systems jsb 606 part2
PPTX
Management control systems jsb 606 part1
PPT
Computers for management jsb 1072003 ver
PPTX
Trends in education management
PPTX
Ei502microprocessorsmicrtocontrollerspart4 8051 Microcontroller
PPTX
Ei502microprocessorsmicrtocontrollerspart5 sixteen bit8086 1
PPTX
Ei502 microprocessors & micrtocontrollers part3hardwareinterfacing
PPTX
Ei502 microprocessors & micrtocontrollers part 2(instructionset)
PPTX
Ei502 microprocessors & micrtocontrollers part 1
PPTX
It802 d mobilecommunicationspart4
PPTX
It802 d mobilecommunicationspart3
PPTX
It 802 d_Mobile Communications_part 2
PPTX
It 802 d_Mobile Communications_part 2
PPT
It 802 d_mobile_communicationsSomeHistory
Developing robust & enterprise io t applications
IoT: An Introduction and Getting Started Session
Development eco-system in free-source for io t
Microprocessors & microcontrollers- The design Context
Management control systems jsb 606 part4
Management control systems jsb 606 part3
Management control systems jsb 606 part2
Management control systems jsb 606 part1
Computers for management jsb 1072003 ver
Trends in education management
Ei502microprocessorsmicrtocontrollerspart4 8051 Microcontroller
Ei502microprocessorsmicrtocontrollerspart5 sixteen bit8086 1
Ei502 microprocessors & micrtocontrollers part3hardwareinterfacing
Ei502 microprocessors & micrtocontrollers part 2(instructionset)
Ei502 microprocessors & micrtocontrollers part 1
It802 d mobilecommunicationspart4
It802 d mobilecommunicationspart3
It 802 d_Mobile Communications_part 2
It 802 d_Mobile Communications_part 2
It 802 d_mobile_communicationsSomeHistory

Cs 704 d set4distributedcomputing-1funda

  • 1. CS 704DAdvanced Operating System(Distributed Computing)Debasis Das
  • 2. Distributed Computing FundamentalsMIT CS704D Advanced OS Class of 20112
  • 3. Motivations for Distributed ComputingFast but inexpensive processors are available aplentyAvailability of cost effective and efficient communication networks Result is ; distributing the computing load even over large geographical distances is an cost effective option now.MIT CS704D Advanced OS Class of 20113
  • 4. Types of Interconnected MultiprocessorsTightly coupled systemsProcessors in the system operate through a common address space(a common main memory)Loosely couple systemEach processor has its own private memory and are on different address spacesMIT CS704D Advanced OS Class of 20114
  • 5. Block DiagramsMIT CS704D Advanced OS Class of 20115Tightly coupledCPUCPUCPUCPUSystemwideShared memoryLocal MemLocal MemLocal MemLocal MemCPUCPUCPUCPUCommunication NetworkLoosely coupled
  • 6. A Distributed Computing SystemA collection of processorsInterconnected by a networkEach processor has its own local memory & peripheralsCommunication between processors is by messagesA node is a local processor with its own local memory and peripheralsAll others are “remote” nodesMIT CS704D Advanced OS Class of 20116
  • 7. Distributed System ModelsMinicomputer ModelWorkstation ModelWorkstation-server modelProcessor pool ModelHybrid modelMIT CS704D Advanced OS Class of 20117
  • 8. Minicomputer ModelMIT CS704D Advanced OS Class of 20118CommunicationnetworkMinicomputerMinicomputerMinicomputerMinicomputer
  • 9. Mini-computer ModelA user is connected to his local machineCan access to the remote nodesResource sharingMIT CS704D Advanced OS Class of 20119
  • 10. Workstation ModelMIT CS704D Advanced OS Class of 201110WorkstationWSWSComunicationnetworkWSWSWS
  • 11. Workstation ModelUser submits work to the local workstationIf the local station is not able to manage the processing, it will find one idle machines and transfer processes to other workstationsProblems are How to find an idle WSHow to transfer a process & execute itWhat happens to the remote process if user logs on to an WS that was idle until now and was given for a remote process executionMIT CS704D Advanced OS Class of 201111
  • 12. Workstation-Server modelMIT CS704D Advanced OS Class of 201112WSWSWSWSWSWSCommunicationnetworkServerServerServer
  • 13. Workstation-Server modelAdvantages compared to WS modelCheaper to provides servers with the required services than providing it locally. e.g file servicesAny WS can be used to access the file serversWith diskless workstations, it is easier to maintain a few large disks centrallyProcess migration is not necessary, request response protocol (client server model of communication)User gets guaranteed response time as workstations are not used for remote processes, processing power may be wastedMIT CS704D Advanced OS Class of 201113
  • 14. Processor Pool ModelMIT CS704D Advanced OS Class of 201114TerminalsNetRunServerFile Server
  • 15. Processor Pool ModelCompared to WS-Server modelProvides better resource utilizationAdditional services can be provided without the need for more processorsNot very suitable for high performance interactive ( such as graphics & windowing) applications, WS-server models probably will work betterMIT CS704D Advanced OS Class of 201115
  • 16. Hybrid ModelReal models depend of the workload being handled.The work station server is a model suitable model for users doing most work locally, doing a little bit of interactive work, send emails, execute simple programs etc.Workstation-server configurations may have pools of processors. These pools can be used for jobs that are compute intensiveMIT CS704D Advanced OS Class of 201116
  • 17. Advantages of Distributed Computing SystemsDesign of distributed systems are more complex than centralized ones. That’s because communication and security issues have to be handled additionally. Still the advantages are Applications are inherently distributable in many casesInformation sharingResource sharingBetter price performanceShorter response times, higher throughputsHigher reliabilityExtensibility & incremental growthFlexibility in meeting user needsMIT CS704D Advanced OS Class of 201117
  • 18. Inherently Distributed ApplicationsApplications that need local processing as well as global level processing and viewing requirementsEmployee database of a multi branch companyBankingAirlines ticketingMIT CS704D Advanced OS Class of 201118
  • 19. Information Sharing among Distributed UsersPerson to person communication over distance. In a distributed system work at a local node can be easily shared at remote nodes tooThus users distributed at diverse areas can collaborateGroupware is possible and is a natural for distributed computingMIT CS704D Advanced OS Class of 201119
  • 20. Resource SharingBesides informationSoftware in librariesDatabasesHardware resources can be sharedMIT CS704D Advanced OS Class of 201120
  • 21. Better Price PerformanceIncreasing performance yet falling prices of processorsBetter & higher speed networks being available at higher reliability yet lower pricesBetter resource sharingMIT CS704D Advanced OS Class of 201121
  • 22. Shorter Response & higher ThroughputIf the problem can be split suitablyMore processors will reduce processing timeThroughput will increaseBetter resource utilizationMIT CS704D Advanced OS Class of 201122
  • 23. Higher ReliabilityRedundant drives, back up copies etc. can be easily arranged in a distributed systemAvailability is better Fail soft is possible etc.MIT CS704D Advanced OS Class of 201123
  • 24. Extensibility & Incremental GrowthAdditional resources can be added incrementallyAdditional processors can be added when neededAddition of resources does not disrupt the work too muchMIT CS704D Advanced OS Class of 201124
  • 25. Flexibility in Meeting User NeedsOrdinary data processingHigh performance computingWork can be distributed to specialized processing unitFor example, interactive jobs can run on local work stations while processor pools can manage compute intensive jobsMIT CS704D Advanced OS Class of 201125
  • 26. What is a Distributed OS?“ An operating System of is a program that controls the resources of a computer system and provides its users with an interface or virtual machine that is more convenient to use than the bare machine.”- Tannenbaum & Van Renesse [1985]Thus what OS needs to do arePresent users with a VM that is easier to program than the underlying hardwareManage resources, keep track of resource users, track requests, account usage, be the umpire in deciding who gets whatMIT CS704D Advanced OS Class of 201126
  • 27. NOS vs. DOSSystem ImageIn case of NOS it is known to the users that distinct machines working cooperatively through a communication system. Whereas a DOS provides a single machine imageAutonomySystems are autonomous. In DOS the operating system manages all the machinesFault tolerance capabilityNo fault tolerance, DOS provides high levels of toleranceMIT CS704D Advanced OS Class of 201127
  • 28. Definition of a DOSAgain by Tannenbaum & Van RenesseA distributed OS is one that looks to its users like an ordinary centralized operating system but runs on multiple, independent central processing units. The key concept here is transparency. In other words, the use of multiple processors should be invisible(transparent) to the user. Another way of expressing the same idea is to say that the user views the system as a “virtual uniprocessor”, not as a collection of distinct machines.MIT CS704D Advanced OS Class of 201128
  • 29. DifficultiesDo manage resources optimally, the manager must be aware of the accurate status of every resource. However, a distributed system never has thatResources are physically separatedNo common clockDelivery of message may be delayed or even lostNo accurate status information is thus available, yet the OS has to try and run things optimallyMIT CS704D Advanced OS Class of 201129
  • 30. DOS Design IssuesMIT CS704D Advanced OS Class of 201130
  • 31. Features of a DOSTransparencyReliabilityFlexibilityPerformanceScalabilityHeterogeneitySecurityEmulation of existing OSMIT CS704D Advanced OS Class of 201131
  • 32. TransparencyAccess transparencyUniform access whether remote or local; uniform system calls and naming conventionsLocation transparencyName transparency & user mobilityReplication transparencyNaming & replication controlFailure transparencyRedundancy; servers, communication etc.Migration transparencyAutomatic, no name change, message passing (receiver has migrated)Concurrency transparencyEvent driven ordering, mutual exclusion, no-starvationPerformance transparencyAuto reconfig, scaling should not cause disruptionMIT CS704D Advanced OS Class of 201132
  • 33. ReliabilityFaults can be fail-stop or Byzantine; prevention includesFault AvoidanceGood design practices, low failure components, redundancy etc.Fault ToleranceRedundancy, distributed controlFault Detection & RecoveryAtomic transactions, stateless servers, ack & time out based messagesMIT CS704D Advanced OS Class of 201133
  • 34. FlexibilityEase of modificationsWhen required it should be easy to modify sub-systemsEase of enhancementWhen required it should be easy to enhance featuresStructure of the kernelMonolithic kernel or a microkernelModular, server based services, easy to implement and modifyThere is a small performance penaltyMIT CS704D Advanced OS Class of 201134
  • 35. PerformanceBatch, if possibleCache whenever possibleMinimize copying of dataMinimize network trafficTake advantage of fine grained parallelism for multiprocessingMIT CS704D Advanced OS Class of 201135
  • 36. ScalabilityAvoid centralized entitiesAvoid centralized algorithmsPerform most operations on client workstationsMIT CS704D Advanced OS Class of 201136
  • 37. HeterogeneityFormat related issues could be a big hurdleFormat interchange conversions will have to be supportedBetter to have an intermediate internal formatMIT CS704D Advanced OS Class of 201137
  • 38. SecuritySender needs to know the right receiver received the messageThe receiver needs to have assurance that a genuine sender sent the messageBoth sender and receiver need to be assured that the contents of the message was not tampered with during transmissionMIT CS704D Advanced OS Class of 201138
  • 39. Emulation of Existing Operating SystemNew developments will use the API of the new OSNecessary for the ability to run existing applicationsBackward compatibilityMIT CS704D Advanced OS Class of 201139