Hardware is the term used for any physical compnent of the computer.
For example,
the case
the mouse
the keyboard
the RAM
CPU
Graphics Card
Motherboard
The rule of thumb is, if you can touch it, it is hardware.
Software is the programs that run on the computer, they are code and cannot be touched physically like hardware.
There are 2 types of software, application software and system software.
There are many components that make up a computer system, but for the purpose of this GCSE, you need to understand a few in depth.
These are:
CPU
Main Memory
Secondary Storage
Buses
CPU stands for Central Processing Unit and as the name suggests, it is the unit at the center of all processing carried out by the computer. The best way to consider the CPU is like the brain of the computer.
There are 3 factors that affect the performance of the CPU:
The number of cores - The more cores a CPU has the more "brains" are working at the same time, this reduces the amount of time it takes to complete a task.
The clock speed - The faster the clock speed, the faster the cores are able to think and this reduces the amount of time it takes to complete a task.
The cache size - The more fast memory there is, the more instructions the CPU can store close by and this reduces the amount of time it takes to complete a task.
The CPU continually reads instructions stored in main memory and executes them as required.
The Fetch-Execute Cycle is made up of 3 stages:
Fetch: the next instruction is fetched to the CPU from main memory
Decode: the instruction is decoded to work out what it is
Execute: the instruction is executed (carried out). This may include reading/writing from/to main memory or performing an arithmetic or logical operation.
There are 4 types of main memory in a computer system:
RAM
ROM
Cache
Virtual Memory
RAM is Random Access Memory, which, as the name suggests, is a type of memory that the CPU can access randomly (any space on the RAM can be accessed at any time). It stores the data and instructions of currently running software.
RAM is typically medium capacity (16GB to 128GB) and is considered relatively fast memory, cache and registers are both faster but secondary storage is slower.
RAM is an example of volatile memory which means that when the computer is switched off, the contents of the RAM is wiped (as nothing is currently running anymore).
ROM is Read Only Memory, which, as the name suggests, is a type of memory the CPU can access only to read the contents, it cannot change the contents of ROM. It stores the boot up instructions and BIOS (Basic Input Output System) for the computer. Without these, the computer wouldn't be able to start, which is why we do not want the CPU to be able to change it.
ROM is typically low capacity (4MB to 8MB) and is much slower than RAM but still faster than secondary storage.
ROM is an example of non-volatile memory which means that when the computer is switched off, it keeps its contents (as the computer wouldn't be able to start again if it was wiped).
a small piece of memory that is directly on the CPU that holds the most frequently used instructions and data so that the CPU does not need to go to the RAM to get them.
This is exceptionally fast so speeds up the computer however it is low capacity.
Virtual memory is created on the secondary storage when the RAM is full, it behaves just like RAM so is also volatile (wipes when the computer is powered off) but it is much slower than RAM as its speed is dictated by the speed of the secodnary storage.
ABOVE: Diagram showing the inner workings of a Magnetic Hard Disk Drive (HDD)
BELOW: Diagram showing the theoretical layout of a Solid State Drive (SSD)
All of the storage types we have explored so far are relatively small, very fast and store data and instructions for the running of the computer and software.
Secondary storage, on the other hand is used to store our files like our pictures and homework. Secondary storage is non-volatile as you wouldn't want your pictures or homework wiped when you turn the computer off.
There are 3 types of secondary storage you need to know:
Magnetic
Solid State
Cloud
Magnetic storage is Hard Disk Drives (HDDs). These work by having a stack of metal disks that have a magnetic coating that spin under a read/write head (each disk has its own read/write head) that changes the magnetic polarity of the coating to North or South and this is used to denote a 1 or 0.
Pros and Cons of HDDs:
+ Cheap
+ Large capacity (500GB - 12TB+)
+ faster than older methods of storage
– Lots of moving parts - reduces durability
– Affected by magnets - a powerful enough magnet can destroy the data stored on the disk
– Not very portable (especially when powered on, any sudden movement can cause data corruption)
solid state drives (SSDs) use electrical circuits to persistently store data by passing an electrical current through the drive which foces the elctrons through a barrier, if they get trapped in the barrier, it is a 0, if they make it to the other side it is a 1.
Pros and Cons of SSDs:
+ Near silent operation
+ No moving parts - very durable and portable
+ Very Fast
– Expensive
– Similar capacity to HDDs
– Can get very hot under load (thermal throttling) - requires cooling solution
cloud storage refers to saving data in an off-site storage system maintained by a third party, for example, Microsoft OneDrive or Google Drive.
Data is saved to servers at a remote location
These servers can use magnetic and/or solid-state storage
The data is accessed via the Internet
Data that is stored on cloud storage can be located anywhere in the world
Some providers may let the customer choose which country the data is stored in – this may help in meeting data protection requirements
Cloud storage may make multiple copies of the same data stored at different locations – this means that if one data centre had a fire the data could be accessed from somewhere else.
Pros and Cons of Cloud Storage:
+ Easy to use - apps for desktop and mobile devices to manage their data
+ Large storage capacity - easily increased by increasing subscription
+ Access data from anywhere with an Internet connection
+ Backups are carried out by the cloud provider so save the need for local backups
– The data cannot be accessed without an Internet connection
– User won’t be directly able to control the security of the data - trusting provider's security
– Uploading and downloading data could take a long time - depends on the bandwidth of the user’s connection
As mentioned earlier, software is the code that runs on the computer. There are two types of software:
Application Software
System Software
Application software (also known as Apps) are software that provide users with additional functionality above what is offered by system software.
Examples include:
Web Browsers (safari, chrome, edge)
Word Processors (Microsoft Word, Google Docs)
Video Games
Spotify
Social Media (Instagram, Tik Tok, Snapchat, etc.)
System software is the software that provides a platform for other software to work.
Types of system software include:
Operating System (OS)
Utility Programs (anti-virus, disk defragmenter, etc.)
Operating systems (OS) manage computer hardware, users and the resources used by software
They are responsible for managing:
Processor(s) - The OS is responsible for deciding which program will run on the processor and how much time it will get to run.
Multitasking - Where an operating system manages many tasks happening at the same time and sends interupt signals if a task needs priority.
Memory - The operating system keeps a record of where each program and its data are located and will make sure not to overwrite existing programs and data.
Input/output (I/O) devices - The operating system must manage input/output devices by getting inputs from and sending outputs to peripheral devices like mice, keyboards, printers, displays, digital cameras, etc. It does this thropugh device specific drivers.
Applications:
The operating system (OS) provides graphical user interface (GUI) features such as windows, minimise, maximise, resize,
When an application is opened the OS will copy the program into RAM and allocate an area of RAM for the program to use
When an application is closed the operating system will make sure that it is removed from RAM
The operating system may also be responsible for installing and updating applications
Security - The operating system is responsible for keeping the computer system and operating system, application programs and user data secure.
Users - The operating system is responsible for user logins and passwords and keeps the system secure by providing each user with their own access rights.
Operating systems come bundled with additional utility programs which helps to keep
them working well. Utility programs provide extra functionality and perform housekeeping tasks that keep computers running efficiently.
They are often packaged as part of the operating system but some utility programs, such as anti-virus software, are bought as stand-alone software programs.
Examples of utility programs:
Encryption software - used to encode text so that it cannot be understood without knowing the key to decode it.
Defragmentation software - When you save a large file it may not fit on the disk in consecutive memory locations, the file is referred to as ‘fragmented’. Defragmenting the hard disk reorganises files so they are stored together which makes read times much faster and free space is also in one place so new files do not need to be fragmented.
Data compression - This reduces the amount of storage data requires, this means that less space is needed on a disk, if sending the files, it reduces the amount of data that is sent. Compression may allow attachments to be sent via email that would otherwise have been larger than a file-size limit and more data can be stored on backup media if it is compressed.
Disk clean-up tools - Removes unneccessary or unused files to free up space on the drive.
Disk formatters - Allows drives to be cleared and have their storage methods changed to allow them, to work with different OS's.
Anti-virus software - protects the operating system from viruses by scanning files and folders for malicious code.
The image above is the AND Gate.
AND has the Symbol: .
AND logic requires both inputs to be True (1) for the output to be True (1).
Below is the Truth table for AND logic:
The image above is the OR Gate.
OR has the Symbol: +
OR logic requires one or the other or both inputs to be True (1) for the output to be True (1).
Below is the Truth table for OR logic:
The image above is the NOT Gate.
NOT has the Symbol: ¯
NOT logic inverts the input to be True (1) if it is False (0) or False (0) if its True (1).
Below is the Truth table for NOT logic:
it is possible to combine the above gates together to form logic circuits that allow us to do more complex logic.
For example, below is a logic circuit for a security door where the door (D) will open if the user has the key (K) or their security card (S) but not if there is someone stood on the pressure pad (P)
This Circuit can be expressed as D = (K OR S) AND (NOT P) or by using the symbols stated above, it is more accurately:
The truth table for this circuit is:
When dealing with logic expressions, we are given the expression and need to get back to the circuit and truth table.
Lets look at the following expression:
Q = A.B+C
now, knowing that the . is an AND and the + is OR we already know what gates are involved in the circuit. So the circuit will look like this:
From this we can calculate the table. Columns need to be A, B, C and Q then we need a column for the result of (A AND B) and then the Q column will show that result XORed with C. like this: