Distributed Systems - Operating System - Lecture Slides, Slides of Computer Science

These are the Lecture Slides of Operating System which includes Environment, Fundamental Goal, Programs, Time Line, User Programs, Versus, Operating System, Running, Symmetric Multiprocessing etc.Key important points are: Distributed Systems, Shared Memory, Heterogeneous Computer Systems, Computers Connected, Underlying Network, Communication, Message Passing, Efficient, Convenient Access, Potential Advantages

Typology: Slides

2012/2013

Uploaded on 03/27/2013

ekana
ekana šŸ‡®šŸ‡³

4

(44)

370 documents

1 / 30

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
Chapter 16, 17, & 18:
Distributed Systems
•Distributed systems
–No shared memory, no central clock
–Heterogeneous computer systems
•Computers connected by underlying network
•Communication via message passing; Client/server model
–Goal
• Efficient & convenient access to remote resources
–Potential advantages
• Resource sharing, computational speedup, reliability (e.g., fault
tolerance), communication
• Topics
–Network vs. Distributed O/S, Resource Migration
–Distributed file systems
–Distributed Coordination
Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e

Partial preview of the text

Download Distributed Systems - Operating System - Lecture Slides and more Slides Computer Science in PDF only on Docsity!

1

Chapter 16, 17, & 18:

Distributed Systems

  • Distributed systems
    • No shared memory, no central clock
    • Heterogeneous computer systems
      • Computers connected by underlying network
      • Communication via message passing; Client/server model
    • Goal
      • Efficient & convenient access to remote resources
    • Potential advantages
      • Resource sharing, computational speedup, reliability (e.g., fault tolerance), communication
  • Topics
    • Network vs. Distributed O/S, Resource Migration
    • Distributed file systems
    • Distributed Coordination

2

Network vs. Distributed O/S

  • Network operating system
    • Use commands such as ftp and telnet (or ssh) to access remote computers
    • Resource migration under control of user
    • Relatively simple to implement
    • Relatively difficult for user
      • e.g., need to know commands specific to ftp (fetch, get), and commands of host operating system when you use telnet (or ssh)
  • Distributed operating system
    • Users access remote resources in the same way as local resources
    • Resource migration under control of operating system
    • Relatively harder to implement
    • Relatively easier to use

4

Resource Migration - 2

  • Data migration
    • Moving data from one computer to another
    • Entire files or parts of files can be transferred
  • Computation migration
    • Requests for computation (e.g., via RPC) are sent across the network to another computer
    • Results of computation sent back
    • Why migrate computation?
      • Speed of data transfer issues
      • Local computational resources
      • Proprietary data resource
      • Update & synchronization issues
  • Process Migration
    • Sending an entire process from one computer to another across the network
    • Why? Docsity.com

5

World-Wide Web as a

Distributed Computing System

  • Data migration
    • Data is transferred from web server and web client
    • Web pages may be cached
  • Computation migration
    • Web clients trigger database operations on remote systems; e.g., Google search
  • Process Migration
    • Java applets provide a form of process migration
    • Applets are sent from server to client and executed on client

7

Naming

  • ā€œNaming is a mapping between logical and

physical objectsā€ (p. 643)

  • E.g., in your file system labs, the names of your files and your file operations provided a mapping between the logical file and its blocks and bytes on disk
  • The client interface of a Distributed File Systems

(DFS) should not distinguish between local and

remote files

  • Location of files in network are ā€˜hidden’
  • Now, file names don’t just map to blocks and bytes on a physical disk, they also map to a particular computer in the DFS
  • Part of the reason for this is to enable the DFS to

ā€˜transparently’ migrate resources

8

Terminology

  • Location Transparency : name structure of a file

provided by O/S, does not reveal any hint of the

file’s physical storage location

  • O/S maps name to computer & blocks on disk
  • Location of file is fixed over time
  • Location Independence : name of a file does not

need to be changed when the file’s physical

storage location changes

  • A file migration issue
  • O/S maps name to computer & blocks on disk
  • Location of file can change over time
  • Builds on location transparency
  • May need location independent file identifiers Docsity.com

10

Caching in DFS

  • If the data needed to satisfy a file request are not

already on a client system, then a copy of those

data are brought from the server to client system

  • Rationale: to reduce
    • Network traffic
    • Network latency
    • Disk I/O
  • Client method
    • Obtain file blocks from server
    • Retain only recently accessed blocks in local cache
      • Access cached copies of file blocks
      • Use replacement policy (e.g., LRU) for bounded cache size
    • Send blocks back to server if modified
  • When should modified blocks be sent back to

server? Docsity.com

Cache Consistency Problem

  • Multiple copies of the same data on different

computers

  • Need to keep the various copies synchronized (updated)
  • File server data is primary (master) copy
  • Clients have secondary, cached copies

server (^) block i

client (^) block i

client (^) block i

13

Cache Consistency

  • Client needs to decide whether or not a locally

cached copy of the data is consistent with the

current server (master) copy

  • Approaches
    • Client-initiated
      • need to poll server
    • Server-initiated
      • can keep clients informed of changes (ā€œcallbackā€)
      • server needs to record which clients are using which files or parts of files
      • server must be notified for each file open and close, and for file open whether the file is opened for reading or writing
  • Usefulness depends on nature of data and type of

applications

14

Clients information stored by

servers

  • Stateful service
    • Client must perform open/close operations
    • Access by client to file after open proceeds using an identifier
    • Advantage? Disadvantage?
  • Stateless service
    • Each file request is self contained
    • No open file table is necessary
    • Advantage? Disadvantage?

16

Clients & Servers

  • Client workstations
    • Individual users accessing their files
    • Clients may access any file from any workstation, but have better performance when accessing files stored on server for local cluster
  • Servers
    • Computers that support AFS distributed file system
    • Structured into clusters interconnected via a WAN
    • Collection of workstations has their own server, and access on a LAN
    • Cluster connected to WAN via a router

AFS: Local & Shared Name Space

  • Local name space: Client file system
    • Small in size; distinct for each workstation;

system software, temporary files, private local

files

  • Shared name space: DFS
    • Supported by servers
    • Location independent file hierarchy
    • Location information is kept on a volume basis

in a volume-location database replicated on

each server

19

AFS: Callback Mechanism

  • Mechanism used to provide consistency
  • Clients
    • Maintain record of cached files on which callbacks held
    • To open a cached file, it must have a callback on file
    • Without a callback, file is re-cached from server
  • Server
    • Maintains record of clients holding callbacks on specific files
    • When a client closes a file after modification
      • Server revokes callback on that file from all other clients caching this file
      • File data written back to server by modifying client

20

Chapter 18: Distributed

Coordination

  • Centralized synchronization
    • Synchronization amongst processes with shared memory and a shared clock (Chapter 6)
  • Distributed synchronization
    • Synchronization amongst processes with no shared memory and no shared clock
    • Concerns here include fault tolerance
      • In a distributed system, potential for processors/systems to fail independently
      • On a single system, in the case of a hardware crash, all processes will fail together