ppt

20
1 Computer Science 5204 Operating Systems Fall, 2008 Dr. Dennis Kafura Course Overview

Upload: softwarecentral

Post on 03-Nov-2014

6 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: PPT

1

Computer Science 5204Operating Systems

Fall, 2008

Dr. Dennis KafuraCourse Overview

Page 2: PPT

CS 5204 – Fall, 2008 2

Course Overview

Organization

Reading intensive 36 +/- papers No required text

Balance Theory vs. technology Contemporary vs. classic Survey vs. depth Centralized vs. distributed

Syllabus on web site

Page 3: PPT

CS 5204 – Fall, 2008 3

Course Overview

Course Web site http://courses.cs.vt.edu/~cs5204/kafura-fall08

Page 4: PPT

CS 5204 – Fall, 2008 4

Course Overview

Major Topics

1. Concurrency

2. Security

3. Fault Tolerance

4. Virtualization & File Systems

Page 5: PPT

CS 5204 – Fall, 2008 5

Course Overview

1. Concurrency/Communication

How can concurrent processing be structured on a single processor?

What are alternative syntaxes and semantics for interactions among concurrent entities?

How can concurrency and communication be represented formally?

How can transaction-style semantics be supported locally in hardware or software?

How can transaction semantics be supported in a distributed system?

Page 6: PPT

CS 5204 – Fall, 2008 6

Course Overview

Structuring Activities

. . .

user

kernel

. . .

user

kernel

process-centered thread-centered

Page 7: PPT

CS 5204 – Fall, 2008 7

Course Overview

Threads vs. Events

Threads

Each thread executes all stages of the computation

Communication between stages via run-time stack

Events

Each thread bound to one stage of the computation

Communication between stages via events

Page 8: PPT

CS 5204 – Fall, 2008 8

Course Overview

Language models and syntax

Sequential process

Communication channel

Communicating Sequential Processes

Chords in C#

public class Buffer { public string Get() & public async Put (string s) { return s; } }

Page 9: PPT

CS 5204 – Fall, 2008 9

Course Overview

π-Calculus

An algebra that captures the notions of communication, interaction, and synchronization among concurrently executing entities.

Control

Trans Idtrans

talk1

lose1

switch1

lose2

gain2gain1 Control

IdTrans Trans

talk2

lose1

switch2

lose2

gain2gain1

Page 10: PPT

CS 5204 – Fall, 2008 10

Course Overview

Supporting Transaction Semanticsrepeat {

BeginTransaction(); /* initialize transaction */ <read input values> success = Validate(); /* test if inputs consistent */ if (success) { <generate updates> success = Commit(); /* attempt permanent update */ if (!success) Abort();/* terminate if unable to commit */ } EndTransaction(); /* close transaction */

} until (success);TM Object

Transaction

New Object

Old Object

LocatorTransaction

object data

object data

Page 11: PPT

CS 5204 – Fall, 2008 11

Course Overview

Transaction Model

transaction manager data manager

network

Page 12: PPT

CS 5204 – Fall, 2008 12

Course Overview

2. Security

How can rights for access control be structured for effective use and management?

How can a digital document be “signed” so as to identify authorship?

How can communicating parties be confident of each other’s identities?

How can distributed systems authenticate clients and servers to each other?

How can access policies be expressed and enforced?

Page 13: PPT

CS 5204 – Fall, 2008 13

Course Overview

Security Overview

Certificate Authority

secure communication channel

refers to

private key

server

informationresources

access control

identitypublic key

certificate

issues

trusts/verifies

establish

Page 14: PPT

CS 5204 – Fall, 2008 14

Course Overview

Security in distributed systems

Describe explicit trust relationships Express security token issuance policies Provide security tokens that contain identities, capabilities, and/or delegation

policies Express resource authorization and delegation policies

Page 15: PPT

CS 5204 – Fall, 2008 15

Course Overview

3. Fault Tolerance

How can events be ordered in a distributed system lacking a shared clock?

How can this ordering give rise to a form of virtual time?

What are basic approaches to recovery from failure?

What is the taxonomy of strategies of “backward” recovery?

How can the state of system be captured so that it can be recovered in the event of failure?

How can distributed elements agree on commit to accepting a change in the system state?

Page 16: PPT

CS 5204 – Fall, 2008 16

Course Overview

Event Ordering

How can the events on P be related to the events on Q?

Which events of P “happened before” which events of Q?

When does it matter how we answer these questions?

Q

PP1

Q1

P3P2

Q3Q2

Page 17: PPT

CS 5204 – Fall, 2008 17

Course Overview

Recovery

erroneous state error

valid statefailure

causes

fault

leads to

recovery

An error is a manifestation of a fault that can lead to a failure.

Failure Recovery: • backward recovery

• operation based (do undo redo logs) • state based (checkpoints)

• forward recovery

Page 18: PPT

CS 5204 – Fall, 2008 18

Course Overview

4. Virtualization and File Systems

What are the principles of virtualization?

Why is virtualization difficult to achieve on modern architectures?

What strategies are there for building virtual machine monitors?

How can file systems be structured to handle tera-bytes of information?

How are peer-to-peer (P2P) file systems organized?

Page 19: PPT

CS 5204 – Fall, 2008 19

Course Overview

Virtualization

VMM

Virtual Virtual MachineMachine

Guest OS

Application

Virtual Virtual MachineMachine

Guest OS

Application

Virtual Virtual MachineMachine

Guest OS

Application

RealMachine

Circa 1970s today

Page 20: PPT

CS 5204 – Fall, 2008 20

Course Overview

File Systems

Chord

DHash

CFS

clie

nt

serv

erGoogle File

System

A peer-to-peer file system structure