Application and Utility Software Quiz
37 Questions
5 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What type of software is designed specifically for end-users to perform tasks?

  • System software
  • Application software (correct)
  • Utility software
  • Firmware

Utilities are essential for directly interacting with hardware.

False (B)

Name one example of application software.

Word processor

The process of rearranging fragmented files on a hard disk is called _____ defragmentation.

<p>disk</p> Signup and view all the answers

Which of the following is an example of a utility program?

<p>Antivirus (B)</p> Signup and view all the answers

Compilers are types of application software.

<p>False (B)</p> Signup and view all the answers

What is the primary function of an antivirus utility?

<p>Detect and remove threats</p> Signup and view all the answers

Match the following types of software with their descriptions:

<p>Systems software = Software for user tasks Application software = Responsible for running the computer system Utility software = Maintains high performance of the operating system Translators = Convert source code into machine code</p> Signup and view all the answers

What is a key characteristic of static linking?

<p>Modules are added directly into the main file (C)</p> Signup and view all the answers

Dynamic linking allows programs to automatically incorporate updates to libraries without the need to rewrite the code.

<p>True (A)</p> Signup and view all the answers

What are loaders used for in a program?

<p>Loaders are programs that retrieve libraries or subroutines from a specified memory location when a file is executed.</p> Signup and view all the answers

Libraries are pre-compiled programs that can be incorporated within other programs using either ______ or ______ linking.

<p>static, dynamic</p> Signup and view all the answers

Match the following types of linking with their characteristics:

<p>Static Linking = Increases the size of the file Dynamic Linking = Addresses are included for runtime retrieval Loader = Retrieves libraries from memory Library = Pre-compiled and ready to use in programs</p> Signup and view all the answers

What is the primary function of the automatic updating utility?

<p>Automatically updating the operating system with security patches and bug fixes (D)</p> Signup and view all the answers

Open source software requires a paid license to use.

<p>False (B)</p> Signup and view all the answers

What is one advantage of closed source software?

<p>High levels of security</p> Signup and view all the answers

The _____ utility creates routine copies of specific files selected by the user.

<p>backup</p> Signup and view all the answers

Match the following terms with their correct descriptions:

<p>Open Source = Can be modified and improved by anyone Closed Source = Requires a license to use and does not allow access to source code Backup Utility = Creates routine copies of selected files Automatic Updating = Ensures the operating system receives regular security updates</p> Signup and view all the answers

Which of the following is a disadvantage of open source software?

<p>Support available online may be insufficient or incorrect (A)</p> Signup and view all the answers

Closed source software can be modified freely by users.

<p>False (B)</p> Signup and view all the answers

What is one responsibility of the user regarding the backup utility?

<p>To specify how often files are backed up</p> Signup and view all the answers

What is the first stage of compilation called?

<p>Lexical Analysis (C)</p> Signup and view all the answers

The purpose of the optimisation stage is solely to add more lines of code to the program.

<p>False (B)</p> Signup and view all the answers

What is produced as a representation of the source code in the syntax analysis stage?

<p>abstract syntax tree</p> Signup and view all the answers

During the syntax analysis stage, tokens that break the language rules are flagged as ________ errors.

<p>syntax</p> Signup and view all the answers

Match the following compilation stages with their key activities:

<p>Lexical Analysis = Removes whitespace and comments Syntax Analysis = Produces abstract syntax tree Code Generation = Generates machine code Optimisation = Increases code execution efficiency</p> Signup and view all the answers

Which of the following is a potential error detected during semantic analysis?

<p>Multiple declaration (A)</p> Signup and view all the answers

Which of the following is a disadvantage of using closed source software?

<p>Lower security due to development in a controlled environment (A)</p> Signup and view all the answers

Linkers are responsible for linking external modules and libraries included in the code.

<p>True (A)</p> Signup and view all the answers

Interpreters are generally slower than compilers because they translate code line-by-line.

<p>True (A)</p> Signup and view all the answers

What is the purpose of a symbol table during compilation?

<p>to store information about tokens</p> Signup and view all the answers

What is the main function of a translator in programming?

<p>To convert high-level source code into low-level object code.</p> Signup and view all the answers

Assembly code is considered a ______-level language.

<p>low</p> Signup and view all the answers

Match the type of translator with its description:

<p>Compiler = Translates high-level code all at once Interpreter = Translates and executes code line-by-line Assembler = Translates assembly code into machine code High-level language = Designed to be easy for humans to read and write</p> Signup and view all the answers

What is a key advantage of interpreted code?

<p>It can be executed on various platforms if the correct interpreter is available. (A)</p> Signup and view all the answers

Compiled code can be executed on any device without the need for a translator.

<p>False (B)</p> Signup and view all the answers

Name the three types of translators mentioned.

<p>Compiler, Interpreter, Assembler.</p> Signup and view all the answers

Flashcards

Applications software

Designed for end-users to perform specific tasks, requiring systems software to run. Examples include word processing, web browsers, and spreadsheets.

Systems software

Low-level software that manages the computer system, interacts with hardware, and provides a platform for applications. Examples include operating systems, device drivers, and utility programs.

Utilities

System software programs that ensure the smooth running of the operating system, each with a specific function related to maintenance. Examples include compression, disk defragmentation, and antivirus.

Compression Utility

Enables files to be compressed and decompressed, useful for smaller file sizes when transmitting data over the internet or storing large files.

Signup and view all the flashcards

Disk Defragmentation Utility

Rearranges the contents of the hard drive, improving performance by reducing file fragmentation and speeding up read/write times.

Signup and view all the flashcards

Antivirus Utility

Detects potential threats to the computer system, alerts the user, and removes the threats, ensuring system security.

Signup and view all the flashcards

Open Source Software

Software where the source code is freely available for anyone to modify and distribute.

Signup and view all the flashcards

Closed Source Software

Software with restricted access to the source code, typically requiring a license for use.

Signup and view all the flashcards

Translator

A program that converts high-level source code into low-level object code, ready for execution by a computer.

Signup and view all the flashcards

Compiler

A type of translator that translates the entire code into machine code at once.

Signup and view all the flashcards

Interpreter

A type of translator that translates and executes code line by line.

Signup and view all the flashcards

Assembly Code

A low-level programming language, closer to machine code than high-level languages.

Signup and view all the flashcards

Assembler

A program that translates assembly code into machine code.

Signup and view all the flashcards

Platform Specific

Software or code that is designed to work on a specific operating system and processor architecture.

Signup and view all the flashcards

Static Linking

Modules and libraries are directly incorporated into the main program file, increasing its size. Changes to external libraries don't affect the program. This allows using a specific library version.

Signup and view all the flashcards

Dynamic Linking

Program files only include references (addresses) to modules and libraries. When the program runs, the loader retrieves them. This keeps files smaller and external updates are reflected in the main program.

Signup and view all the flashcards

What is a Loader?

A program provided by the operating system that retrieves libraries or subroutines from specified memory locations when a file is executed.

Signup and view all the flashcards

Library advantage: Reusability

A library can be used in multiple programs, avoiding repetitive development and testing of the same functionality across projects.

Signup and view all the flashcards

Library advantage: Time saving

Libraries provide ready-to-use, error-free code, saving time during development and testing. Specialised functions are readily available, avoiding "reinventing the wheel".

Signup and view all the flashcards

Lexical Analysis

The first stage of compilation where whitespace, comments, and keywords are replaced with tokens and stored in a symbol table.

Signup and view all the flashcards

Token

A representation of a keyword, variable, or constant in code, stored in the symbol table during lexical analysis.

Signup and view all the flashcards

Symbol Table

A data structure used during compilation to store information about tokens, such as their type and location in the code.

Signup and view all the flashcards

Syntax Analysis

The stage of compilation where tokens are checked against the grammatical rules of the programming language, identifying any syntax errors.

Signup and view all the flashcards

Abstract Syntax Tree (AST)

A hierarchical representation of the source code, created during syntax analysis, that shows the relationships between different parts of the program.

Signup and view all the flashcards

Semantic Analysis

The stage of compilation where the logic and meaning of the code are checked for errors, such as undeclared variables or multiple declarations.

Signup and view all the flashcards

Code Generation

The stage of compilation where the abstract syntax tree is used to produce machine code, which can be understood by the computer.

Signup and view all the flashcards

Optimisation

A stage of compilation where the code is analyzed to find areas where it can be made more efficient, potentially making it run faster.

Signup and view all the flashcards

Automatic Updating

A utility that automatically installs operating system updates when the computer restarts. It helps keep the system secure by fixing bugs and vulnerabilities.

Signup and view all the flashcards

Backup Utility

A utility that automatically creates copies of specified files at regular intervals. This helps recover data in case of system failure or accidental data loss.

Signup and view all the flashcards

What is source code?

The instructions written by programmers that tell a computer how to perform specific tasks. It is like a blueprint that defines the software's functionality.

Signup and view all the flashcards

What are Advantages of Open Source?

Open source software can be modified and improved by anyone, benefits from a large community support, and can be distributed freely.

Signup and view all the flashcards

What are Advantages of Closed Source?

Closed source software generally offers high levels of security, regular updates, and dedicated expert support.

Signup and view all the flashcards

What are Disadvantages of Open Source?

Open source software can have insufficient or incorrect online support, and may lack comprehensive user manuals.

Signup and view all the flashcards

What are Disadvantages of Closed Source?

Closed source software can be restricted in its use by licensing agreements, and users cannot modify the code.

Signup and view all the flashcards

Study Notes

OCR Computer Science A Level - 1.2.2 Applications Generation

  • Applications software is designed for specific tasks, needing systems software to run
  • Examples include desktop publishing, word processing, spreadsheets and web browsers
  • System software is low-level, running the computer smoothly and providing a platform for applications.
  • Users do not directly interact with system software, but it ensures high performance
  • Examples are library programs, utility programs, operating systems, and device drivers
  • Utilities are crucial system software, ensuring consistent high performance of the OS
  • Examples include compression (large files compressed for internet transmission), and Disk Defragmentation (reorganizing files for speed.)
  • Antivirus is responsible for detecting, alerting, and removing computer threats.

Open Source vs Closed Source

  • Source code is the object code before compilation
  • Open source code is accessible to the public, usable without license, and distributed with source code
  • Closed source code requires a license, users cannot access the source code (copyright held by company.)
  • Open source advantages include modification and improvement by anyone, technical support from online communities, and modification/sale
  • Open source disadvantages include insufficient/inaccurate online support, lack of user manuals, and lower security
  • Closed source advantages include thorough updates, regular testing, expert company support and user manuals, and high levels of security
  • Closed source disadvantages include license restrictions on use, restricted user modification, and no software improvements by users.

Translators

  • Translators convert high-level source code to low-level object code, executable by the computer
  • Three types: compilers, interpreters, and assemblers
  • Compiler translates high-level codes into machine code all at once, and reports errors
  • Compiler process is longer than interpreters or assemblers, and if changes are needed, the entire program has to be recompiled
  • Compiled code can only be executed on certain devices, specific to a particular processor type and operating system.
  • Interpreter translates and executes code line-by-line, stopping and reporting errors if necessary.
  • Interpreted code is useful for testing, but slower than compiled code, as code translation is performed each time
  • Interpreted code is platform independent because it needs a specific interpreter to run on.

Assembler

  • Assembly code is one level up from machine code, platform-specific (based on processor)
  • Translates assembly code to machine code, with each assembly line equivalent to almost/nearly a machine code line

Stages of Compilation

  • Lexical analysis: whitespace and comments are removed, code is analyzed for keywords and variables
  • Syntax analysis: tokens are analyzed against the language rules, errors identified
  • Parsing: verifies if the code is well-formed
  • Code Generation: abstract syntax tree produced in syntax analysis is used to produce machine code
  • Optimisation: code is examined for efficiency, redundant sections removed, repeated code portions may be replaced, for increased speed.

Linkers, Loaders and Use of Libraries

  • Many programs use external code (subroutines/libraries) from outside sources.
  • Linkers join external modules and libraries into the main program
  • Static linking includes modules and libraries directly into the main file (larger file size, external updates don't impact program)
  • Dynamic linking uses addresses in the program to reference external modules and libraries (smaller files, external updates automatically applied.)
  • Loaders are OS programs that retrieve libraries and subroutines when a file is executed.
  • Libraries are pre-compiled programs for specific functions, saving programming time

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

Description

Test your knowledge on different types of software, including application and utility programs. This quiz covers definitions, functions, and characteristics associated with software used by end-users and systems. Gain insights into concepts like defragmentation, linking, and the roles of utilities.

More Like This

Mastering Computer Software
10 questions
Types of Software
5 questions

Types of Software

StrongMeerkat avatar
StrongMeerkat
Application Software in Education
10 questions
Use Quizgecko on...
Browser
Browser