Computers: Software Terms Flashcards
What is a low level language?
A language much closer to binary that can be used to control hardware directly so are CPU specific
What are 2 examples of low level languages?
Machine Code:
- The binary code understood by the computer E.g. 0110 might mean ADD
Assembly Language:
- A mnemonic used to remember the binary. It is a direct translation of the binary. E.g. ADD might be used instead of 0110 as it is easier to remember
What is a high level language?
- A language that is closer to a ‘human’ language (English). E.g. Python
- They need translating into binary.
- They are not hardware specific
What is a Translator?
A program that turns high level languages into binary.
What is an Interpreter?
- A translator that translates one line at a time. This allows better error checking. E.g. error on line 1
- Creates less efficient code
- Need access to source code in order tot run program.
What is a Compiler?
- A translator that translates the whole code at once.
- Can give more efficient translations and creates an executable file (.EXE)
What is Robust Software?
Software that can handle unexpected actions and not crash
What is a Code Review?
- Getting someone else (or software to do it automatically) to check code for inefficiencies, vulnerabilities and agreed standards
What are Audit Trails?
- Keep track of who makes what changes to code and when.
- Version control helps here
What is an Operating System?
System software that acts as interface between hardware and software and provides a way for a user to interact with the system
What are the Roles of the OS?
Process Management - Scheduling algorithms for multitasking and prioritising processes.
Memory Management - Manages which processes are in memory. Virtual memory is used if memory is full.
File Management - Root directory, directories and subdirectories held in the tree structure. You can Read, Write, Execute, or Delete files
User Management - Access control but also a user interface. Usually GUI or CLI
Peripheral Management - Device drivers used for additional items of hardware such as keyboards, graphics cards etc.
What are the main examples of Utility Software?
Compression Software - Lossy (removes some data from file) and lossless (repackage original file and lose no data E.g. Zip)
Disk Defragmentation - Moves data blocks closer to each other speeding up Read/Write. ONLY MAGNETIC DRIVES
Backup Software
Recovery Software
File Repair
Anti - Malware