STUDY QUESTIONS: TEST 1



STUDY QUESTIONS: TEST 1 – SPRING 2012

The test covers the review notes from lecture 1; kernel architectures, including the papers on microkernels, extensible architectures, and virtual machines; and selected sections from Chapters 1, 2, 3, and 4 in the text. You will not be responsible for material that was not covered in class, even if it is in the Power Points. Review your homework .

The questions highlight important concepts for you to understand. The questions on the test probably won’t look exactly like the ones on the study guide. Some will show up as multiple choice questions, for example.

Introduction/Review

• Be able to define system call, mode switch, and context switch. Know the purpose of each.

• Be able to define process. Be able to reproduce the process state transition diagram and describe the characteristics of each state and the kinds of events that cause state transitions.

• Understand the concept of concurrent execution, on a single processor system and on a multiprocessor.

• What is the difference between a thread and a process? In what ways are multi-threaded processes “better” than single-threaded processes? What is the difference between a kernel-level thread and a user-level thread? (See Chapter 3 notes for some of this)

• What is the difference between preemptive and non-preemptive scheduling?

Kernel Architectures

• Give a simple description of microkernel architectures.

• What are the potential benefits of microkernels?

• Why did Liedtke think some microkernel architectures were unsuccessful in realizing the potential advantages?

• Be able to describe the motivation for extensible architectures such as SPIN and the Exokernel approach. (What problem do they address?)

• Explain the basic idea of an extension, as implemented in SPIN

• Explain the basic idea of a library operating system, as implemented in Exokernel

• Be able to explain liability inversion.

Virtual Machine Monitors

• Be able to define virtual machine and virtual machine monitor. Know the difference between full virtualization and paravirtualization. How does paravirtualization affect the guest operating systems? How does it affect the applications that run on the guest operating systems?

• What is the difference between paravirtualization and binary translation?

• Understand in general how virtual machines & VMMs work (responsibilities of each). For example, understand the idea of virtualizing the CPU

• What is the difference between a system virtual machine and a process virtual machine?

• What are the benefits of virtual machine technology? In particular, what advantages do they offer for distributed systems?

• Most virtual machine monitors run directly on the bare hardware (bare metal VMMs) but some (notably VMware) can run on top of an installed operating system (hosted VMMs). What are the pros and cons of this approach?

Chapter 1 & 2: Distributed Systems – Introduction and Architectures

• What is middleware? How does it contribute to transparency (single system image) in distributed systems?

• Be able to list/briefly describe/identify four distributed system goals.

• Be able to define transparency and define or identify various types, particularly location transparency (sometimes known as location independence)

• What are the different dimensions of scalability (size, geographical extent, administrative domains) and how can they be addressed?

• Compare caching and replication in distributed systems. Be able to discuss the advantages and disadvantages of each technique.

• Be able to define cluster computer and grid computer systems and list some of their characteristics

• What is a transaction? List, briefly define its four distinguishing characteristics.

• Understand the principles of a layered architecture.

• Be able to discuss/describe centralized (vertical) and decentralized (horizontal) architectures for distributed systems.

• State the difference between fat-client and thin-client architectures and be able to give an advantage of each.

• Compare client-server systems and peer-to-peer systems in terms of performance (time to locate and retrieve information), scalability, and fault tolerance.

• Know the difference between structured and unstructured peer-to-peer systems.

• Be able to identify Distributed Hash Tables, the Chord algorithm, and overlay networks; also understand their purpose.

• How does Chord decide which node will store a given item (i.e., understand the successor relation)

• Be able to state/describe the purpose of the Condor System (to support high throughput computing) and say a little about how it does so.

• Know something about the way in which NOW (Network of Workstations) proposed to use the shared main memory and/or disk storage that exists in a networked collection of workstations.

• Be able to state the goals of Freenet (no need to memorize all five, just be able to say in general what it tries to do) and give a high-level description of its architecture, including

• The Freenet routing algorithms (how it locates/inserts items in the system).

• Is Freenet a structured or unstructured architecture? Justify your answer.

• What is the hops-to-live counter used for?

Chapter 3: Processes

• How does a single multithreaded application improve performance over an equivalent application that consists of multiple separate processes? (Assume kernel level threads)

• What are the benefits of a multithreaded server, compared to a single-threaded server?

• Be able to give some examples of when code migration would be useful.

• What are the three components of a process that must be considered in a code-migration model?

• What is the difference between weak mobility and strong mobility? What limitations are imposed on code migration if only weak mobility is supported?

Chapter 4 – Communication

• Definitions: routing, packet switching, reliable communication vs. unreliable communication

• Identify OSI reference model; know the functions of the transport and network layers.

• In general, what is the difference between synchronous and asynchronous communication?

• What is the difference between persistent and transient communication?

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download