Computer Systems Flashcards

1
Q

Hardware

A
  • The physical components of a system
  • Includes both internal and external components
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Software

A
  • The name given to program code
  • Comprised of sequences of instructions that are executed in order to perform a task
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Types of software

A
  • Application software
  • System software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Application software

A
  • Programs that complete a specific task for the user
  • e.g web browsers, spreadsheet software, word processors
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

System software

A

Software that operates, controls and maintains the computer and its components

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

Types of system software

A
  • Operating systems
  • Utility programs
  • Library programs
  • Translators
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Operating system

A
  • Allows the user to control the computer
  • Provides a virtual machine to hide the true complexity of the computer from the user
  • Manages and controls access to the computer’s resources (memory management, processor scheduling, handling interrupts)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Utility programs

A

Used to complete housekeeping tasks like:
- Data backup
- Defragmenting hard drives
- Data compression
- Encryption

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

Library programs

A
  • Contain helpful, frequently used programs
  • Must be imported within the program code
  • Simplifies the process of application development
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Low level languages

A
  • Are processor specific
  • Directly manipulate the processor
  • Are difficult to code with and are prone to errors
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Types of low level languages

A
  • Machine code
  • Assembly code
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Machine code

A
  • The lowest-level language
  • Comprised of binary
  • Each instruction directly corresponds to a specific CPU instruction
  • Is processor specific
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Assembly language

A
  • Developed to simplify the coding process
  • Mnemonics are used in place of binary instructions
  • Each instruction has a 1-to-1 correlation to a machine code instruction
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

High level langauges

A
  • Are not platform specific
  • Must be translated into machine code by a compiler or interpreter
  • Uses English instructions and mathematical symbols
  • Contains built in functions, variables, indentation and commenting
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Types of program translator

A
  • Assemblers
  • Compilers
  • Interpreters
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Assemblers

A
  • Translate assembly language into machine code
  • Are platform specific
  • Translation is quick and straightforward
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Compilers

A
  • Translate high-level languages into machine code
  • Are platform specific
  • Translates the entire source code into a standalone executable program
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Interpreters

A
  • Translate high-level languages into machine code
  • Are not platform specific
  • Translates and executes code line-by-line
  • Requires the source code and interpreter every time the program needs to be translated
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Compilers vs Interpreters

A
  • Compilers show all errors after compiling, interpreters stop as soon as they hit the first error
  • Compilers take longer to translate initially but are quick to run after that
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Components of the computer

A
  • Processor
  • Main memory
  • Address bus
  • Data bus
  • Control bus
  • I/O controllers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Processor

A
  • Executes program instructions in order to run applications
  • Contains an ALU, CU and numerous registers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Main memory

A
  • Includes RAM and ROM
  • Stores program instructions and frequently used data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Buses

A
  • A series of parallel wires that connect internal components of a computer system
  • Allows for the transfer of signals between components
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Bus width

A
  • The number of parallel wires
  • Has a direct relationship with the number of bits that can be transferred simultaneously
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Address bus
- Used to transport memory addresses - Specifies where in memory data is be sent to or retrieved from - Each wire added doubles the number of addressable memory locations
26
Data bus
- Sends data and instructions to and from the different components of the computer system - Increases the width increases the volume of data that can be transferred at one time
27
Control bus
- Used to carry control signals that regulate the operation of the computer system - Controls the computer's clock signal
28
I/O controllers
Hardware that control the communication of data between the processor and external hardware devices
29
Harvard architecture
- The processor uses 2 separate main memory locations (1 for data, 1 for instructions) - Each piece of main memory can have different characteristics - Used in embedded systems
30
Von Neumann architecture
- Both instructions and data are stored together in the same memory - Buses are shared for fetching both instructions and data - Used in general-purpose computer systems
31
Stored program concept
- Machine code instructions are stored in main memory - Instructions are fetched and executed serially - By a processor that performs arithmetic and logical operations
32
Advantages of the stored program concept
- Allows for one set of instructions to be switched out for another - Allows modern computers to run numerous different applications - Contents of a memory location can be interpreted as instructions or data
33
Arithmetic logic unit
Performs arithmetic (+, -, etc) and logical (AND, OR, etc) operations
34
Control unit
- Coordinates the flow of data - Generating control signals - Controls the fetch-execute cycle
35
Registers
- Small storage locations used to hold data temporarily - High read and write speeds
36
Types of registers
- General purpose registers - Special purpose registers
37
General purpose registers
Registers that are used as storage for any data required by instructions during execution
38
Special purpose registers
Registers that are assigned to store specific information
39
Types of special purpose registers
- PC - CIR - MAR - MBR - SR
40
Program counter
Holds the memory address of the next instruction to be executed in the fetch execute cycle
41
Current instruction register
Holds the instruction that is currently being executed by the processor
42
Memory address register
Stores the memory address of a memory location that is to be read from or written to
43
Memory buffer register
Holds the contents of a memory location that has been read from or data is to be stored
44
Clock
- Generates a timing signal of regular size and frequency - Used to synchronise communication between components of the processor and the rest of the computer system
45
Fetch-execute cycle
- A continuous cycle performed by the processor to execute programs - Consists of 3 stages (Fetch, Execute, Decode)
46
Fetch
The next instruction to be executed is retrieved from main memory: - The content of the PC is copied to the MAR - The content of the MAR is transferred to main memory by the address bus - The instruction is sent from main memory to the MBR by the data bus
47
Decode
The fetched instruction is decoded: - The contents of the CIR is decoded by the CU - The decoded instruction is split into the opcode and operand
48
Execute
- Any additional data not in the registers is fetched - The instruction is carried out - The results are stored in GPR or main memory
49
Interrupt checking
- The processor checks for interrupts between each cycle - The content of the SR is checked for changes - A change could signal the occurrence of an interrupt
50
Interrupt
Signals sent to the processor by another part of the computer requesting the attention of the processor
51
Processor instruction set
The unique set of instructions that a processor can carry out
52
Opcode
The type of operation to be carried out
53
Operand
The pieces of data on which the operation is performed
54
Immediate addressing
The operand specifies the actual value to be used
55
Direct addressing
The operand specifies the memory address where the value to be used is stored
56
Logical shift
- An operation performed on binary numbers - Involves shifting all the bits a specified number of positions - The result is a number that has been halved/doubled a specified number of times
57
Vectored interrupt method
- The processor stops executing the current program and places the content of its registers on the system stack - The processor loads the appropriate interrupt service routine - Once the interrupt has been handled the processor restores the volatile environment
58
Factors affecting performance
- Number of cores - Cache memory - Clock speed - Word length - Bus width
59
Number of cores
- Each core can perform its own fetch-execute cycle - Different applications can be allocated different cores
60
Cache memory
- A small amount of incredible fast memory - Stores frequently accessed information - More cache memory allows more time to be saved fetching data and instructions
61
Clock speed
- The frequency of pulses generated by the system clock - A higher frequency allows for more fetch-execute cycles to be performed
62
Word length
- A word is a group of bits that is treated as a single unit by the processor - Larger word lengths allow for more bits to be transferred and manipulated at once
63
Bus width
- A larger width is achieved by adding more parallel wires - A wider address bus allows for more addressable memory - A wider data bus increases the volume of data that can be transferred at once