Monday, 17 February 2014

Virtualisation

Virtual Operating Sytems

Today I will be talking about how to use virtual box (free software), to create a virtual environment which you can install operating systems on.

Virtual box simply makes an exact copy of your pc, and allows you to operate it in exactly the same way as you would, without the risk of breaking your machine. A virtual environment allows the user to play with various operating systems along with any other settings without any fear of crashing the system, a broken virtual environment can simpy be erased and a new one installed.

Install oracle virtual box...


To install various operating systems the disc image of the OS will first be needed. Then simply click new and follow the instructions to create the virtual system. To install the OS onto the virtual system follow these instructions...

     1.  Settings - storage
     2.  host drive D - click the disc icon
     3.  choose a virtual cd/dvd - choose the OS disk image

Remember to choose a dynamic hard drive, this means that the virtual hard drive will grow as and when it is needed, otherwise it will crash when memory runs out!


 
 
Dont ask why I chose windows 8, I have no idea.



Benefits of Virtualisation

  1. Reduce carbon footprint - Migrating physical servers over to virtual machines and consolidating them onto far fewer physical servers means lowering monthly power and cooling costs in the data center.
  2. Improve disaster recovery -  by consolidating servers down to fewer physical machines in production, an organization can more easily create an affordable replication site.
  3. Help things move to the 'Cloud'.

How computers work

Processor

The main brain of a computer is the processor. The processor can carry out many thousands of calculations per second, whether it be what to calculate what colour a tree is going to be within a game from second to second, or what is required from various different user inputs etc..

Intel and AMD are the largest processor manufacturers. In general if spped is what you are looking for in your PC, Intel is the best option. If graphics are your main priority, go for AMD. Although there are so many models of each out there it is hard to say which is a 'better' option.

In computing, FLOPS (Floating point Operations Per second) is a measure of your pc's speed.


Most microprocessors today can do 4 FLOPs per clock cycle. Therefore, a single-core 2.5 GHz processor has a performance of roughly10 billion FLOPS, 10 billion operations per second(floating point). A floating point refers to an integer that programmers will use when compiling various applications.


The processor communicates with the memory through a set of wires called the bus. A 32 bit processor will have a 32 bit wide bus.
 
Two main manufacturers for processors are Intell and AMD

Bus

The address bus controls the address on memory of all information.
 
The control bus controls the information synchronising operation.
 
The data bus controls the data and instructions moving between. 

 
 

Boot


The term boot refers to the computer pulling itself up from its boot straps. It is the start to finsh loading process of a computer.
 
A typical boot sequence:
 
Location of CPU and memory:
 

 

A computer will run several tests as it is 'booting'. If any errors are detected with the cpu, timer or memory then an error will be reported to the user via varying beeps, and the boot process may be aborted to prevent further damage to the system, depending on the severity of the error. This is known as the 'Power on self test' (POST).

The basic input output system (BIOS) holds basic system configurations which include boot sequence details. The bios loads the bootstrap loader from master boot record on the disk.

The master boot record shows where the operating system is in memory. If it can not be found then the boot process will fail.

Interrupt handlers 

When a  processor is working to nearly capacity, say if it is calculating the next screen of an online multiplayer game, how do we get its attention when we want to alter tasks? This is where interrupt handlers come in handy. An interrupt is something like pressing the escape key to pause. An interrupt overpowers all processes and sends a request to the processor. The processor in turn listens for instructions. These come in the form of an interrupt handler, which is a piece of code which directs the processor to the correct destination - was it the keyboard, mouse, hard-drive creating the interupt? Then based on the destination it will run the routine process for the particular action.

Direct memory access

DMA allows for more efficient system operation by allowing data transfer to bypass the processor. The processor will initially set up the direct memory access, and then it is free to carry out other duties.

Typical PC architecture: