3.4 Computer Systems Flashcards

You may prefer our related Brainscape-certified 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
Q

How does an interpreter work ?

A

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
Q

How do assemblers work ?

A

assemblers translate low-level assembly language into machine code all at once

27
Q

When would you use compilers ?

A
  • production of programs for commercial distribution
  • producing executable files, that can be run without any additional software
28
Q

When would you use interpreters ?

A
  • 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
Q

When would you use assemblers ?

A
  • used when low-level assembly language has been written for a specific type of processor e.g embedded systems
30
Q

What is the role of main memory ?

A

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
Q

What is the purpose of the CPU ?

A

The purpose of the CPU is to read and execute instructions stored in memory by repeatedly carrying out the fetch-decode-execute cycle

32
Q

What components make up the CPU ?

A
  • arithmetic and logic unit
  • registers
  • control unit
  • clock
  • buses
33
Q

What is the purpose of the control unit ?

A

The control unit contains a clock that coordinates activity across the cpu and sets the overall clock speed of the cpu

34
Q

What is the purpose of the Arithmetic logic unit ?

A

The ALU performs calculations including addition and subtractions and Boolean comparisons

35
Q

What are the purpose of registers ?

A

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
Q

What are buses ?

A

These are components which are connected via a collection of wires through wich data and signals can be transmitted

37
Q

What is the fetch-decode-execute cycle ?

A

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
Q

What are the factors which affect the CPU performance ?

A
  • 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
Q

What are the 2 types of main memory ?

A
  • 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
Q

What are registers and cache memory ?

A
  • 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
Q

What is the difference between main memory and secondary storage ?

A

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
Q

What is the need for secondary storage ?

A
  • data and software are permanently retained when the computer is turned off, so allows long-term storage.
43
Q

What are the different types of secondary storage ?

A
  • magnetic storage - Hard disks, magnetic tapes
  • flash memory - Solid state drives, USB memory sticks
  • optical storage - CD’s, DVD, Blu ray
44
Q

How do Magnetic hard disks work ?

A

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
Q

What are the advantages and disadvantages of magnetic Hard disks ?

A

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
Q

What are the advantages and disadvantages of solid state drives ?

A

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
Q

What are the advantages and disadvantages of Optical storage ?

A

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
Q

What is cloud storage ?

A

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
Q

What are the advantages and disadvantages of cloud storage ?

A

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
Q

What are the advantages of high-level programming languages ?

A
  • 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