SlideShare une entreprise Scribd logo
1  sur  19
Introduction toIntroduction to
Distributed SystemsDistributed Systems
V.V. SubrahmanyamV.V. Subrahmanyam
SOCIS, IGNOUSOCIS, IGNOU
Date: 29-02-08Date: 29-02-08
Time: 19-00 to 19-45Time: 19-00 to 19-45
ObjectivesObjectives
 Processor CouplingProcessor Coupling
 Loosely Coupled SystemsLoosely Coupled Systems
 Tightly Coupled SystemsTightly Coupled Systems
 Distributed SystemsDistributed Systems
 Key featuresKey features
 Design goals of Distributed SystemsDesign goals of Distributed Systems
 Design issues involved in DistributedDesign issues involved in Distributed
SystemsSystems
Multiprocessor SystemsMultiprocessor Systems
 Multiprocessing is a general term for theMultiprocessing is a general term for the
use of two or more CPUs for a computeruse of two or more CPUs for a computer
system.system.
 Multiprocessing can vary with context,Multiprocessing can vary with context,
mostly as a function of how CPUs aremostly as a function of how CPUs are
defined.defined.
 The term multiprocessing is sometimesThe term multiprocessing is sometimes
used to refer to the execution of multipleused to refer to the execution of multiple
concurrent s/w processes in a system asconcurrent s/w processes in a system as
opposed to a single process at any oneopposed to a single process at any one
instant.instant.
Contd…Contd…
 Multiprogramming is moreMultiprogramming is more
appropriate to describe this concept,appropriate to describe this concept,
which is implemented mostly inwhich is implemented mostly in
software, whereas multiprocessing issoftware, whereas multiprocessing is
more appropriate to describe the usemore appropriate to describe the use
of multiple hardware CPUs.of multiple hardware CPUs.
 A system can be bothA system can be both
multiprocessing andmultiprocessing and
multiprogramming, only one of themultiprogramming, only one of the
two, or neither of the two.two, or neither of the two.
Processor CouplingProcessor Coupling
 Multiprocessor systems have moreMultiprocessor systems have more
than one processing unit sharingthan one processing unit sharing
memory/peripheral devices. Theymemory/peripheral devices. They
have greater computing power, andhave greater computing power, and
higher reliability. Multiprocessorhigher reliability. Multiprocessor
systems are classified into two:systems are classified into two:
• Tightly-coupledTightly-coupled::
• Loosely-coupled (distributed)Loosely-coupled (distributed): Each: Each
processor has its own memory and copyprocessor has its own memory and copy
of the Operating System.of the Operating System.
Tightly- Coupled SystemsTightly- Coupled Systems
 Each processor is assigned a specific duty butEach processor is assigned a specific duty but
processors work in close association, possiblyprocessors work in close association, possibly
sharing one memory module.sharing one memory module.
 Tightly-coupled multiprocessor systems containTightly-coupled multiprocessor systems contain
multiple CPUs that are connected at the bus level.multiple CPUs that are connected at the bus level.
 These CPUs may have access to a central sharedThese CPUs may have access to a central shared
memory (SMP), or may participate in a memorymemory (SMP), or may participate in a memory
hierarchy with both local and shared memoryhierarchy with both local and shared memory
(NUMA).(NUMA). The IBM p690 RegattaThe IBM p690 Regatta is an example ofis an example of
a high end SMP system.a high end SMP system.
 Mainframe systems with multiple processors areMainframe systems with multiple processors are
often tightly-coupled.often tightly-coupled.
Contd…Contd…
 Tightly-coupled systems perform betterTightly-coupled systems perform better
and are physically smaller than loosely-and are physically smaller than loosely-
coupled systems, but have historicallycoupled systems, but have historically
required greater initial investments andrequired greater initial investments and
may depreciate rapidly.may depreciate rapidly.
 Tightly-coupled systems tend to be muchTightly-coupled systems tend to be much
more energy efficient than clusters. This ismore energy efficient than clusters. This is
due to fact that considerable economiesdue to fact that considerable economies
can be realised by designing componentscan be realised by designing components
to work together from the beginning into work together from the beginning in
tightly-coupled systems.tightly-coupled systems.
Loosely-Coupled SystemsLoosely-Coupled Systems
 Loosely-coupled multiprocessorLoosely-coupled multiprocessor
systems often referred to as clusterssystems often referred to as clusters
are based on multiple standaloneare based on multiple standalone
single or dual processor commoditysingle or dual processor commodity
computers interconnected via a highcomputers interconnected via a high
speed communication system.speed communication system.
 A Linux BeowulfA Linux Beowulf is an example of ais an example of a
loosely-coupled system.loosely-coupled system.
Contd…Contd…
 Nodes in a loosely-coupled systemNodes in a loosely-coupled system
are usually inexpensive commodityare usually inexpensive commodity
computers and can be recycled ascomputers and can be recycled as
independent machines uponindependent machines upon
retirement from the cluster.retirement from the cluster.
 Loosely coupled systems are notLoosely coupled systems are not
much energy efficient whenmuch energy efficient when
compared with tightly coupled.compared with tightly coupled.
Multiprocessor Operating SystemsMultiprocessor Operating Systems
 Multiprocessor operating systems aim to supportMultiprocessor operating systems aim to support
high performance through multiple CPUs.high performance through multiple CPUs.
 An important goal is to make the number of CPUsAn important goal is to make the number of CPUs
transparent to the application.transparent to the application.
 Achieving such transparency is relatively easyAchieving such transparency is relatively easy
because the communication between differentbecause the communication between different
(parts of) applications uses the same primitives(parts of) applications uses the same primitives
as those in multitasking uni-processor operatingas those in multitasking uni-processor operating
systems.systems.
 The idea is that all communication is done byThe idea is that all communication is done by
manipulating data at shared memory locations,manipulating data at shared memory locations,
and that we only have to protect that dataand that we only have to protect that data
against simultaneous access. Protection is doneagainst simultaneous access. Protection is done
through synchronization primitives likethrough synchronization primitives like
semaphores and monitors.semaphores and monitors.
Distributed ComputingDistributed Computing
 Distributed computing is the process ofDistributed computing is the process of
aggregating the power of severalaggregating the power of several
computing entities to collaboratively runcomputing entities to collaboratively run
a computational task in a transparenta computational task in a transparent
and coherent way, so that it appears asand coherent way, so that it appears as
a single, centralized system.a single, centralized system.
 A distributed computer system is aA distributed computer system is a
loosely coupled collection ofloosely coupled collection of
autonomous computers connected by aautonomous computers connected by a
network using system software tonetwork using system software to
produce a single integrated computingproduce a single integrated computing
environment.environment.
Properties of Distributed SystemsProperties of Distributed Systems
 Distributed computing consists of aDistributed computing consists of a
network if more or less independentnetwork if more or less independent
or autonomous nodes.or autonomous nodes.
 The nodes doThe nodes do notnot share primaryshare primary
storage (i.e., RAM) or secondarystorage (i.e., RAM) or secondary
storage (i.e., disk)storage (i.e., disk)
 A well designed distributed systemA well designed distributed system
does not crash if a node goes down.does not crash if a node goes down.
Contd…Contd…
 If you are to perform a computingIf you are to perform a computing
task which is parallel in nature,task which is parallel in nature,
scaling your system is a lot cheaperscaling your system is a lot cheaper
by adding extra nodes, compared toby adding extra nodes, compared to
getting a faster single machine.getting a faster single machine.
 Of course, if your processing task isOf course, if your processing task is
highly non-parallel (every resulthighly non-parallel (every result
depends on the previous), using adepends on the previous), using a
distributed computing system maydistributed computing system may
not be very beneficial.not be very beneficial.
Distributed OS Vs Networking OSDistributed OS Vs Networking OS
 The machines supportingThe machines supporting
a distributed operatinga distributed operating
system are all runningsystem are all running
under a single operatingunder a single operating
system that spans thesystem that spans the
network.network.
 Thus, the print spoolerThus, the print spooler
might, at some instant, bemight, at some instant, be
running on one machine,running on one machine,
while the file system iswhile the file system is
running on others, whilerunning on others, while
other machines areother machines are
running other parts of therunning other parts of the
system, and under somesystem, and under some
distributed operatingdistributed operating
systems, these softwaresystems, these software
parts may at timesparts may at times
migrate from machine tomigrate from machine to
machine.machine.
 With network operatingWith network operating
systems, each machinesystems, each machine
runs an entire operatingruns an entire operating
system.system.
 In contrast, withIn contrast, with
distributed operatingdistributed operating
systems, the entiresystems, the entire
system is itself distributedsystem is itself distributed
across the network.across the network.
Advantages of Distributed Systems overAdvantages of Distributed Systems over
Centralized SystemsCentralized Systems
 Better price/performance than mainframesBetter price/performance than mainframes
 More computing powerMore computing power (parallel processing)(parallel processing)
 Some applications are inherentlySome applications are inherently
distributeddistributed
 Improved reliability because system canImproved reliability because system can
survive crash of one processorsurvive crash of one processor
 Incremental growth can be achieved byIncremental growth can be achieved by
adding one processor at a timeadding one processor at a time
 Shared ownership facilitated.Shared ownership facilitated.
Advantages of Distributed SystemsAdvantages of Distributed Systems
over Isolated PCsover Isolated PCs
 Shared utilization of resources.Shared utilization of resources.
 Communication.Communication.
 Better performance and flexibilityBetter performance and flexibility
than isolated personal computers.than isolated personal computers.
 Simpler maintenance if comparedSimpler maintenance if compared
with individual PC’s.with individual PC’s.
Disadvantages of Distributed SystemsDisadvantages of Distributed Systems
 Network performance parameters.Network performance parameters.
 LatencyLatency: Delay that occurs after a send operation: Delay that occurs after a send operation
is executed before data starts to arrive at theis executed before data starts to arrive at the
destination computer.destination computer.
 Data Transfer RateData Transfer Rate: Speed at which data can be: Speed at which data can be
transferred between two computers oncetransferred between two computers once
transmission has begun.transmission has begun.
 Total network bandwidthTotal network bandwidth: Total volume of traffic: Total volume of traffic
that can be transferred across the network in athat can be transferred across the network in a
give time.give time.
 Dependency on reliability of the underlyingDependency on reliability of the underlying
network.network.
 Higher security risk due to more possible accessHigher security risk due to more possible access
points for intruders and possible communicationpoints for intruders and possible communication
with insecure systems.with insecure systems.
 Software complexity.Software complexity.
Design GoalsDesign Goals
In order to design a good distributedIn order to design a good distributed
system. There are six key design goals.system. There are six key design goals.
They are:They are:
 ConcurrencyConcurrency
 ScalabilityScalability
 OpennessOpenness
 Fault ToleranceFault Tolerance
 Privacy and AuthenticationPrivacy and Authentication
 TransparencyTransparency
Design IssuesDesign Issues
There are certain design issues to beThere are certain design issues to be
considered for distributed systems.considered for distributed systems.
They are:They are:
 NamingNaming
 CommunicationCommunication
 Software StructureSoftware Structure
 Workload AllocationWorkload Allocation
 Consistency MaintenanceConsistency Maintenance

Contenu connexe

Tendances

distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memory
Ashish Kumar
 
Distributed document based system
Distributed document based systemDistributed document based system
Distributed document based system
Chetan Selukar
 
Distributed Server
Distributed ServerDistributed Server
Distributed Server
Rajan Kumar
 

Tendances (20)

03. non-functional-attributes-introduction-4-slides
03. non-functional-attributes-introduction-4-slides03. non-functional-attributes-introduction-4-slides
03. non-functional-attributes-introduction-4-slides
 
Message passing in Distributed Computing Systems
Message passing in Distributed Computing SystemsMessage passing in Distributed Computing Systems
Message passing in Distributed Computing Systems
 
distributed shared memory
 distributed shared memory distributed shared memory
distributed shared memory
 
Distributed document based system
Distributed document based systemDistributed document based system
Distributed document based system
 
3. challenges
3. challenges3. challenges
3. challenges
 
Distributed dbms architectures
Distributed dbms architecturesDistributed dbms architectures
Distributed dbms architectures
 
Distributed Operating Systems
Distributed Operating SystemsDistributed Operating Systems
Distributed Operating Systems
 
Introduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed ComputingIntroduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed Computing
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
Distributed Server
Distributed ServerDistributed Server
Distributed Server
 
Naming in Distributed System
Naming in Distributed SystemNaming in Distributed System
Naming in Distributed System
 
Distributed Operating System_4
Distributed Operating System_4Distributed Operating System_4
Distributed Operating System_4
 
Distributed Computing
Distributed Computing Distributed Computing
Distributed Computing
 
Design issues of dos
Design issues of dosDesign issues of dos
Design issues of dos
 
Distributed System
Distributed SystemDistributed System
Distributed System
 
Lecture 1 (distributed systems)
Lecture 1 (distributed systems)Lecture 1 (distributed systems)
Lecture 1 (distributed systems)
 
Distribution transparency and Distributed transaction
Distribution transparency and Distributed transactionDistribution transparency and Distributed transaction
Distribution transparency and Distributed transaction
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
 
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
 
Distributed Operating System_1
Distributed Operating System_1Distributed Operating System_1
Distributed Operating System_1
 

Similaire à Distributed Systems

CS8603_Notes_003-1_edubuzz360.pdf
CS8603_Notes_003-1_edubuzz360.pdfCS8603_Notes_003-1_edubuzz360.pdf
CS8603_Notes_003-1_edubuzz360.pdf
KishaKiddo
 
Ch1 OS
Ch1 OSCh1 OS
Ch1 OS
C.U
 

Similaire à Distributed Systems (20)

Distributed computing ).ppt him
Distributed computing ).ppt himDistributed computing ).ppt him
Distributed computing ).ppt him
 
Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor Systems
 
ITM(2).ppt
ITM(2).pptITM(2).ppt
ITM(2).ppt
 
Distributed system notes unit I
Distributed system notes unit IDistributed system notes unit I
Distributed system notes unit I
 
Overview of Distributed Systems
Overview of Distributed SystemsOverview of Distributed Systems
Overview of Distributed Systems
 
Operating Systems
Operating SystemsOperating Systems
Operating Systems
 
Types of os
Types of osTypes of os
Types of os
 
Multi processor
Multi processorMulti processor
Multi processor
 
CS8603_Notes_003-1_edubuzz360.pdf
CS8603_Notes_003-1_edubuzz360.pdfCS8603_Notes_003-1_edubuzz360.pdf
CS8603_Notes_003-1_edubuzz360.pdf
 
Multiprocessor Architecture (Advanced computer architecture)
Multiprocessor Architecture  (Advanced computer architecture)Multiprocessor Architecture  (Advanced computer architecture)
Multiprocessor Architecture (Advanced computer architecture)
 
Distributed network
Distributed networkDistributed network
Distributed network
 
OS UNIT1.pptx
OS UNIT1.pptxOS UNIT1.pptx
OS UNIT1.pptx
 
Operating Systems
Operating Systems Operating Systems
Operating Systems
 
Ch1 OS
Ch1 OSCh1 OS
Ch1 OS
 
OS_Ch1
OS_Ch1OS_Ch1
OS_Ch1
 
OSCh1
OSCh1OSCh1
OSCh1
 
Symmetric multiprocessing and Microkernel
Symmetric multiprocessing and MicrokernelSymmetric multiprocessing and Microkernel
Symmetric multiprocessing and Microkernel
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
Clusters
ClustersClusters
Clusters
 
lect 1TO 5.pptx
lect 1TO 5.pptxlect 1TO 5.pptx
lect 1TO 5.pptx
 

Plus de vampugani

Post Graduate Diploma in Computer Applications (PGDCA)
Post Graduate Diploma in Computer Applications (PGDCA)Post Graduate Diploma in Computer Applications (PGDCA)
Post Graduate Diploma in Computer Applications (PGDCA)
vampugani
 

Plus de vampugani (17)

Social media presentation
Social media presentationSocial media presentation
Social media presentation
 
Creating Quick Response(QR) Codes for the OER
Creating Quick Response(QR) Codes for the OERCreating Quick Response(QR) Codes for the OER
Creating Quick Response(QR) Codes for the OER
 
Arithmetic Computation using 2's Complement Notation
Arithmetic Computation using 2's Complement NotationArithmetic Computation using 2's Complement Notation
Arithmetic Computation using 2's Complement Notation
 
Post Graduate Diploma in Computer Applications (PGDCA)
Post Graduate Diploma in Computer Applications (PGDCA)Post Graduate Diploma in Computer Applications (PGDCA)
Post Graduate Diploma in Computer Applications (PGDCA)
 
Protection and Security in Operating Systems
Protection and Security in Operating SystemsProtection and Security in Operating Systems
Protection and Security in Operating Systems
 
Virtual Memory
Virtual MemoryVirtual Memory
Virtual Memory
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
 
Process Scheduling
Process SchedulingProcess Scheduling
Process Scheduling
 
Processes
ProcessesProcesses
Processes
 
Introduction to OS
Introduction to OSIntroduction to OS
Introduction to OS
 
Operating Systems
Operating SystemsOperating Systems
Operating Systems
 
File Management in Operating Systems
File Management in Operating SystemsFile Management in Operating Systems
File Management in Operating Systems
 
Strings in c
Strings in cStrings in c
Strings in c
 
Arrays in c
Arrays in cArrays in c
Arrays in c
 
Control statements and functions in c
Control statements and functions in cControl statements and functions in c
Control statements and functions in c
 
Introduction to C Programming
Introduction to C Programming Introduction to C Programming
Introduction to C Programming
 
Introduction to C Programming - I
Introduction to C Programming - I Introduction to C Programming - I
Introduction to C Programming - I
 

Dernier

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
ssuserdda66b
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Dernier (20)

Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 

Distributed Systems

  • 1. Introduction toIntroduction to Distributed SystemsDistributed Systems V.V. SubrahmanyamV.V. Subrahmanyam SOCIS, IGNOUSOCIS, IGNOU Date: 29-02-08Date: 29-02-08 Time: 19-00 to 19-45Time: 19-00 to 19-45
  • 2. ObjectivesObjectives  Processor CouplingProcessor Coupling  Loosely Coupled SystemsLoosely Coupled Systems  Tightly Coupled SystemsTightly Coupled Systems  Distributed SystemsDistributed Systems  Key featuresKey features  Design goals of Distributed SystemsDesign goals of Distributed Systems  Design issues involved in DistributedDesign issues involved in Distributed SystemsSystems
  • 3. Multiprocessor SystemsMultiprocessor Systems  Multiprocessing is a general term for theMultiprocessing is a general term for the use of two or more CPUs for a computeruse of two or more CPUs for a computer system.system.  Multiprocessing can vary with context,Multiprocessing can vary with context, mostly as a function of how CPUs aremostly as a function of how CPUs are defined.defined.  The term multiprocessing is sometimesThe term multiprocessing is sometimes used to refer to the execution of multipleused to refer to the execution of multiple concurrent s/w processes in a system asconcurrent s/w processes in a system as opposed to a single process at any oneopposed to a single process at any one instant.instant.
  • 4. Contd…Contd…  Multiprogramming is moreMultiprogramming is more appropriate to describe this concept,appropriate to describe this concept, which is implemented mostly inwhich is implemented mostly in software, whereas multiprocessing issoftware, whereas multiprocessing is more appropriate to describe the usemore appropriate to describe the use of multiple hardware CPUs.of multiple hardware CPUs.  A system can be bothA system can be both multiprocessing andmultiprocessing and multiprogramming, only one of themultiprogramming, only one of the two, or neither of the two.two, or neither of the two.
  • 5. Processor CouplingProcessor Coupling  Multiprocessor systems have moreMultiprocessor systems have more than one processing unit sharingthan one processing unit sharing memory/peripheral devices. Theymemory/peripheral devices. They have greater computing power, andhave greater computing power, and higher reliability. Multiprocessorhigher reliability. Multiprocessor systems are classified into two:systems are classified into two: • Tightly-coupledTightly-coupled:: • Loosely-coupled (distributed)Loosely-coupled (distributed): Each: Each processor has its own memory and copyprocessor has its own memory and copy of the Operating System.of the Operating System.
  • 6. Tightly- Coupled SystemsTightly- Coupled Systems  Each processor is assigned a specific duty butEach processor is assigned a specific duty but processors work in close association, possiblyprocessors work in close association, possibly sharing one memory module.sharing one memory module.  Tightly-coupled multiprocessor systems containTightly-coupled multiprocessor systems contain multiple CPUs that are connected at the bus level.multiple CPUs that are connected at the bus level.  These CPUs may have access to a central sharedThese CPUs may have access to a central shared memory (SMP), or may participate in a memorymemory (SMP), or may participate in a memory hierarchy with both local and shared memoryhierarchy with both local and shared memory (NUMA).(NUMA). The IBM p690 RegattaThe IBM p690 Regatta is an example ofis an example of a high end SMP system.a high end SMP system.  Mainframe systems with multiple processors areMainframe systems with multiple processors are often tightly-coupled.often tightly-coupled.
  • 7. Contd…Contd…  Tightly-coupled systems perform betterTightly-coupled systems perform better and are physically smaller than loosely-and are physically smaller than loosely- coupled systems, but have historicallycoupled systems, but have historically required greater initial investments andrequired greater initial investments and may depreciate rapidly.may depreciate rapidly.  Tightly-coupled systems tend to be muchTightly-coupled systems tend to be much more energy efficient than clusters. This ismore energy efficient than clusters. This is due to fact that considerable economiesdue to fact that considerable economies can be realised by designing componentscan be realised by designing components to work together from the beginning into work together from the beginning in tightly-coupled systems.tightly-coupled systems.
  • 8. Loosely-Coupled SystemsLoosely-Coupled Systems  Loosely-coupled multiprocessorLoosely-coupled multiprocessor systems often referred to as clusterssystems often referred to as clusters are based on multiple standaloneare based on multiple standalone single or dual processor commoditysingle or dual processor commodity computers interconnected via a highcomputers interconnected via a high speed communication system.speed communication system.  A Linux BeowulfA Linux Beowulf is an example of ais an example of a loosely-coupled system.loosely-coupled system.
  • 9. Contd…Contd…  Nodes in a loosely-coupled systemNodes in a loosely-coupled system are usually inexpensive commodityare usually inexpensive commodity computers and can be recycled ascomputers and can be recycled as independent machines uponindependent machines upon retirement from the cluster.retirement from the cluster.  Loosely coupled systems are notLoosely coupled systems are not much energy efficient whenmuch energy efficient when compared with tightly coupled.compared with tightly coupled.
  • 10. Multiprocessor Operating SystemsMultiprocessor Operating Systems  Multiprocessor operating systems aim to supportMultiprocessor operating systems aim to support high performance through multiple CPUs.high performance through multiple CPUs.  An important goal is to make the number of CPUsAn important goal is to make the number of CPUs transparent to the application.transparent to the application.  Achieving such transparency is relatively easyAchieving such transparency is relatively easy because the communication between differentbecause the communication between different (parts of) applications uses the same primitives(parts of) applications uses the same primitives as those in multitasking uni-processor operatingas those in multitasking uni-processor operating systems.systems.  The idea is that all communication is done byThe idea is that all communication is done by manipulating data at shared memory locations,manipulating data at shared memory locations, and that we only have to protect that dataand that we only have to protect that data against simultaneous access. Protection is doneagainst simultaneous access. Protection is done through synchronization primitives likethrough synchronization primitives like semaphores and monitors.semaphores and monitors.
  • 11. Distributed ComputingDistributed Computing  Distributed computing is the process ofDistributed computing is the process of aggregating the power of severalaggregating the power of several computing entities to collaboratively runcomputing entities to collaboratively run a computational task in a transparenta computational task in a transparent and coherent way, so that it appears asand coherent way, so that it appears as a single, centralized system.a single, centralized system.  A distributed computer system is aA distributed computer system is a loosely coupled collection ofloosely coupled collection of autonomous computers connected by aautonomous computers connected by a network using system software tonetwork using system software to produce a single integrated computingproduce a single integrated computing environment.environment.
  • 12. Properties of Distributed SystemsProperties of Distributed Systems  Distributed computing consists of aDistributed computing consists of a network if more or less independentnetwork if more or less independent or autonomous nodes.or autonomous nodes.  The nodes doThe nodes do notnot share primaryshare primary storage (i.e., RAM) or secondarystorage (i.e., RAM) or secondary storage (i.e., disk)storage (i.e., disk)  A well designed distributed systemA well designed distributed system does not crash if a node goes down.does not crash if a node goes down.
  • 13. Contd…Contd…  If you are to perform a computingIf you are to perform a computing task which is parallel in nature,task which is parallel in nature, scaling your system is a lot cheaperscaling your system is a lot cheaper by adding extra nodes, compared toby adding extra nodes, compared to getting a faster single machine.getting a faster single machine.  Of course, if your processing task isOf course, if your processing task is highly non-parallel (every resulthighly non-parallel (every result depends on the previous), using adepends on the previous), using a distributed computing system maydistributed computing system may not be very beneficial.not be very beneficial.
  • 14. Distributed OS Vs Networking OSDistributed OS Vs Networking OS  The machines supportingThe machines supporting a distributed operatinga distributed operating system are all runningsystem are all running under a single operatingunder a single operating system that spans thesystem that spans the network.network.  Thus, the print spoolerThus, the print spooler might, at some instant, bemight, at some instant, be running on one machine,running on one machine, while the file system iswhile the file system is running on others, whilerunning on others, while other machines areother machines are running other parts of therunning other parts of the system, and under somesystem, and under some distributed operatingdistributed operating systems, these softwaresystems, these software parts may at timesparts may at times migrate from machine tomigrate from machine to machine.machine.  With network operatingWith network operating systems, each machinesystems, each machine runs an entire operatingruns an entire operating system.system.  In contrast, withIn contrast, with distributed operatingdistributed operating systems, the entiresystems, the entire system is itself distributedsystem is itself distributed across the network.across the network.
  • 15. Advantages of Distributed Systems overAdvantages of Distributed Systems over Centralized SystemsCentralized Systems  Better price/performance than mainframesBetter price/performance than mainframes  More computing powerMore computing power (parallel processing)(parallel processing)  Some applications are inherentlySome applications are inherently distributeddistributed  Improved reliability because system canImproved reliability because system can survive crash of one processorsurvive crash of one processor  Incremental growth can be achieved byIncremental growth can be achieved by adding one processor at a timeadding one processor at a time  Shared ownership facilitated.Shared ownership facilitated.
  • 16. Advantages of Distributed SystemsAdvantages of Distributed Systems over Isolated PCsover Isolated PCs  Shared utilization of resources.Shared utilization of resources.  Communication.Communication.  Better performance and flexibilityBetter performance and flexibility than isolated personal computers.than isolated personal computers.  Simpler maintenance if comparedSimpler maintenance if compared with individual PC’s.with individual PC’s.
  • 17. Disadvantages of Distributed SystemsDisadvantages of Distributed Systems  Network performance parameters.Network performance parameters.  LatencyLatency: Delay that occurs after a send operation: Delay that occurs after a send operation is executed before data starts to arrive at theis executed before data starts to arrive at the destination computer.destination computer.  Data Transfer RateData Transfer Rate: Speed at which data can be: Speed at which data can be transferred between two computers oncetransferred between two computers once transmission has begun.transmission has begun.  Total network bandwidthTotal network bandwidth: Total volume of traffic: Total volume of traffic that can be transferred across the network in athat can be transferred across the network in a give time.give time.  Dependency on reliability of the underlyingDependency on reliability of the underlying network.network.  Higher security risk due to more possible accessHigher security risk due to more possible access points for intruders and possible communicationpoints for intruders and possible communication with insecure systems.with insecure systems.  Software complexity.Software complexity.
  • 18. Design GoalsDesign Goals In order to design a good distributedIn order to design a good distributed system. There are six key design goals.system. There are six key design goals. They are:They are:  ConcurrencyConcurrency  ScalabilityScalability  OpennessOpenness  Fault ToleranceFault Tolerance  Privacy and AuthenticationPrivacy and Authentication  TransparencyTransparency
  • 19. Design IssuesDesign Issues There are certain design issues to beThere are certain design issues to be considered for distributed systems.considered for distributed systems. They are:They are:  NamingNaming  CommunicationCommunication  Software StructureSoftware Structure  Workload AllocationWorkload Allocation  Consistency MaintenanceConsistency Maintenance