Types of Software and Interrupts
Features of System Software
From Text Books
Features of Application Software
From Text Books
Examples of Application Software
From Past Papers
Word processing software is used to manipulate a text document, such as an essay or a report
Spreadsheet software is used to organize and manipulate numerical data (in the form of integer, real, date, etc). Numbers are organised on a grid of lettered columns and numbered rows.
Database software is used to organise, manipulate and analyse data. Tables consist of rows and columns. Each row is called a ‘record’ and each column is called a ‘field.
Photo editing software allows a user to manipulate digital photographs stored on a computer; for example, change brightness, change contrast, alter colour saturation or remove “red eye”
Control and measuring software is designed to allow a computer or microprocessor to interface with sensors.
Video editing software is the ability to manipulate videos to produce a new video. It enables the addition of titles, colour correction and altering/adding sound to the original video
Examples of System Software
From Past Papers
A compiler is a computer program that translates a program written in a high-level language (HLL) into machine code (code which is understood by the computer)
A linker (or link editor) is a computer program that takes one or more object file produced by a compiler and combines them into a single program.
A device driver is the name given to software that enables one or more hardware devices to communicate with the computer’s operating system.
The operating system (OS) is essentially software running in the background of a computer system. It manages many of the basic functions.
Utility programs are software that are designed to carry out specific tasks on a computer.
Antivirus Software
From Text Books
Defragmentation software
As a HDD becomes full, blocks used for files will become scattered all over the disk surface. The HDD read-write head will now require several movements just to find and retrieve the data making up the required file. A disk defragmenter will rearrange the blocks of data to store files in contiguous sectors wherever possible. This allows for much faster data access and retrieval since the HDD will now require fewer read-write head movements.
From Text Books
Back-up Software
A back-up Utility allows you to set a schedule for backing up files and only carry out a back-up procedure if there have been any changes made to a file. 3 Back-ups should be made for total security.
A locally backed up copy could be used when internet is not available. A remote back-up of a file is useful when a computer stops working (hardware or software fault)
From Text Books
Security software
Security software is a utility that:
From Text Books
Screen-saver Software
Screensavers are used as part of the computer’s security system. If a computer is unused for five minutes, for example, and hasn’t been logged out, this will trigger the screensaver to be loaded. The computer user will then be automatically logged out and a screensaver will indicate that the computer is now locked.
Screensavers are also used to activate useful background tasks, here are examples:
From Text Books
Device Driver software
Device drivers are software that communicate with the operating system and translate data into a format understood by a hardware peripheral device. As soon as a device is plugged into a USB port, the operating system looks for the appropriate device driver. All USB device drivers contain a collection of information about devices called descriptors; this allows the USB bus to ask a newly connected device what it is. Descriptors include vendor id (VID), product id (PID) and unique serial numbers.
From Text Books
Operating System
Functions of Operating System
From Text Books
Human Computer Interface (HCI)
The human computer interface (HCI) is in the form of a Command Line Interface (CLI) or a Graphical User Interface (GUI).
A CLI requires a user to type in instructions to choose options from menus, open software, etc. There are several commands that need to be typed in, for example, to save or load a file. The user must learn several commands just to carry out basic operations.
A GUI allows the user to interact with a computer using pictures or symbols (icons) rather than having to type in a number of commands.
From Text Books
Human Computer Interface (HCI)
CLI: a programmer, analyst or technician; someone who needs to have a direct communication with a computer to develop new software, locate errors and remove them, initiate memory dumps (contents of the computer memory at some moment in time), and so on
GUI: the end-user who doesn’t have or doesn’t need to have any great knowledge of how the computer works; a person who uses the computer to run software or play games or stores/manipulates photographs, for example.
From Text Books
Security Management
From Text Books
Hardware Peripheral Management
From Text Books
File Management
The main tasks of file management include:
From Text Books
Multitasking
Multitasking allows computers to carry out more than one task (i.e. a process) at a time. Each of the processes will share the hardware resources under the control of the operating system software.
From Text Books
Management of User Accounts
From Past Papers
Computers allow more than one user to log onto the system. It is therefore important that users’ data is stored in separate parts of the memory for security reasons. Each person logging onto the computer will be given a user account protected by a username and password. This allows each user to:
Running of Applications
From Past Papers
Upon initiating, a computer undergoes a process known as booting (Bootstrap loader), during which a part of the operating system must be transferred to RAM. This operation, is managed by the basic input/output system (BIOS), which oversees the startup of the computer’s motherboard. The BIOS instructs the computer on the location of the storage device housing the operating system, proceeds to load the essential portion of the operating system, and subsequently executes it.
The BIOS is often referred to as firmware. Firmware is defined as a program that provides low level control for devices.
Interrupts
From Past Papers
An interrupt is a signal transmitted from either a device or software to the microprocessor, prompting the microprocessor to temporarily halt its current operations in order to address and respond to the interrupt.
When an interrupt signal is received, the microprocessor pauses its current task to deal with the interrupt. The computer needs to figure out what type of interrupt it is and how important it is.
Interrupts help computers do many things at once or have multiple windows open. For example, you can download a file while listening to music, and interrupts make it seem like both things are happening at the same time. In reality, data moves quickly in and out of memory, This is possible due to a temporary storage area called a buffer.
Programming language, translators and (IDEs)
Difference Between High and Low Level Languages
From Text Books
Advantages of Assembly languages
From Text Books
Compilers
A compiler is a software that converts a full program written in a high-level language into machine code in a single operation. After compilation, this machine code can be reused for the same task multiple times without needing re-compilation. If errors are found, an error report is generated instead of a compiled program.
From Text Books
Interpreters
An interpreter is a computer program that reads a statement from a high-level language program, translates it, executes the specified action, and repeats this process for each subsequent statement. If there is an error in a statement, the execution stops, and an error message is displayed. Unlike a compiler, a program requires interpretation each time it is run.
From Text Books
Assemblers
An assembler is a computer program that converts a program written in assembly language into machine code, allowing direct use by a computer. Once a program is assembled, the resulting machine code can be repeatedly used to execute the same task without requiring re-assembly.
From Text Books
Comparision between Compilers, Interpreters and Assemblers
From Text Books
Features of an Integrated Development Environment
From Text Books
Code Editor
A code editor lets you write and edit a program without having to switch to another text editor. This speeds up the process because you can make changes directly within the same software.
From Text Books
Error Diagnostics and auto-correction
Dynamic error checking catches possible mistakes as you type the program code. It notifies you right away and suggests a correction. This helps find and fix errors while you’re still working on the program, before running it.
From Text Books
Auto-completion and Debuggers
A debugger is a tool that runs the program being developed and enables the programmer to go through the code step by step (single stepping) or pause the execution at a specific point in the source code using breakpoints. A report window then displays the values of variables and expressions evaluated at that point, helping the programmer identify logic errors and ensure the program functions as intended. On the other hand, Auto-completion can provide context-specific suggestions and autocomplete features for variable names and reserved words.
From Text Books
Auto-documenter and Pretty printing
IDEs may include an auto-documenter to describe the function and purpose of programming code. Additionally, many code editors use color-coding for words in the program and arrange the code in a clear and organized manner, a practice known as prettyprinting.
From Text Books
© Copyright 2024 - Made with Passion