Software Flashcards
Application
Any program, routine or procedures that can be run on a computer system
Assembler
Translates a program written in assembly language into machine code
Assembly code
Plain text code that has a 1:1 translation to machine code
Bespoke software
More expensive- required expertise to analyse software requirements
Features customised to user requirements
Takes a while to develop
May contain errors
BIOS
Basic Input/Output System: part of the operating system that handles the input and output of the computer. It enables the operating system to use the particular features of the hardware being used
Closed source/ proprietary
A types of computer program for which the software code is not shared with the public for anyone to look at or make changes to- Closed / Proprietary type files are often only able to be opened if you own a version of the software they were originally made in
Code generation
The stage in compilation that produces a machine code program that is equivalent to the source program
Compilation
The translation process that produces an equivalent program in a low level language. Compilation involves analysing the language structure of the source program, determining if it is valid, and proceeding suitable machine code
Compiler
Takes source code, translates it all into object code before allowing it to run
Device drivers
Piece if software, usually supplied with a device, that tells the OS how it can communicate with the device
FCFS
First Come First Serve
A scheduling algorithm that deals with each user or task in the order in which they arrive, this can be thought of as a queue
Distributed systems
Form of parallel processing system which spreads the load over multiple computer servers
A single job is split up into several tasks and each of these is run on a separate computer
Coordinated by the OS so that it appears to the user as a single system
Interpreter
Converts a program from a high level language into machine code and runs it
Embedded operating system
Used in washing machines, microwaves etc
Minimal user interface
No RAM so ne memory management system
No permanent data storage devices
Handling external peripherals
Dealing with I/O requests
Using device drivers to communicate with hardware
Interrupt
A signal generated by a source such as an input or output device or a systems software routine that causes a break in the execution of the current routine. Control passes to another routine in such a way that the original routine can be resumed after the interrupt
ISR
Interrupt Service Routine
A software routine that hardware invokes in response to an interrupt. ISRs examine an interrupt and determine how to handle it
Lexical Analysis
The stage in compilation that puts each statement into the form best suited to the syntax analyser. The standard components of each statement, such as PRINT or IF are replaced by their tokens and programmer-defined names are entered into symbol table. The lexical analyser also removes unnecessary characters such as spaces, tabs and coder comments
Libraries
A collection of pre-compiled routines which can be incorporated into a program