1/182
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
accumulator (acc)
the special register which holds results from the alu
address bus
unidirectional bus that carries the memory address from the cpu to the ram
basic input output system (bios)
a program that initialises and tests whether system hardware is functional and then loads the os from the hard disk into ram when the computer is turned on
device drivers
a program supplied with a peripheral device that allows the os to control and communicate with the device
distributed os
the os is spread over multiple computer servers on a network, acting as a single system to parallel process a job
embedded os
a specialised os with limited resources and functionality, built in to control a single machine
first come first served (fcfs)
a scheduling algorithm where processes are dealt with in the order they arrive in a queue
immediate code
code partly translated between high-level and machine language produced by a computer
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
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 and the interrupt is handled
memory management
the efficient organisation and allocation of main memory to the programs in use
multi level feedback queues
a scheduling algorithm that uses multiple queues, each with a different priority and jobs can be moved between queues
multi-tasking os
an os capable of running multiple tasks simultaneously
multi-user os
an os 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 computer
operating system (os)
a set of programs managing the operation that is loaded into ram every time the computer is turned on. it bridges the user to the hardware
paging
partitioning memory into fixed sized physical divisions called pages. processes in memory will be assigned an appropriate number of pages
real-time os
an operating system where data is processed as it comes, with responses generated with a guaranteed timeframe
round robin
a scheduling algorithm where each process 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
scheduling
allocating processor time to each application to ensure processor time is used as efficiently as possible when multitasking
segmentation
partitioning memory into variable sized logical divisions called segments. a large program can be executed by consecutively running its segments
shortest job first
a scheduling algorithm that picks the process with the shortest estimated running time and runs until it finishes
shortest remaining time
a scheduling algorithm that picks the process with the shortest estimated time remaining to finish. if a process with a shorter time is added, the scheduler switches processes.
virtual machines
any instance where software is used to take on the function of a machine, including immediate code or running an operating system with another
virtual memory
an allocated area of ss where pages of inactive jobs are swapped into to free up enough ram for the current job
applications
a program that can be run on a computer allowing the user to carry out specific tasks
assembler
a translator in low level language which converts assembly language into machine code
closed source
proprietary software sold with a licence and restrictions on how and how many users can use it. the source code is not available to others.
code generation
the final stage of compilation, where an equivalent machine code program is produced
compiler
a translator that converts high level to machine
interpreters
a translator that checks a source program for syntax errors line by line, translates it to machine code and executes the line
lexical analysis
the first stage of compilation where extra spaces and comments are removed from the source code and it is searched for simple errors. keywords, constants and variables are replaced by tokens and variable names are loaded into the symbol table
libraries
a collection of programs which are already compiled and can be loaded into a program and run whenever required
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
loaders
a program that loads the executable object program and its associated libraries into memory before its run
open source
software where its source code is freely available to view, redistribute or modify
optimisation
during code generation, the object code is made as efficient as possible by removing redundancies to produce code that gives the same result
syntax analysis
second stage of compilation, where statements, expressions and tokens are checked for syntax errors using syntax diagrams
translator
a program which converts code from one language to another
utilities
system software with a specific purpose related to maintenance
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
extreme programming (xp)
a type of agile 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
rapid application development (rad)
capable of speedy responses to changes in technologies and user requirements through repeated prototyping, continual evaluations and strict time limits. the user will quickly receive a reduced-functionality mock up of the program.
spiral model
an iterative version of the waterfall model where stages are refined and repeated until the final product is complete
waterfall lifecycle
each stage of development is completed one at a time in a linear order. results from a completed stage are input 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
assembly language
a low level language closely related to but more advanced than machine code. it uses descriptive names and mnemonics for instructions and is related to the design of the computer
attributes
data recorded as a variable associated with an object
classes
a template defining the attributes and methods that can be used to create a type of data known as an object
direct addressing
the simplest addressing mode in assembly language where the operand stores the memory address of the value to be operated on by the operator
encapsulation
a method of maintaining data integrity by only allowing class methods to access data in an object’s attributes
indexed addressing
an addressing mode in assembly language where the address of the operand required is calculated by adding a constant from the index register to the absolute address in the instruction
indexed addressing
an addressing mode in assembly where the data in the address field is constant and the operand is the value to be operate on by the operator
indirect addressing
an addressing mode in assembly language where the operand stores the address of the location holding the memory address of the required data
inheritance
the concept of sub classes inheriting the methods and attributes of its parent class/super class
methods
a program subroutine that represents an action an object can perform
object-oriented languages
programming languages where the code is made of units called objects which are instances of a class. objects have their own attributes and behaviours and can interact with each other.
objects
an instance of a class. the behaviour of this data item depends on how its attributes were defined
polymorphism
objects of different classes can use the same methods to perform an action
procedural languages
a high level language where statements are grouped into self contained blocks known as functions and procedures they have built in data types and data structures
programming paradigms
a style of computation and programming chosen according to the problem at hand
arithmetic and logic unit (alu)
a part of the cpu that performs arithmetic calculations and logical operations on data for the computer programs
buses
a physical set of parallel wires connecting and carrying groups of bits between several components of a computer
cache
a small and fast but expensive memory in the cpu used to store instructions and data that are accessed regularly
clock speed
the freq at which the internal clock generates signals switching between 0 and 1 controlling how often instructions are executed and data is fetched
contemporary processor architecture
a modern computer architecture combining elements of both von neumann and harvard
control bus
a bi directional bus carrying control signals from the cu to synchronise access and use of data
current instruction register (cir)
a special register that stores the current instruction being executed and decoded. the instructions are divided into operand and opcode
data bus
a bi directional bus for carrying data and instructions between the processor and memory
harvard architecture
a computer architecture that stores data and instructions in separate memories to allow the next instruction to be read while data is currently being read or written
memory address register (mar)
a special register that stores the memory address of the next instruction to load or data to use
memory data register (mdr)
a special register that temporarily stores data to be read from or written to the computer’s memory
cores
a processing unit that handles instructions with its own fde cycle
multicore processors
have multiple cores that can run simultaneously
pipelining
the simultaneous decoding of several instructions by decoding the next instruction and fetching the one after while the current one is being decoded
program counter (pc)
a special purpose register that stores the address of the next instruction to execute
registers
special memory cells that can be accessed quickly. they temporarily store data and control information
von neumann architecture
a computer architecture where a single cu manages program control via a linear sequence of fde cycles
complex instruction set computer (cisc)
a more complicated and expensive processor design that can execute a series of tasks in a single complex instruction built into the hardware. the variety of instructions means less ram is used but pipelining is not possible
graphics processing unit (gpu)
a specialised processing unit with a huge number of small cores that allow efficient parallel computation for tasks such as computer graphics, machine learning, data mining, etc
multicore systems
several cpu cores are incorporated into a single processor chip to help distribute workload
parallel processing system
splitting a job into several subtasks which are simultaneously carried out by each core in the system
reduced instruction set computer (risc)
a simpler processor design that can only execute a single simple instruction each clock cycle. this uses more ram but allows pipelining
flash storage
a solid state technology that stores data on a collection of memory chips. no moving parts as data is accessed by software
input devices
peripheral devices that allow the user communicate and to pass readable data into a computer, decode it, and send it to the cpu
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
optical storage
data is stored in the reflectivity (pits and lands) of a surface, and is read and written to by a laser
output devices
peripheral devices that take convert signals from a computer into a human-readable form
random access memory (ram)
volatile memory used to store programs and data in use by the computer. quick access times
read-only memory (rom)
memory used to store information that is permanently required to boot up and run the computer. cannot be written to and is non-volatile
storage device
any medium on which data can be stored even when powered off
virtual storage
using the hard disk as though it were an extension of memory to free up more ram or current programs
asymmetric encryption
an encryption technique where a public key available to everyone is used to encrypt the data and the data is decrypted by the paired private key known only by the recipient
dictionary coding
a type of lossless compression where text is searched for entries that match the entries in a dictionary. entries are substituted by a unique code which can then be translated
hashing
a one-way transformation of data into an abbreviated form called a hash value. the hash value is used to validate login credentials like passwords or pins without revealing the original data to hackers
lossless compression
a compression algorithm that retains all the data in the file only by storing the instructions needed to reconstruct the original file. no data is lost.
lossy compression
a compression algorithm that removes non essential data from a file leading to a noticeable decrease in accuracy of the data. data lost is non-recoverable
run-length encoding
a type of lossless compression where repeated occurrences of the same data (like several pixels of the same colour in an image) are stored as single data values with their counts
symmetric encryption
an encryption technique where the same key is used to encrypt and decrypt data. a copy of the key must be transferred between both parties
atomicity
all transactions should either succeed or fail and never only partially processed
consistency
each transaction must obey the defined validation rules of the database to maintain referential integrity
durability (databases)
once a transaction has begun it bust be completed under all circumstances