Hardware is the physical and electrical components of the computer. It is the platform on which software executes.
Processor:
o ‘Brain’ of the computer
o Big finite state machine
Main memory:
o Random Access Memory (RAM) – volatile because when the computer is switched off – the contents are lost, temporary memory.
o Read only Memory (ROM) – non-volatile – the contents in the ROM is not lost when the computer is switched off.
EEPROM :
o Electronic Erasable Programmable Read Only Memory
o Can read and write to the memory and it is not lost when the computer is switched off.
o Can write to it as well but it is a lot slower to write to it.
CPU:
o Processor
o Main memory
o Computer Buses
An input/output device is a device that inputs or outputs data through its input or output controller.
An I/O device:
o Has a set of status, data and command registers.
o Electronics which allow data transfer between it and other components.
Each main memory location has a main memory address so the processor knows which memory to address when it needs it to run a program.
Stored program concept – a program must be stored in main memory for it to run because the program control unit in the processor needs to fetch the machine code instructions in sequence and execute them one at a time.
Processor:
o Program Control Unit (PCU) – fetches machine code instructions from main memory and executes them one at a time.
o Arithmetic and Logic Unit (ALU) – performs arithmetic and logical calculations.
o Registers – fast memory locations which are used to carry out certain things – these are used instead of using main memory because it would take a lot longer for the processor to fetch everything from the main memory so it is faster.
Software consists of sequences of instructions called programs which can be understood and executed by the hardware.
System software: Controls the operation of the computer. It allows the user to perform tasks without knowing the complexities of the machine.
Operating system software
An operating system (OS) is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system. Without an operating system, a user cannot run an application program on their computer (unless the application program is self booting).
The OS manages functions like Time slicing and other Time-sharing operations and schedule tasks for efficient use of the system and may also include accounting for cost allocation of processor time, mass storage, printing, and other resources.
For hardware functions such as input/output and main memory management, the operating system acts as a middleman between application programs and the computer hardware, although the application code is usually executed directly by the hardware it will frequently call the OS or be interrupted by it. Operating systems can be found on almost any device that contains a computer, from mobile phones and video game consoles to supercomputers and web servers.
Examples of popular modern operating systems include Android, iOS, Linux, Mac OS X and Microsoft Windows, but don't use these names in the exam!
Extension: Open vs Closed Source operating systems
You might hear the words Open Source when you read about operating systems. Linux is the most well known Open Source OS and Windows is the most well known Closed Source OS. So what does this mean?
Open Source programs are programs where you can see the code (the source), you can edit it, copy it and use as you wish within the confines of an open source license. You can even sell it, but the person would be welcome to acquire the code for free if they wanted. As a result of this Linux is not developed by one person or one company but uses code developed by thousands of people, working for different organisations all over the world. And as a result there are many different versions (known as distributions) of Linux out there including Ubuntu, Slackware and Fedora. Android is built using Linux code.
Closed Source software doesn't allow people to look at the code or adapt it. Companies normally sell closed source products and you'll have to pay for a copy of Windows. Currently about 83% of desktops run the Windows OS.
Utility programs
Utility software is a type of system software which has a very specific task to perform related to the working of the computer, for example anti virus software, disk defragment etc.
Utility software should not be confused with application software, which allows users to do things like creating text documents, playing games, listening to music or surfing the web. Rather than providing these kinds of user-oriented or output-oriented functionality, utility software usually focuses on how the computer infrastructure (including the computer hardware, operating system, application software and data storage) operates. Due to this focus, utilities are often rather technical and targeted at people with an advanced level of computer knowledge.
Examples of utility software include:
Virus scanner - to protect your system from trojans and viruses
Disk defragmenter - to speed up your hard disk
System monitor - to look at your current system resources
File managers - to add, delete, rename and move files and folders
Library programs
Library programs are collections of compiled routines which are shared by multiple programs, such as the printing function.
Library programs contain code and data that provide services to other programs such as interface (look and feel), printing, network code and even the graphic engines of computer games. If you have ever wondered why all Microsoft Office programs have the same look and feel, that is because they are using the same graphical user interface libraries. For computer games a developer might not have the time and budget to write a new graphics engine so they often buy graphical libraries to speed up development, this will allow them to quickly develop a good looking game that runs on the desired hardware. For example Battlefield 3 and Need for Speed both use the same Frostbite engine.