Applications Generation Flashcards
What is software that runs one task called
Application software
What is software that runs the computer software called
Systems software
What are utilities
ensure high performance of OS
Utilities examples
File Compression
Disk defragmentation
Antivirus
Automatic updating
Backup
Closed source fact:
You need license to use
Compiler Evaluation
+ Runs faster
+ Run without translator
- Compilation is longer
- Only executable on certain devices
- Not easy to identify errors
Interpreter Evaluation
+ Easy to identify errors
+ Quicker compilation
+ Can be run on different devices
- Slower
Lexical analysis stage
Whitespace and comments removed
Analysed for keywords, variables and constants that are replaced with tokens, information about each token associated with a keyword or identifier is stored in a symbol table.
Syntax analysis stage
Tokens are analysed for rules of programming language
Any that break the rules are flagged as syntax errors.
Abstract syntax tree that represents code is produced
Semantic analysis: Logic mistakes are identified.
Code generation stage
Abstract syntax tree is used to produce machine code
Optimisation stage
Searches through code to change it to be faster to execute without changing the code.
Redundant parts of the code are removed.
What are linkers
A piece of software that links external modules and libraries
Static: Adds directly into main file, increasing its size
Dynamic: Addresses are included, loaders are used to retrieve from address (file remains small
Libraries and advantages
Pre-compiled programs that can be incorporated.
+ Error free
+ Save time
+ Can be reused