Computer Software
– Definition
• Software is a collection of programs and instructions
that tell a computer how to work and perform specific
tasks.
• It acts as the bridge between the user and the hardware
enabling the hardware to function meaningfully.
– Key points
• It is intangible
• It includes programs, procedures, and documentation .
• It can be classified into
Types
• System software- a crucial type of software designed to manage a
computer's hardware and operate the system, serving as an
intermediary between the hardware and user applications
eg: Operating System (Windows, Linux), Language Processors, Device
Drivers
• Utility software- system software designed to help users manage,
maintain, and optimize a computer system, performing specific tasks
to improve performance, security, and functionality, such as disk
management, antivirus protection, and data backup
eg: Antivirus, Disk Cleanup, Compression Tools
• Application software-a type of computer program designed to help
users perform specific tasks or functions, such as writing a
document, browsing the internet or playing a game.
Operating system
• An Operating System (OS) is system software
that acts as an interface between the user
and the computer hardware. It manages all
the hardware and software resources of a
computer system and provides a platform for
running application programs.
Functions of Operating System
• 1. Process Management
• 2. Memory Management
• 3. File Management
• 4. Device Management
• 5. Security Management
Language Processor
• Converts high-level language into machine
code.
• Types: Compiler, Interpreter, Assembler.
Compiler
• Translates entire program into machine code
at once.
• computer software that translates (compiles)
source code written in a high-level language
(e.g., C++) into a set of machine-language
instructions that can be understood by a
digital computer's CPU.
Interpreter
• Translates and executes program line by line.
• In computing, an interpreter is a program that
directly executes instructions written in a high-
level programming language, translating and
executing them line-by-line or statement-by-
statement at runtime, without first converting
the entire program into machine code.
Assembler
• Converts assembly language code into
machine code.
System vs Application Software
• System Software: Runs the computer
• Application Software: Helps users perform
tasks.