Lecture 2 Flashcards
What are the 4 stages in the Fetch-execute cycle?
Fetch
decode
execute
store
Describe the fetch execute cycle:
- Fetch (Read): The next instruction is fetched from the memory.
- Decode: The decoder interprets the instruction and gets decoded.
- Execute: The CPU passes the decoded information to perform the actions required by the ALU to perform mathematical or logic functions on them.
- Store: The results stored in the main memory, or sent to an output device.
what does virtualization allow?
Virtualization technology enables a single PC or server to simultaneously run multiple operating systems or multiple sessions of a single OS
what is a hypervisor?
The solution that enables virtualization is a virtual machine monitor (VMM), or hypervisor
What are the 3 requirements for hypervisors?
- Safety: full control ofvirtualized resources.
- Fidelity: Behavior of a program on a virtual
machine should be identical to same program
running on bare hardware. - Efficiency: The code in virtual machine should
run without intervention by hypervisor
What are 2 key reasons for using virtualization?
Rapid deployment-A new VM may be deployed in a
matter of minutes
Ease of management- Virtual machines facilitate deployment and testing of software
Define a virtual machine
A Virtual Machine is a software construct that mimics the characteristics of a physical machine
What are 2 principle functions performed by a hypervisor?
Execution management of VMs
Devices emulation and access control
What is a type 1 hypervisor?
Type 1 hypervisors always run on the bare metal
What is a type 2 hypervisor?
Type 2 hypervisors use the services of an existing host Operating System
What are 3 characteristics of Clouds?
- On-demand self-service
- Broad network access
- Resource pooling
What are some major challenges in Bringing Virtualization to the x86 architecture
- The x86 architecture was not suitable for virtualization.
2. The x86 architecture was of daunting complexity
What are some benefits of ESX type-1 server architecture?
- CPU scheduler ensures that each virtual machine gets a fair share of the CPU
- Memory manager is optimized for scalability
What are the 4 virtualization techniques?
CPU Virtualization
Memory Virtualization
Storage Virtualization
Network Virtualization
What is paravirulization?
A Software-Assisted virtualization technique that
uses specialized APIs to link virtual machines with the
hypervisor to optimize their performance.
• The operating system in the virtual machine, Linux or
Microsoft Windows, has specialized para-virtualization
support as part of the kernel, as well as specific paravirtualization drivers.
• Allow the OS and hypervisor to work together more
efficiently without the overhead of the hypervisor
translations.