3.4 Computer Systems Flashcards

1
Q

What is hardware ?

A

Hardware is the physical components which make up a computer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is software ?

A

Software are the instructions which control the computers physical components

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a general purpose system ?

A

General purpose systems are computer systems that can perform many tasks and have replaceable software e.g PC or Mac

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is an embedded system ?

A

An embedded system is a computer system built inside of another device to support their operation and have specific firmware burned onto the chips

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is application software ?

A

Application software is software that performs end user tasks

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is system software ?

A

System software are programs which are needed to enable the computer to function e.g OS, utility software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are operating systems ?

A

Operating systems manage the hardware in a computer and provide an interface for applications to run

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Why is the operating system needed ?

A
  • provide an interface between users, applications and hardware
  • manage memory between running applications and processes
  • allocate processor time to different processes/task
  • handle input/output devices
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the functions of the operating system

A
  • memory manager
  • application manager
  • I/O device manager
  • security manager
  • process manager
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the memory manager ?

A

The memory manager allocates primary memory (RAM) to the different processes which are running on the computer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is processor management ?

A

Each cpu core can only process one instruction at a time, therefore when there is multiple applications running, the OS tells the CPU which applications instructions to process at a specific time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is Input/output device management ?

A

The I/O devices, also called peripherals allow computers to take inputs and give outputs. The I/O device manager allows data to be read and sent to the peripherals. The I/O management is also responsible for the installation of device drivers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the application manager ?

A

When a new application is installed the OS will manage this process. The application manager also allocates memory space for the application and controls the applications access to data or devices

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is security management ?

A

The security manager controls which users can access the system, the security manager also prevents users from accessing files and data they shouldn’t have access to. The security manager Also manages the computers firewall ensuring only permitted applications are able to run on the computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is utility software and what are some examples ?

A

utility software is a type of system software that performs specific tasks to help maintain the system, including:

  • encryption software
  • defragmentation
  • data compression
  • backup software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is defragmentation software ?

A

Defragmentation programs, improve hard disks performance by applying an algorithm to reorganise data stored on the disk.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is encryption software ?

A

Prevents unauthorised users from access to files by applying an algorithm to scramble the data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is backup software ?

A

Makes copies of data that can be restored in case of data loss

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is compression software ?

A

Compression software applies and algorithm to reduce the space required to store a file and its contents (lossless)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What are the differences between high-level and low-level programming languages ?

A

High-level languages:
- human-readable, easier to develop and debug
- one statement replaces many cpu instructions
- must be translated for the CPU to execute
Low-level languages:
- provides exact control over the cpu
- hard to write by humans
- is specific to one CPU

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What is the difference between machine code and assembly language ?

A
  • Machine code are instructions stored in binary and are executed by the processor
  • assembly language are stored in short mnemonics in place of binary to make it easier to program
    Key point:
  • there is 1:1 mapping between machine code and assembly mnemonics
22
Q

What are the purpose of translators ?

A
  • all programs must be translated into machine code before it can be run by any processor
23
Q

What are the 3 types of translators ?

A
  • interpreter, high to low
  • compiler, high to low
  • assembler, low to low
24
Q

How does a compiler work ?

A

1) translated high-level program in one go into object code which contains machine code
2) produces an executable file so the original code does not need to be compiled again

25
How does an **interpreter work** ?
1) translates program into machine code, **line by line** and then executing it 2) it does this by translating each statement by calling it’s **subroutines which are already translated into machine code** 3) if it detects a runtime error the programmer is made aware of the error at that line, and the translation stops 4) **source code** needs to be interpreted every time it is run
26
How do **assemblers** work ?
assemblers translate low-level assembly language into machine code **all at once**
27
When would you use **compilers** ?
- production of programs for **commercial distribution** - producing **executable files**, that can be run without any additional software
28
When would you use **interpreters** ?
- good for **rapid program development** since there is no need to recompile after changes - good for programs which need lots of **debugging** and **testing**
29
When would you use **assemblers** ?
- used when **low-level** assembly language has been written for a **specific type** of processor e.g **embedded systems**
30
What is the role of **main memory** ?
The role of main memory: - **stores data** while the program is being executed - each memory address has a **unique address** - data and instruction are **replaced in memory as needed**
31
What is the purpose of the **CPU** ?
The purpose of the **CPU** is to read and execute instructions stored in memory by repeatedly carrying out the **fetch-decode-execute cycle**
32
What components make up the **CPU** ?
- **arithmetic and logic unit** - **registers** - **control unit** - **clock** - **buses**
33
What is the purpose of the **control unit** ?
The control unit contains a **clock** that coordinates activity across the cpu and sets the overall **clock speed** of the cpu
34
What is the purpose of the **Arithmetic logic unit** ?
The ALU performs calculations including **addition and subtractions** and **Boolean comparisons**
35
What are the purpose of **registers** ?
Registers are **very small amounts of memory** in the cpu that are used to hold **specific instructions** that are required by the cpu to perform the fetch-decode-execute cycle
36
What are **buses** ?
These are components which are **connected via a collection of wires** through wich **data and signals** can be **transmitted**
37
What is the **fetch-decode-execute** cycle ?
1) **Fetch** - the next instruction is fetched from main memory to the cpu instruction register 2) **decode** - the instruction is decoded to work out what it is, by control unit 3) **execute** - the instruction is executed (carried out), by ALU or data may be read or written to main memory
38
What are the factors which affect the **CPU performance** ?
- **Clock speed** - the faster the clock speed, the more instructions can be processed in a second - **CPU cores** - multi-core CPU’s can process multiple instructions at the same time, leading to a potential increase in CPU performance **if programs have been optimised to utilise this feature** - **cache memory size** - Cache memory is used to store **frequently used data and instructions**, having more cache memory allows the CPU to **store more** instructions, **reducing the time lost,** increasing cpu performance
39
What are the 2 types of **main memory** ?
- **RAM** - temporarily stores **program instructions and data** while they are being processed by the cpu, RAM is **volatile** so its contents are lost when the computer is switched off. - **ROM** - **permanently** stores program instructions and data but it cannot be written to, it is **non-volatile** so contents are not lost when computer is switched off **both RAM and ROM can be directly accessed by the cpu**
40
What are **registers** and **cache memory** ?
- **registers** are small units of memory that store **specific pieces of data** that are required during the CPU’s fetch-decode-execute - **Cache memory** is extremely fast and cpu use it to store recently fetched instructions so they can be quickly executed
41
What is the difference between **main memory** and **secondary storage** ?
Main memory: - directly accessed by the cpu - **volatile** - RAM stores data and instructions which are **currently in use** Secondary storage: - **non-volatile** not directly accesses by the cpu - **slower than primary memory**, but larger - **used for long-term storage**
42
What is the need for **secondary storage** ?
- **data and software** are **permanently retained** when the computer is turned off, so allows long-term storage.
43
What are the different types of **secondary storage** ?
- **magnetic storage** - Hard disks, magnetic tapes - **flash memory** - Solid state drives, USB memory sticks - **optical storage** - CD’s, DVD, Blu ray
44
How do **Magnetic hard disks** work ?
1) HD’s contain multiple metal discs **platters** which spin at very high speeds 2) the surface of the platters contain many **tiny magnetised regions**, one end represents 0 the other end represents 1 3) each platter is divided into **tracks** and **sectors**, the intersections of which are called **blocks** 4) as the platters **spin**, a magnetic **read/write head is moved** to the correct **block** on the disk where data should be read/written to
45
What are the advantages and disadvantages of **magnetic Hard disks** ?
Advantages: - **large capacity** - **cheap per GB** - **long-lasting and reliable** Disadvantages: - **relatively slow access times** - **has moving parts so wear by susceptible to wear and tear** - **can be noisy**
46
What are the advantages and disadvantages of **solid state drives** ?
Advantages: - **faster access times** - **no moving parts mean they are more robust** - **SDD’s are smaller in size so are better for smaller devices** Disadvantages: - **smaller capacity** - **higher cost per GB**
47
What are the advantages and disadvantages of **Optical storage** ?
Advantages: - **potable** - **relatively cheap per GB** Disadvantages: - **slower access times** than HDD and SSD - **prone to scratches which can damage the surface** and corrupt data
48
What is **cloud storage** ?
**cloud storage** refers to **remote storage**, accessed via the internet, data is actually stored on **magnetic hard disk drives** at remote locations in giant data centres around the world.
49
What are the advantages and disadvantages of **cloud storage** ?
Advantages: - **files are automatically backed up** - **remote access to files from anywhere** - **enables file sharing** Disadvantages: - **security of data is handled by a third party** - **need an internet connection to access data** - **may need to pay a subscription**
50
What are the advantages of **high-level programming languages** ?
- high-level languages have built-in functions - high-level languages have built-in libraries - high-level languages usually require fewer lines of code to be written - it is easier to find mistakes in the code - it is easier to maintain and debug - it is quicker to develop in high-level