Lecture 2 Flashcards

1
Q

What are the 3 fundamential Abstractions?

A
  • Interipreters/Processors
  • Memory
  • Communication Links

(Hard to manage resources)

Resources Management:

  • High peak demands -> OVERPRVISIONING
  • HETROGENTITY for h/w + s/w
  • Machine Failure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is virtualisation?

A
  • Virtualisation is a ‘virutal’ creation of something
  • It ABSTRACTS the resources and SIMPLIFIES it; it ISOLATES users from one another + SUPPORTS REPLICATION to increase elasticity
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How does virtualisation stimulate a physical object?

A
  • Reduces IT costs but increases utilisation, flexibility + effiency on exisiting hardware.
  • Runs multiple OS & Applications on the SAME server at the SAME TIME to increase utilisation + flexibility of hardaware

Important:

  • Performance Isolation: Assigns + accounts resources to different applications.
  • System security: Isolates services + runs on the same hardware.
  • Performance & Reliability: allows appliations to mitigate from one platform to another.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is Layering and the importance

A

a common approach to manage SYSTEM COMPLEXITY

Important

  • It simplifies subsystems, abstract via interfaces with other subsystems
  • Minimises interaction SUBSYSTEMS of a COMPLEX SYSTEMS
  • Can DESIGN, IMPLEMENT + MODIFY individually and independently
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Interfaces

A
  • ISA - Provides commands to the processor
  • Application Binary Interface (ABI) - an INTERFACE between two program moduleslibrary/OS’ at machine code to access HARDWARE - invokes system calls
  • Appreciation Program Interface (API) - A set of routine/tools to build software applications (Gives access to the ISA; HLL library calls to invoke system calls
  • A dynamic binary translation: Converts BLOCKS of guest instructions from PORTABLE CODE to the host instruction to improve performance.
    • Blocks are CACHED + REUSED
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Difference between VMM & VM

A
  • Partitions resources into separate virtual machines
  • Allows SEVERAL OS to run concurrently on a platform
  • VM is an execution environment, runs on OS, it is an isolated environment but has access to PORTIONS of the computer resources
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

VMM advantages

A

Allows:

  • Multiple SERVICES to share the SAME platform
  • Live mitigation: Movement of a server from one platform to another
  • System Modification - Maintaining BACKWARD compatiability of the original system
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How does the VMM virtualises the CPU + Memory?

A
  1. Traps PRIVILEDGED INSTRUCTIONS execute by a guest OS + enforces the safety operation.
  2. Traps INTERRUPTS + dispatches them to individual guest
  3. Controls VIRTUAL MEMORY MANAGEMENT
  4. Maintains SHADOW PAGE TABLE for guest OS replicates made by guest OS (Uses MMU for translation)
  5. Monitor SYSTEMS PERFORMANCE to take action to avoid performance degration.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is guest OS?

A

A guest OS runs VM under VMM

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Name and Describe the Hypervisions

A
  1. Type 1 - (Native) VM runs directly from the hardware
  2. Type 2 - (Hosted) User mode - VM runs on the OS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Dual-Mode Operation + Difference between Kernal and User Mode

A

allows OS to protect itself + the system components

Kernal mode = “INTERRUPT HANDLERS”:

  • Has access to the hardware
  • Can execute CPU instruction + reference memory access
  • Reserved for lowest levels of the OS
  • When the computer crashes, the PC halts

User mode runs EVERYTHING:

  • Has NO access to the hardware or reference memory
  • Code running on use mode must delegate system API’s to access hardware + memory
  • Crashes in a system in user mode is recoverable
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Challanges in x86 Virtualisation

A
  • There are 4 layers of priviledge execution rings.
  • The “Host computer system hardware” must exectute the priviledge ring 0 first.
  • It requires a layer on top under the OS to deliver and manage shared resources
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the 3 classes of machine instructions?

A
  • Priviledge instructions - Executed in kernal mode, when executed, it causes a TRAP and executes in kernal mode.
  • Non-priviledged instructions - the ones that can be executed in user mode.
  • Sensetive instructions - can be executed in EITHER user/kernal mode but BEHAVE differently. (Requires special precautions at execution time)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the 3 techniques of Virtualisation CPU on x86?

A
  • Full Vertualisation using Binary Translation
  • Paravirtualisation
  • Hardware assisted Virtualisation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Technique 1: Full Virtualisation using Binary Translation

A
  • Uses a set of binary translation + direct execution
  • Guest OS runs unchanged under VMM if directly from the hardware platform
  • Runs exact copy of the actual copy
  • Binary: REWRITES parts of the code to REPLACE sensitive but not priviledge instruction with safe code to emulate orginal instruction
  • Advantages: No hardware assistance, No change to guest OS, Isolation + Security
  • Disadvantages: Speed of execution

Examples: VMware, Micosoft Virtual Server

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Technique 2: Paravirtualisation

A
  • Greek: “With” the guest OS and hypervisior to improve performance + efficency.
  • Modifies the kernal OS to replace Non virtualisation layer hypervisor
  • Provides hypercall for other critical kernal operations

(Provides: Memory management, interrupt handling and time keeping.)

Advantages: Faster execution, lower virutalisation

Disadvantags: Compatability and Portability is poor.

Examples: Xen & Denali

17
Q

Technique 3: Hardware assited virtualisation

A
  • New CPU execution mode that allows the VMM to run NEW ROOT below 0.
  • Advantages: FASTER execution
  • Examples: Intel VT-x, Xen 3.x
18
Q

Linux Containers

A
  • is a Linux Process (or Processes) that a virtual environment with its own process network space
  • Containers share portions of the kernal