IT 386 Final Exam

Ace your homework & exams now with Quizwiz!

Process

- A unit of program execution as seen by an operating system. - A process has its own address space, file handles, security attributes, threads, etc.

Two characteristics of a distributed system

- Collection of autonomous nodes - single coherent system

RMI components: server hosting a remote object

- Construct object implementation - Provide access to methods - Register the object to RMI registry

RMI components: RMI registry

- Each object needs to register location - RMI clients find objects using lookup service

Two approaches to creating java threads

- Extending the thread class - implementing runnable interface

High performance distributed computing systems: Cloud Computing

- Group of high-end systems connected through LAN - Homogenous

Types of Distributed Systems

- High performance distributed computing systems - Distributed information systems - Distributed systems for pervasive computing

How to deal with critical section?

- Java synchronized methods - mutual exclusion (mutex)

Global state of a distributed system

- Local state of each process: messages sent and received - State of each channel: messages sent but not received

Design Goals of DS: Being Scalable three components?

- Size scalability - Geographical scalability - Administrative scalability

Design Goals of DS

- Support resource sharing - Make distribution transparent - Being Open - Being Scalable

Types of Message oriented communication

- Transient messaging - Persistent messaging

RMI components: Client using remote object

- ask registry for location of object (lookup) - Construct stub - call methods via object stub

Which algorithms are used to synchronize clocks?

- berkeley - christian's

RMI server program

- created remote objects - makes references to objects accessible - waits for client to invoke methods on objects

RMI client program

- obtains remote reference to multiple remote objects - invoked methods on them

Uses of parallelism

- operating systems - servers - GUI applications - Solve large problems

Parallel Program Design

- partitioning - communication - Agglomeration - Mapping

RMI components:

- server - RMI registry - client

Types of communication:

-Persistent -Transient

Smallest sequential fraction?

A

What is a distributed system?

A collection of autonomous computing elements that appears to its users as a single coherent system

Thread

A sequential flow of control within a process

Message-oriented communication: Message passing

Basic principles of exchanging messages between two processes using send and receive operations

Parallel Computing

Breaks programs into smaller sequential operations and performs them in parallel.

Unstructured Overlay network

Each node has references to other nodes randomly selected from the system

What are election algorithms used for?

Election algorithms are a technique to pick a unique coordinator(leader).

Consistent Cut

Every message received in the past of a cut, was also sent in the past of that cut

Inconsistent Cut

Every messaged received in the past of a cut, was not also sent in the past of that cut

True or False: In RPC low level massage passing are visible to the programmer.

False

True or False: In a centralized permission-based solution for the mutual exclusion problem, if we have N processes and a process want's access to the exclusive resource there will be N-1 messages exchanged.

False; process does not need to know group members, just the coordinator. It needs two messages to enter, 1 message to exit.

Cloud computing is part of what type of distributed system

High performance distributed systems

Thread methods: void run()

If this thread was constructed using a separate Runnable run object, then that Runnable object's run method is called; otherwise, this method does nothing and returns

Uses of parallelism: Operating systems

Kernel threads to perform multiple tasks simultaneously

Design Goals of DS: Support Resource Sharing

Make it easy for users to access and share remote resources

Design Goals of DS: Make Distribution Transparent

Make it invisible to end users and applications

Being scalable: Geographical scalability

Maximum distance between nodes

Types of communication: Persistent

Message is stored until its delivered to the receiver EX: email

Message oriented middleware (MOM)

Messages are sent to logical contact point (published), and forwarded to subscribed applications

Is Cut 1 consistent?

No

Multiple processes can be executed in a single processor computer. Would you say that these are running in parallel?

No; it is interleaved fashion

Being scalable: Administrative scalability

Number of administrative domains

Being scalable: Size scalability

Number of users and/or processes

Uses of parallelism: GUI applications

One thread is painting images and another is responding to user input

Closed group

Only members of that group can communicate with each other

Sensor networks is an example of which type of distributed system?

Pervasive distributed system

Middleware

Provides means to communicate with each other and let different applications communicate.

Remote Method Invocation (RMI)

RMI is a Java-specific object-oriented extension of the Remote Procedure Call (RPC).

Remote Procedure Call (RPC)

Requests are sent through local procedure call, packaged as message, processed, responded through message, and result returned as return from call.

Asynchronous (nonblocking):

Sender sends a message and then continues (message is temporarily stored)

In RPC what is responsible for unpacking an incoming request and execute a local procedure call.

Server Stub

Uses of parallelism: Solve large problems

Simulate physical and biological systems, graphics, weather forecasting, etc.

___________ is given by the ratio between the sequential execution time and parallel execution time.

Speedup

Message Passing Interface (MPI)

Standard developed to provide message-passing operations with synchronous and asynchronous variants

Message-Queuing System (MOM)

Supports persistent, asynchronous communications

Mutual Exclusion

Techniques to coordinate execution among processes

True or False: A thread dies if its parent process dies

True

True or False: Amdahl's law states that small number of sequential operations can significantly limit speedup achievable by a parallel computer.

True

Is Cut 2 consistent?

Yes

Overlay network

a virtual structure imposed over a physical network

Remote Procedure Call (RPC) goal

allow programs to call procedures located on other machines

RMI allows

an object in one (JVM) to interact with the object in another JVM by invoking the methods in that object.

Open group

any node is allowed to join the distributed system

Thread methods: void start()

causes this thread to begin executing

Messages are then "get from" a

destination queue

Structured Overlay network

each node has a well-defined set of neighbors with whom it can communicate

Clock synchronization: Distributed Systems

each node has own system clock

a scalable system maintains....

efficiency as processors are added

"Parallel" on a single processor is called...

interleaved fashion

Physical clocks

keep time of day (consistent across systems)

Logical clocks

keep track of event ordering (among related (causal) events)

Uses of parallelism: Servers

manage multiple client requests

Scalability of a parallel sysyem:

measure of its ability to increase performance as number of processors increases

Types of communication: Transient

message is stored while the sending and receiving application are executing EX: transport level services

Race condition

occurs when two or more threads try to change shared data at the same time.

Design Goals of DS: Being Open

offers components that easily be used by or integrated into other systems

Client Stub

pack parameters into a message and request to be sent to the server (pack message, send it off, wait for result, unpack result and return to caller)

What type of communication is the diagram?

persistent asynchronous

What type of communication is the diagram?

persistent synchronous

Distributed Pervasive Systems: Ubiquitous Computing Systems

pervasive and continuously present, i.e., there is a continuous interaction between system and user.

Distributed Pervasive Systems: Mobile Computing Systems

pervasive, but emphasis is on the fact that devices are inherently mobile

Distributed Pervasive Systems: Sensor networks

pervasive, with emphasis on the actual (collaborative) sensing and actuation of the environment.

Threads also have their own...

private data

Threads have their own...

program counter and register values, but they share the memory space and other resources of the process.

We can use synchronized methods to ....

protect critical sections

Queues are managed by

queue managers

Speedup

ration between sequential execution time and parallel execution time

Critical section

s a block of code that updates a shared resource that should only be updated by one thread at a time.

Synchronous(blocking)

sending and receiving processes synchronize at request submission, delivery, or after processing by server (response)

Messages are "put int" a

source queue

Amdahl's Law

states that small number of sequential operations can significantly limit speedup achievable by a parallel computer.

How do you deal with race conditions?

synchronization

Sequential computing

the computer executed sequence of instructions of the program in order, one at a time.

RPC: Unmarshalling

the process of disassembling them on arrival to produce an equivalent collection of data items at the destination.

RPC: Marshalling

the process of taking a collection of data items and assembling them into a form suitable for transmission in a message.

Efficiency

the ratio of the speedup and the number of processors

All threads have access to...

the same global, shared memory

What type of communication is the diagram?

transient asynchronous

Thread methods: void join()

waits for this thread to die

Server Stub

will transform requests coming in over the network into local procedure calls (unpack message, call procedure, pack results, send them off)


Related study sets

The Real World SOC-210 Chapter 6 Quiz

View Set

LC27: LearningCurve - Ch. 27: Aggregate Demand and Aggregate Supply

View Set

Life Policy Riders, Provisions, Options, an Exclusions

View Set

Career Planning and Skill Development Unit 7 Lesson 1: Teamwork and Communication

View Set

Intro to Business - Chapter 2 Vocab & Concepts

View Set