Hardware and Virtual Machines Flashcards
Characteristics of Massively Parallel Computers
-It is a large number of computer processors / separate computers connected together
…where they are simultaneously performing a set of coordinated computations // collaborative processing.
-Network infrastructure
-Communicate using a message interface.
Characteristics of CISC (Complex Instruction set computers)
-Uses many instruction formats.
-Uses variable length instructions.
-Makes use of different addressing modes.
-Uses a few registers
-Has a large instruction set.
-Requires complex circuits.
-Frequently uses cache.
-Instructions (converted to sub-instructions that) may require many clock cycles –Programmable CU
Characteristics of RISC (Reduced Instruction set computers)
-Uses simple instructions.
-Uses fixed length instructions.
-Instructions only require one clock cycle.
-Uses many registers.
-Makes use of pipelining
-Hardwired CU
Describe the use of pipelining in RISC
-Pipelining allows several instructions to be processed simultaneously.
…therefore this increases the number of instructions completed per unit of time.
-Each instruction stage is completed during one clock cycle.
-No two instructions can execute their same stage of instruction.
-E.g. While one instruction is coded the next is being fetched.
What are the 4 computer architectures.
-SISD (Single Instruction Single Data)
-SIMD (Single Instruction Multiple Data)
-MISD
-MIMD
Explain what is meant by a virtual machine.
-The emulation of a computer system / hardware and/or software
… using a host computer system.
-Using guest operating system(s) for emulation.
What are the benefits of using a virtual machine.
-Multiple guest operating systems / VMs can be used on the same computer.
-Different instruction set architectures can be emulated on a single computer.
- A virtual machine can crash without affecting the host machine.
There are security benefits // Trying a piece of suspicious software and if it is / has a virus, it will only infect the virtual machine.
-Cost savings due to not needing to purchase extra hardware.
-Can run legacy applications that are currently incompatible.
Limitations of a virtualmachine.
-Using a virtual machine means execution of extra code….
-Non-VM installation may not perform in the same way.
-Execution speed slower than non-VM system.
-Problems in judging actual response times at time of maximum traffic needs fastest possible speed.
-Particular hardware may be difficult to emulate . So that hardware can’t be tested using a virtual machine.
- A virtual machine may be affected by any weaknesses of the host machine.
-Costly and/or complex to maintain / implement / manage
What is the use of virtual machine software (hypervisor)?
It is used to:
-Create/delete virtual machines.
-Existing hardware made available to guest OS // hardware emulation
-Ensures each virtual machine is protected from actions of another virtual machine.
What does the Host OS do? (topic virtual machines)
-The operating system that is actually controlling the hardware
What does the Guest OS do? (topic virtual machines)
-An operating system run on the virtual machine //OS is being emulated
-Guest OS runs under the host OS
Describe how interrupts are handled in pipelining
-Once the processor detects the existence of an interrupt.
-To discard all instructions in the pipelining except for the last instruction in the writeback stage.
Explain what is meant by pipelining.
-Pipelining is instruction level parallelism.
-Execution of an instruction is split into a number of stages.
-When the first stage for an instruction is completed, the first stage of the next instruction can start executing.
-Another instruction can start executing before the previous one is finished.
-Processing a number of instructions can be concurrent/simultaneous.
Explain what is meant by SISD.
-There is only one processor.
-The processor executes one set of instructions on one set of data.
Explain what is meant by SIMD, MISD, MIMD.
-Many processors execute the same instruction using different data sets.
-Many processors execute different instructions using the same data set.
-Many processors execute different instructions using different data sets.