What is Hardware and Software in Cloud and Virtualization Concepts
What is Hardware and Software in Cloud and Virtualization Concepts
Hardware and Software
Do you use a smartphone, laptop, or home computer? When you use these products, you are touching something "real", in other words, something tangible. In fact, we often refer to these devices as "my phone", "my laptop", or "my computer". These tangible devices are often called "hardware". Likewise, a computer’s hardware is the physical components that make up the computer system. Some of these are easy to identify such as a keyboard, a mouse, and a monitor, but it also includes the disk drive, data storage, memory, and motherboard just to name a few. The following is a list of common hardware components:
Also called a CPU (Computer Processing Unit), the processor is the part of the computer that executes software programs by performing mathematical, logical, and input/output operations. This is the problem-solving part of the hardware.
In a computer, electrical current is manipulated by transistors in order for it to solve mathematical and logical problems really quickly using 1s and 0s called binary. These tiny transistors are placed on a silicon chip and operate as switches that turn the electrical current on and off. When the current is on, the computer will read a 1, and when the current is off, the computer will read a 0.
To build the processor, an element called silicon is used because of its special ability to partially conduct electricity. This piece of silicon has literally millions to billions of these tiny transistors attached to it and makes up what is called a chip.
Volatile data storage called RAM. RAM contains the programs for execution and the data currently used by the processor. A computer has two types of memory, non-volatile (read-only memory) and volatile (random-access memory). Non-volatile memory remains even when the machine is turned off while volatile memory is only used while the machine is on and is erased when you power the machine off. Basically, non-volatile memory just stores the programs while volatile (RAM) memory runs the programs because it is a faster type of memory.
Also called ROM, this is a non-volatile type of memory that stores software called the BIOS. This type of software is responsible for turning on (booting) the hardware.
The software responsible for boot and power management is stored in ROM because the ROM never erases when you turn off the computer. You would not want the computer to forget how to turn itself on!
A PCB (Printed Circuit Board) that holds the processor, RAM, ROM, network, and I/O (Input/Output) ports, and other components that are beyond the level of this course.
A collection of microchips on a motherboard that manages specific functions, such as transporting data to the processor, the RAM, and to the plugs for attaching devices (peripheral ports).
A persistent (non-volatile) storage device such as HDD (Hard Drive Disk) or SSD (Solid State Drive).
Each of these hardware devices uses something we do not touch to function, which is called software. Software is the "brains" of our hardware, providing instructions on how the hardware should operate. Hardware cannot function without software. Software is what allows our hardware to perform activities that we value such as send an email, tweet a friend, post on Facebook, and keep a schedule because the software tells our system to carry out these actions.
Just like different parts of the brain control different types of actions, there are different types of software that control different levels of computer actions. The first type of software is the system software, and it is like the part of the brain that controls your basic functions such as breathing and blinking. This type of software is necessary for the hardware to function. These two cannot operate without each other. You could not survive without breathing, and a computer cannot run without software controlling the startup (boot) process, the memory (RAM), and creating an interface you can use (user interface). The lowest level of system software a computer needs to have is the BIOS, which is the firmware (software typically stored in read-only memory) that turns on the machine.
The first type of system software is the operating system. It is very important to understand what an operating system is and what it does in order to understand virtualization. The operating system (OS) controls the hardware and is directly connected to it. The OS runs in the background without you having to think about it and pulls up a user interface so you, the user, can access files and install programs. Some examples of commonly used operating systems are Windows, Mac OS X, and Linux.
The second type of software is called application software. Application software runs on top of the operating system, meaning that it has to be installed after the OS. It tells your system to carry out a task that you, the user, want to accomplish, such as read an email or listen to music. This software is like the parts of the brain that tell your body to carry out the actions you want to do such as waving at someone to say hello or writing down something you want to remember. These are actions that are not necessary to survive, but you do them because you want to.
Take a smartphone, for instance. The Android or IOS is the operating system that creates the interface and allows the hardware to perform its basic functions, and the Apps you download are the application software. Can you guess what the hardware is on a smartphone? Yes, it is the physical components the phone is made out of such as the screen, CPU, memory, and so on.
Role of Hardware and Software in Virtualization
Now that you are aware of the roles hardware and software play in a computer system, the concept of virtualization will be easier to grasp. Simply stated, virtualization is the layer of technology that goes between the physical hardware of a device and the operating system and creates one or many copies of the device.
Think of it as the technology that would take you (the hardware) and use a program to create a copy of you. That copy would be a virtual version of you. You are now more efficient, and your virtual copy can work on that assignment you have to turn in tomorrow while you play a game or watch a movie. Although, as we’ve discussed, this isn’t a reality for humans, the ability to transfer resources from your computer hardware and create virtual computers that operate inside of your system is an amazing development making technology more efficient.