# Computing - Hardware and Software

> Source: https://ollybritton.com/notes/a-level/computing/topics/hardware-software/ · Updated: 2020-09-14 · Tags: computing, school, safe-to-post-online

##### What is hardware??
The physical, tangible parts of the computer.

##### What is software??
All the programs that make the computer function. You can't touch it.

##### What is the hardware part of a music CD??
The physical CD itself.

##### What are the two grooves in a CD called??
Pits and lands.

##### What do the pits and lands in a CD represent??
0s and 1s.

##### What are the two types of software??
* Systems software
* Application software

##### What is a peripheral device??
A secondary device used to get data in and out of software.

##### What are the 3 types of system software??
* Operating systems
* Utility programs
* Library programs

##### What is system software??
Software which runs and manages the computer's hardware and application programs.

##### Is peripheral management system software or application software??
System software.

##### Is a compiler system software or application software??
System software.

##### What is the role of the operating system in hardware and software??
The OS serves as a middle-man for communication between the computer's hardware and software.

##### What does WIMP stand for??
* Windows
* Icons
* Menus
* Pointers (cursors)

##### What is utility software??
Software that maintains or optimizes a system.

##### What's some examples of utility software??
* Virus scanners
* Automatic backups and restoration
* File compression software
* Disk defragmentation

##### What is disk defragmentation??
Putting all files and programs together so that they fit into continuous segments.

##### Why might a defragmented hard disk drive have better performance??
Because files and programs are placed sequentially, the OS can read files without having to jump to different sectors. This speeds up read/writes.

##### Why is some amount of free space needed to carry out disk defragmentation??
There needs to be space to put files while they are swapped in and out of place.

##### What is a library??
A library is a collection of pre-compiled routines that can be used by other programs.

##### What's an example of a Python library??
* `math`
* `random`
* `turtle`

##### What's the purpose of a library??
Programmers can invoke library functionality without having to re-write code.

##### What is bespoke software??
Software that is tailor made to one usecase.

##### Why is bespoke software often more expensive??
Because it has to be specially programmed for one use case.

##### Why might bespoke software be less future-proof than off-the-shelf software??
Off-the-shelf software is likely to get regular updates

##### What is an advantage of bespoke software??
Very specialised to a particular use case.

##### What is an example of application software??
* Word processors
* Image editors
* Accounting packages
* Internet browsers
* Email clients

##### What is the purpose of application software??
To allow users to complete different tasks.

##### What are the 4 categories of application software??
* General purpose software
* Special purpose software

##### What is general purpose software??
Software which is used for multiple, generic purposes.

##### What's an example of general purpose software??
* Email clients
* Browsers

##### What is special purpose software??
Software which performs tasks for a single, specific job.

##### Is presentation software general or specialised software??
General.

##### Is a calculator general of specialised software??
Specialised.

##### What are the two categories of bespoke software??
* Off-the-shelf
* Bespoke

##### What's a benefit of off-the-shelf software??
* Likely to be more intuitive, well-tested & documented
* Cheaper
* Regular updates, future-proof

##### What's a drawback to off-the-shelf software??
* Might not do exactly what you need
* Potentially more security vunerabilities

##### Why may off-the-shelf software be more vunerable??
Because it's easy for an attacker to get a copy of the software themselves.

##### What's a benefit of bespoke software??
* Does exactly what you want it to do.
* Potentially less security vunerabilities

##### What's a drawback of bespoke software??
* Has to be made for one usecase:
	* Might be more expensive
	* May take a long time to develop
	* May not get regular updates
* Less likely to be intuitive
* Locked into an ecosystem

---
Olly Britton — https://ollybritton.com. Machine-readable index: https://ollybritton.com/llms.txt
