B) Using Processor-Cache Affinity Information in Shared Memory Multiprocessor Scheduling



Similar documents
Microkernels, virtualization, exokernels. Tutorial 1 CSC469

CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun

LinuxWorld Conference & Expo Server Farms and XML Web Services

Virtual machine interface. Operating system. Physical machine interface

Introduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture

Client/Server Computing Distributed Processing, Client/Server, and Clusters

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

Client/Server and Distributed Computing

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Securing your Virtual Datacenter. Part 1: Preventing, Mitigating Privilege Escalation

Avoid a single point of failure by replicating the server Increase scalability by sharing the load among replicas

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Full and Para Virtualization

Chapter 16 Distributed Processing, Client/Server, and Clusters

Chapter 11 Distributed File Systems. Distributed File Systems

Chapter 2: Remote Procedure Call (RPC)

Middleware Lou Somers

Chapter 14 Virtual Machines

COS 318: Operating Systems. Virtual Machine Monitors

Chapter 6. CORBA-based Architecture. 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications

Virtualization Technologies (ENCS 691K Chapter 3)

Week Overview. Installing Linux Linux on your Desktop Virtualization Basic Linux system administration

Eloquence Training What s new in Eloquence B.08.00

Distributed Operating Systems

High Availability and Clustering

COS 318: Operating Systems. Virtual Machine Monitors

Example of Standard API

State-Machine Replication

Cloud Computing. Up until now

Distributed Systems LEEC (2005/06 2º Sem.)

Operating System Structures

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

MCSE Objectives. Exam : TS:Exchange Server 2007, Configuring

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters

Introduction to Network Management

Exokernel : An Operating System Architecture for Application-Level Resource Management. Joong Won Roh

9/26/2011. What is Virtualization? What are the different types of virtualization.

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:

Petascale Software Challenges. Piyush Chaudhary High Performance Computing

Distributed Objects and Components

Proactive, Resource-Aware, Tunable Real-time Fault-tolerant Middleware

Desktop Virtualization Technologies and Implementation

BookKeeper overview. Table of contents

This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1.

Efficiency of Web Based SAX XML Distributed Processing

Virtual Machine Monitors. Dr. Marc E. Fiuczynski Research Scholar Princeton University

M6422A Implementing and Managing Windows Server 2008 Hyper-V

MCSA Objectives. Exam : TS:Exchange Server 2007, Configuring

Chapter 5 Cloud Resource Virtualization

The Benefits of Virtualizing

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture

Configuring Apache Derby for Performance and Durability Olav Sandstå

How To Set Up A Macintosh With A Cds And Cds On A Pc Or Macbook With A Domain Name On A Macbook (For A Pc) For A Domain Account (For An Ipad) For Free

Chapter 2 Addendum (More on Virtualization)

Chapter 13 File and Database Systems

Chapter 13 File and Database Systems

Maintaining Non-Stop Services with Multi Layer Monitoring

Dynamic Resource allocation in Cloud

COM 444 Cloud Computing

Distributed and Cloud Computing

Microsoft SQL Server 2008 R2 Enterprise Edition and Microsoft SharePoint Server 2010

Administering Microsoft SQL Server 2012 Databases

Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines

RELIABLE OPERATING SYSTEMS

TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023

Operating System Organization. Purpose of an OS

How Routine Data Center Operations Put Your HA/DR Plans at Risk

CompTIA Cloud+ 9318; 5 Days, Instructor-led

Operating System Structures

Peter Ruissen Marju Jalloh

70-412: Configuring Advanced Windows Server 2012 Services

MCSE Core exams (Networking) One Client OS Exam. Core Exams (6 Exams Required)

CompTIA Cloud+ Course Content. Length: 5 Days. Who Should Attend:

Microkernels & Database OSs. Recovery Management in QuickSilver. DB folks: Stonebraker81. Very different philosophies

Virtualization for Cloud Computing

An Oracle White Paper November Oracle Real Application Clusters One Node: The Always On Single-Instance Database

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

Management of VMware ESXi. on HP ProLiant Servers

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

SAN Conceptual and Design Basics

Cognos8 Deployment Best Practices for Performance/Scalability. Barnaby Cole Practice Lead, Technical Services

OS Concepts and structure

Chapter 18: Database System Architectures. Centralized Systems

<Insert Picture Here> WebLogic High Availability Infrastructure WebLogic Server 11gR1 Labs

Managing a Fibre Channel Storage Area Network

Virtualization. Pradipta De

Highly Available Mobile Services Infrastructure Using Oracle Berkeley DB

How To Make A Distributed System Transparent

EMC DATA DOMAIN OPERATING SYSTEM

Parallels Virtuozzo Containers

Network Attached Storage. Jinfeng Yang Oct/19/2015

EMC DATA DOMAIN OPERATING SYSTEM

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

Intel Ethernet Switch Load Balancing System Design Using Advanced Features in Intel Ethernet Switch Family

Microsoft SQL Server Guide. Best Practices and Backup Procedures

Introduction. Setup of Exchange in a VM. VMware Infrastructure

Transcription:

A) Recovery Management in Quicksilver 1) What role does the Transaction manager play in the recovery management? It manages commit coordination by communicating with servers at its own node and with transaction managers at other nodes. (When a process starts a new transaction, Transaction Managers and servers form a directed graph topology with the coordinator at the root, Transaction Managers at the internal nodes, the servers at the leaves.) 2) What role does the Log Manager play in the recovery management? Log Manager serves as a recovery log both for the Transaction Manager s commit log and server s recovery data. Servers that need to recover their data call the Log Manager after crashes. 3) What are the mechanisms in place to prevent resources from being locked in case of coordinator failure for distributed transactions? 1) Coordinator Migration. When the coordinator knows that a transaction has become distributed, it can designate a subordinate Transaction Manager to take over as the coordinator. Idea is to move the coordinator to the location that the resource is being requested from. Typically used when a coordinator has only one subordinate. 2) Coordinator Replication. For transactions in which the coordinator has multiple subordinates, the coordinator can be replicated to make it less vulnerable to single-point failures. A subset of the subordinates are selected as backup coordinators. B) Using Processor-Cache Affinity Information in Shared Memory Multiprocessor Scheduling Q4) What is the idea behind processor cache affinity? What benefit does it provide?

Idea is to analyze a processors cache contents to determine which processor should run the next ready task. It may be more efficient to use scheduling policies that take into account whether data already exists in a processors cache. Q5) What is cold cache versus warm cache? In the warm cache case task return immediately after releasing the processor. (Cache is still warm). In cold cache case the cache is flushed between task visits. Cold cache results in increased task execution time. Q6) What is Fixed Processor versus Last Processor Scheduling policy? In Fixed processor scheduling policy each processor has a dedicated local queue and tasks are permanently assigned to these queues. In Last processor scheduling policy a task is scheduled where it last executed. Q7) Describe Minimum Intervening (MI) scheduling policy? This policy attempts to schedule the task with the greatest affinity for a processor. When a processor becomes idle, MI computes, for each task x on the ready queue, the number of tasks executed since x last executed there. It runs the task with the minimum value. C) Xen and the Art of Virtualization Q8) What is Para virtualization? Paravirtualization is a virtualization technique that presents a software interface to virtual machines that is similar but not identical to that of the underlying hardware. Q9) How does Xen address the adverse effects of virtualization on security Xen enables multiplexing of physical resources and at the same time provides performance isolation between processes. Multiplexing can be done at a low level by exporting resources through an interface. Applications maintain their own configurations

and unwanted configuration interactions between applications are avoided. This promotes sharing of machine resources in a safe manner. D) Building Reliable High Performance Communication Systems from Components Q10) What are the advantages of Component Based Systems 1) Modularity : It is easier to design, develop and test individual components than a large monolithic system that has all functionality embedded in it. 2) Extensibility: Component based systems can be extended at run time with new components Q11) What are the disadvantages of component based systems. Disadvantages are: High overheads arising from additional function calls, poor locality of data and code leading to cache and TLB misses, redundant code that is not reachable in a particular configuration of the components, and separate compilation causing non-optimal use of existing optimization techniques. Also the generation and verification of the code of the components themselves is still very difficult. Q 12) What roles do OCaml, I/O Automata and Nuprl play in the Ensemble component based system. OCaml : Components are written in Objective Caml. OCaml has a formal semantics allowing code to be manipulated by formal tools, and it also compiles to efficient machine code.

I/O Automata: Specification of the behavior of both protocols and micro-protocols is done using I/O automata (IOA). Nuprl : Nuprl is able to understand both the IOA specifications and the OCaml code, and can rewrite the code for the purpose of optimization. E) A Distributed Object Model for the Java System Q13) What are the disadvantages of using CORBA and sockets for RMI from a Java language standpoint. CORBA lacks seamless integration with the language since an application programmer has to deal with a distributed object model in addition to the local object model of java. Sockets require the client and server to have knowledge of the underlying communication protocol. Q14) Describe dynamic stub loading. Dynamic stub loading loads the exact stub code at run time to handle method invocations on a remote object. Dynamic stub loading is used when code for a needed stub is not already available. F) Exokernel Q15) What are the disadvantages of fixing the interface and implementation of operating system abstractions such as interprocess communication and virtual memory? It denies applications the advantages of domain-specific optimizations. It discourages changes to the implementations of existing abstractions. It restricts the flexibility of application builders, since new abstractions can only be added on top of existing ones.

Q16) How does Exokernel address the fixed interface problem of traditional operating systems? In Exokernel traditional OS abstractions are implemented at application level. An exokernel securely exports all hardware resources through a low level interface to untrusted library operating systems. Library operating systems then use this exokernel interface for application specific implementation.