Definitions - computer systems

0.0(0)
studied byStudied by 3 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/183

flashcard set

Earn XP

Description and Tags

Complete, has all topics

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

184 Terms

1
New cards
Accumulator (ACC)
A special register to temporarily store the results of operations performed by the ALU
2
New cards
Address bus
Carries the memory location address of the register the data is being carried to or from
3
New cards
Arithmetic and logic unit (ALU)
A part of the CPU that performs arithmetic calculations and logical operations on data for the computer programs
4
New cards
Buses
A physical set of parallel wires connecting and carrying groups of bits between several components of a computer
5
New cards
Cache
A small and fast but expensive memory in the CPU used to store the instructions and data that is accessed reguarly
6
New cards
Clock speed
The frequency at which the internal clock generates signals switching between 0 and 1. It controls how often instructions are executed and data is fetched
7
New cards
Contemporary processor architecture

A modern computer architecture combining elements of both Von Neumann and Harvard

8
New cards
Control bus
A bi-directional bus carrying control signals from the CU to synchronise access
9
New cards
Control unit
A part of the CPU that controls and manages the execution of instructions. It sends control signals to coordinate execution and controls FDE cycles and buses
10
New cards
Current Instruction Register (CIR)
A special register that stores the current instruction being executed and decoded. The instructions are divided into operand and opcode
11
New cards
Data bus

A bi-directional bus for carrying data and intructions between the processor and memory

12
New cards
Fetch-Decode-Execute cycles
The process of fetching from memory, decoding and executing the instruction
13
New cards
Harvard architecture
A computer architecture that stores the memory address of the next instruction to load or data to use
14
New cards
Memory Address Register (MAR)
A special register that stores the memory address of the next instruction to load or data to use
15
New cards
Memory Data Register (MDR)
A special register that temporarily stores data to be read from or written to the computer’s memory
16
New cards
Number of cores
A core is a processing unit that handles instructions with its own FDE cycles
17
New cards
Pipelining
The simultaneous decoding of several instructions by decoding the next instruction and fetching the one after while the current one is being decoded
18
New cards
Program Counter (PC)
A special purpose register that stores the address of the next instruction to execute
19
New cards
Registers
Special memory cells that can be accessed quickly. They temporarily store data and control information
20
New cards
Von Neumann Architecture
A computer architecture where a single control unit manages program control via a linear sequence of FDE cycles
21
New cards

Flash Storage

A solid state technology that stores data on a collection of memory chips. No moving parts as data is accessed by software

22
New cards
Input devices
Peripheral devices that allow for the user to communicate and to pass readable data into a computer, decode it and send it to the CPU
23
New cards
Magnetic storage
Relies on the polarisation of magnetic particles to store bits on a magnetic material which is typically moved mechanically. A high capacity and low cost means of storage
24
New cards
Optical storage
Data is stored in the reflectivity (pits and lands) of a surface, and is read and written to by a laser
25
New cards
Random Access Memory (RAM)
Memory used to store programs and data in use by the computer. Quick access times by all data lost when the computer is turned off (volatile memory)
26
New cards

Read-Only Memory (ROM)

Memory used to store information that is permanently required to boot and run the computer. Cannot be written to and is non-volatile

27
New cards
Storage device
Any medium on which data can be stored even when powered off
28
New cards
Virtual storage
Using the hard disk as though it were an extension of memory to free up more RAM for current programs
29
New cards
Basic Input Output System (BIOS)
A program that initialises and tests whether system harware is functional and then loads the operating system from the hard disk into RAM when the computer is turned on
30
New cards
Device drivers
A program supplied with a peripheral device that allows the OS to control and communicate with the device
31
New cards
Distributed operating systems
The operating system is spread over multiple computer servers on a network, acting as a single system to parallel process a job
32
New cards
Embedded operating systems
A specialised operating system with limited resources and functionality, built in to control a single machine
33
New cards
First come first served
A scheduling algortihm where processes are dealt with in the order they arrive (a queue)
34
New cards
Intermediate code
Code partly translated between high-level and machine language produced by a complier
35
New cards
Interrupts
A signal from hardware, software or the clock to alert the CPU. IF the interrupt is a higher priority than the current task, the current routine pauses and resumes after the interrupt is executed
36
New cards
Interrupt Service Routines (ISR)
If an interrupt is a higher priority than the current task, register contents are temporarily transferred onto the system stack at the end of the current FDE cucle and the interupt is handled
37
New cards
Memory management
The efficient organisation and allocation of main memeory to the programs in use
38
New cards

Multi-level feedback queues

A scheduling algorithm that uses multiple queues, each with a different priority. Jobs can be moved between queues

39
New cards
Multi-tasking operating systems
An operating system capable of running multiple tasks simulataneously
40
New cards
Multi-user operating systems
An operating system consisting of one mainframe computer with multiple terminals that allow multiple users to access the computer’s resources. Each user is given a time slice of the mainframe processor
41
New cards
Operating system
A set of programs managing the operation of the computer that is load into RAM everytime the computer is turned on. It bridges the user to the hardware
42
New cards
Paging
Partitioning memory into fixed sized physical divisions called pages. Processes in memory will be assigned an appropriate number of pages
43
New cards
Real time operating systems
An operating system where data is processed as it comes with responses generated with a guaranteed timeframe
44
New cards
Round-Robin
A scheduling algorithm where each proess is given an equal time slice and is dealt with on a first in first out basis. If a process does not finish within a time slice it joins the end of the queue
45
New cards
Scheduling
Allocating processor time to each application to ensure processor time is used as efficiently as possible when multitasking
46
New cards
Segementation
Partitioning memory into variable sized logical divisions called segments. A large program can be executed by consecutively running its segments
47
New cards
Shortest job first
A scheduling algorithm that picks the process with shortest estimated running time and runs it until its finishes
48
New cards
Shortest remaining time
A scheduling algorithm that picks the process with shortest estimated running time and runs it until it finishes
49
New cards
Virtual machines
An instance where software is used to take on the function of a machine, including intermediate code of running an operating system within another
50
New cards
Virtual memory
An allocated area of secondary storage where pages of inactive jobs are swapped into to free up enough RAM for the current job
51
New cards
Agile methodologies
An iterative process that produces incremental prototypes of software over short, fast-paced sprints. Each prototype is user tested and any feedback and change in requirements will be accounted for in future sprints
52
New cards

Extreme programming

A type of agile methodology that is more responsive to changing user needs with short development cycles and very frequent software releases. Checkpoints are incorporated to change or add new user requirements

53
New cards
Rapid application development
A method capable of speedy responses to changes in technologies and user requirements through repeated prototyping, continual evaluations, and strict time limits. the user will quikly receive a reduced-functionality mock up of the program
54
New cards
Spiral model
An iterative version of the waterfall model where stages are refined and repeated until the final product is complete. The first cycle works towards an initial prototype, and each successive cycle produces a refined prototype
55
New cards

Waterfall lifecycle

Each stage of development is completed one at a time in a linear order. Results from a completed stage are imput into the next. Any previous stage can be returned to in light of feedback, however the stages that follow need to be worked through again

56
New cards
AND
A logical operator which returns TRUE if and only if all inputs are TRUE
57
New cards
ASCII
A character set used to represent alphanumeric characters or symbols as a set of 8 bits
58
New cards
Binary
A number system that only uses ones and zeroes to represent numbers. A base 2 system
59
New cards
Bitwise manipulation
Operations performed on a set of bits
60
New cards
Boolean
A data type that can only store one of two possible values
61
New cards
Character
A data type for storing a letter, number or special character
62
New cards
Denary
A number system that only uses 10 characters to represent numbers
63
New cards
Floating point arithmetic
Performing arithmetic operations on floating point numbers in binary
64
New cards
Hexadecimal
A number system that only uses 16 characters to represent numbers
65
New cards
Integer
A data type for storing whole number values with no decimal parts
66
New cards
OR
A logical operator which returns TRUE if and only if any one of the inputs are TRUE
67
New cards
Primitive data type
A basic built-in data type provided by a programming language
68
New cards
Real/Floating point
A data type for storing numbers with decimal or fractional parts
69
New cards

Shifts

A bitwise manipulation where a set of bits are all moved by one place in a given direction, and the end bit may be taken as a carry or appended to the other end depending on the shift method

70
New cards
String
A data type for storing a sequene of alphanumeric characters or sysmbols, typically within quotation marks
71
New cards
Two’s complement
A method of storing negative numbers in binary. It involves flipping all the bits of the binary represenation of the posivitive number and then adding 1
72
New cards
UNICODE
A characer set that is a superset of ASCII. It is usd to represent alphanumeric characters or symbols as an integer code point which is equal to that character’s ASCII code
73
New cards
XOR
A logical operator which returns TRUE if and only if exactly 1 of the inputs are TRUE
74
New cards
Arrays
A data structure for storing a finite, ordered set of data of the same data type within a single identifier
75
New cards
Binary search tree
A tree where each node cannot have more than two children. The right node and its descendents always have a greater value than the root node (first data item)
76
New cards
Breadth first traversal
A method of traversing an entire graph by visiting all the neighbours of the first node before repeating the same with each neighbour in the order they were visited
77
New cards
Depth first traversal
A method a traversing an entire graph by travelling as far as possible along one route before backtracking and trying alternative unexplored routes
78
New cards
Directed graphs
A graph where the order of the vertices paired in an edge matter. The edges are one way
79
New cards
Graphs
A data structure consisting of a set of verices/nodes connected by a set of edges/arcs
80
New cards
Hash table
A data structure where a hashing algorithm calculates a value to determine where a data item is to be stored. The data item can then be directly accessed by recalculation, without any search
81
New cards
Linked lists
A data structure that stores an ordered sequence of data where each item is stored with a pointer to the next item. The items are not stored contiguously in memory
82
New cards
Lists
A data structure that stores a sequence of data values, each with a unique index
83
New cards
Queues
A FIFO data structure. The first item added/pushed on to the queue is the first to be removed/popped off
84
New cards
Records
A data structure that stores data elements called fields, organised based on attributes
85
New cards
Stacks
A LIFO data structure. The last item added/pushed is the first to be removed/popped off
86
New cards
Trees
A data structure that uses a set of linked nodes to form a heirachal structure starting at a root node. Each node is a child/sub-node of a parent node
87
New cards
Tuples
A data structure for storing an immutable, odered set of data, which can be of different data types, within a single identifier
88
New cards
Undirected graphs
A graph where the order of the vertices paired in an edge does not matter. The edges are bidirectional
89
New cards

Applications

A program that can be run on a computer, allowing the user to carry out specific tasks

90
New cards

Assembler

A translator in a low level language, which converts assembley code into machine code

91
New cards

Closed source

Proprietary software sold with a license and restrictions on how many users can use it. The source code is not avaliable to users

92
New cards

Code generation

The third and final stage of compilation, where an equivalent machine code program is produced

93
New cards

Compilation

The process of analysing high level source code and converting it to machine code

94
New cards

Compilers

A translator that converts high level language to machine code

95
New cards

Interpreters

A translator which checks a source program for syntax errors line by line, translates it to machine code and executes the line

96
New cards

Lexical analysis

The first stage of compilation, where extra spaces and comments are removed from the source code and it is searched for simple erors. Keywords, constants and variables are replaced by tokens. Variable names are loaded into the symbol table

97
New cards

Libraries

A collection of programs which are already compiled and can be loaded into a program and run whenever required

98
New cards

Linkers

A program which places the appropriate machine addresses in the call and returns instructions of a compiled program so all the other required object code files and modules are linked together

99
New cards

Loaders

A program that loads the executable object program and its associated libraries into memory before it is run

100
New cards

Open source

Software whose source code is freely avaliable to view, redistribute or modify