Ch6 - Software
Ch6 - Software
Software
Ch.6: Software Eng. Omar El Safty
1. Examples of Software
Software programs can be System software or Application software.
Examples:
• Spreadsheet
• Word Processor
• Database
• Web browser
• Image-editor
• Game
Examples:
• Operating System
• Utility software
• Compiler / Interpreter / Assembler
75
Ch.6: Software Eng. Omar El Safty
Functions:
• Providing a platform for running applications
• Memory management
• Managing peripherals and drivers
• Manage multitasking
• Handling interrupts
• Provides an interface
• Provides system security
• Manages user accounts
• Managing Files
76
Ch.6: Software Eng. Omar El Safty
77
Ch.6: Software Eng. Omar El Safty
• Antivirus
• Disk repair
• Backup software
• Screensaver
2. Firmware
Definition:
A piece of software that runs directly on the hardware.
Purpose:
• Controls/Allows communication with hardware
• Stores instructions to boot up/start up the computer
• Provides the operating system with a platform to run on
Examples of firmware:
• Bootloader/Bootstrap
- Software that is responsible for loading the operating system into the RAM
How hardware, firmware and an operating system are required to run applications
software:
• Application software runs on the operating system
• The operating system runs on the firmware
• The firmware runs on the hardware
78
Ch.6: Software Eng. Omar El Safty
IMPORTANT
79
Ch.6: Software Eng. Omar El Safty
• Easier to debug..
- ..so programmers can find and correct errors in less time
80
Ch.6: Software Eng. Omar El Safty
4. Instruction Set
Definition:
A list of all machine code commands that can be processed by a CPU.
Purpose:
• Used to define the commands that can be carried out by the CPU
• Used by the control unit to decode instructions during processing
IMPORTANT
81
Ch.6: Software Eng. Omar El Safty
5. Language translators
Definition and purpose:
Software used to convert programming language code to machine code to be executed by
the computer.
Type Description Full steps
82
Ch.6: Software Eng. Omar El Safty
IMPORTANT
When using a compiler, the code will not run at all if there are errors
83
Ch.6: Software Eng. Omar El Safty
IMPORTANT
KEY TERMS
84