1.2.2 Applications Software Flashcards
What is the difference between applications and systems software?
Applications software is utilised directly by the end-user whereas systems software ensures the high performance of the computer.
Give examples of utilities.
- Compression,
- Disk defragmentation,
- Antivirus,
- Automatic backup,
- Automatic updating.
What are the advantages of using closed source code?
- Thorough, regular and well-tested updates,
- Expert support and user manuals from the company,
- High levels of security as it is developed in a professional, controlled environment.
What are some features of open source code?
- Does not require a license to be used,
- Distributed with the source code,
- Can be modified and sold on.
Give two advantages of using compiled code over interpreted code.
- Faster to execute,
- Does not require a complier to run.
Give some advantages of using interpreted code over complied code.
- Is platform independent,
- Runs instantly without time waiting for compilation,
- Useful for debugging.
What is assembly language?
A low-level language that has almost a one-to-one relationship with machine code. It is platform specific.
What are the stages of compilation?
- Lexical analysis,
- Syntax analysis,
- Code generation,
- Optimisation.
What happens during syntax analysis?
- Tokens are compared to the rules of the programming language,
- Syntax errors are identified,
- Symbol table updated with more details,
- Semantic analysis (finding logic errors).
What are the similarities and differences between static and dynamic linkers?
Both: Link external modules and libraries to the main program.
Static: Library code copied into the file. File size increased.
Dynamic: Addresses of libraries included within the file. External updates automatically feed through to the main program.
What are some advantages of using libraries?
- Error-free,
- Save time,
- Re-usable
- No need to ‘reinvent the wheel’,
- Designed by experts.
Describe the function of a loader.
Provided by the operating system, a loader retrieves the library or subroutine from the given memory location.
What is the purpose of the optimisation stage of compilation?
- Reduce execution time,
- Reduce inefficient sections of code,
- Remove redundant code.