Chapter 3: Software and Operating Systems
3.1 Concept of Software
3.1.1 Definition of Software
Software is a collection of programs, procedures, and related documentation that instruct a computer to perform specific tasks. It is the intangible component that makes hardware useful.
A program is a set of instructions written in a programming language that tells the hardware what operations to execute.
Software vs. Hardware: Hardware refers to the physical parts of a computer (CPU, memory, disks, etc.), while software comprises the logical instructions that control those parts. Without software, hardware cannot perform meaningful work; without hardware, software has no platform to run on.
3.1.2 Categories of Software
Software can be classified into several categories based on its function and the level of interaction with hardware and users.
System Software
System software manages hardware resources and provides a platform for running application software. It includes:
- Operating Systems (OS) – e.g., Windows, Linux, macOS.
- Device Drivers – small programs that enable the OS to communicate with hardware devices such as printers, graphics cards, and network adapters.
- Firmware – specialized software stored in non‑volatile memory (ROM/Flash) that controls specific hardware, e.g., BIOS/UEFI, router firmware.
Utility Software
Utility programs perform maintenance tasks to keep the system running efficiently. Examples:
- Antivirus software (e.g., Norton, McAfee).
- Disk cleanup and defragmentation tools.
- Backup and recovery utilities.
Application Software
Application software is designed for end‑users to accomplish specific tasks. It splits into:
- General‑purpose applications – word processors (Microsoft Word, LibreOffice Writer), web browsers (Chrome, Firefox), spreadsheets (Excel, Google Sheets).
- Special‑purpose applications – payroll systems, inventory management, accounting software (e.g., Tally, QuickBooks).
Web‑Based Software
Accessed through a web browser, these applications run on remote servers. Examples:
- Email: Gmail, Outlook.com.
- Document collaboration: Google Docs, Microsoft Office Online.
- CRM platforms: Salesforce, HubSpot.
Mobile Apps
Applications specifically built for smartphones and tablets, distributed via app stores.
- Android apps (Google Play Store).
- iOS apps (Apple App Store).
Comparison Table of Software Categories
| Category | Primary Function | Examples |
|---|---|---|
| System Software | Manage hardware; provide platform | Windows, Linux, macOS, Device Drivers, Firmware |
| Utility Software | System maintenance & optimization | Antivirus, Disk Cleanup, Backup Tools |
| Application Software (General) | End‑user productivity | Word Processor, Browser, Spreadsheet |
| Application Software (Special) | Domain‑specific tasks | Payroll, Inventory, Accounting |
| Web‑Based Software | Access via browser; server‑side processing | Gmail, Google Docs, Salesforce |
| Mobile Apps | Run on smartphones/tablets | WhatsApp, Instagram, Mobile Banking |
3.2 Concept of Operating System
3.2.1 Introduction to Operating Systems
An Operating System (OS) is system software that acts as an intermediary between computer hardware and the user (or application programs). It manages hardware resources and provides common services for executing programs.
Examples: Windows, Linux, macOS, Android, iOS.
3.2.2 Role of Operating Systems
The OS performs several vital roles:
- Resource management – allocates CPU time, memory, storage, and I/O devices to competing processes.
- User interface – provides ways for users to interact with the system, either through a graphical user interface (GUI) or a command‑line interface (CLI).
- File management – organizes data into files and directories, handling creation, deletion, reading, and writing.
- Process management – creates, schedules, and terminates processes; handles context switching.
- Security and access control – authenticates users, enforces permissions, and protects data.
3.2.3 Functions of an Operating System
Core functions include:
- Process Management – creation, scheduling (using algorithms like Round Robin, Priority), synchronization, and termination of processes.
- Memory Management – allocation and deallocation of RAM, implementation of virtual memory via paging or segmentation.
Example formula for effective access time (EAT):EAT = (1‑p) × MA + p × PF, where p is page‑fault probability, MA is memory access time, and PF is page‑fault service time. - File Management – maintains directory structures, supports operations like open, read, write, close, and implements file permissions.
- Device Management – controls I/O operations through device drivers; handles buffering, spooling, and interrupt handling.
- Security – user authentication (passwords, biometrics), authorization (access control lists), encryption of data at rest and in transit.
- User Interface – provides GUI (windows, icons, menus) and CLI (shells like bash, PowerShell) for user interaction.
3.2.4 Operating System Terminology
- Multiprogramming – multiple programs reside in memory simultaneously; the CPU switches between them to keep utilization high.
- Multitasking – a form of multiprogramming where tasks appear to run concurrently via time‑sharing.
- Multiprocessing – use of two or more CPUs (or cores) to execute tasks in parallel.
- Distributed Systems – a collection of independent computers connected through a network that cooperate to present a single system image.
3.3 Windows Operating System
3.3.1 GUI‑Based Operating Systems
Windows uses a Graphical User Interface (GUI) built around windows, icons, menus, and a pointer (WIMP). Key desktop elements include:
- Taskbar – shows running applications, provides Start button and system tray.
- Desktop – background area where icons and shortcuts can be placed.
- Start Menu – central hub for launching apps, accessing settings, and power options.
- System Tray – area for background icons (network, volume, antivirus).
In contrast, a Command Line Interface (CLI) relies on text‑based commands (e.g., dir, copy) entered in a terminal. While CLI offers powerful scripting capabilities, GUI is more intuitive for novice users.
3.3.2 Working in Desktop Applications and Window Environment
Basic window operations:
- Opening/closing – double‑click an icon or use Start menu; close via the
Xbutton orAlt+F4. - Window management – minimize (to taskbar), maximize (fill screen), restore, resize (drag edges), and close.
- Switching between applications –
Alt+Tabcycles through open windows;Win+Tabopens Task View. - Multiple desktops – Windows 10/11 support virtual desktops via
Win+Ctrl+Dto create,Win+Ctrl+Left/Rightto navigate.
3.3.3 Managing Files and Folders
File Explorer is the primary tool for navigating the file system.
- Navigation – use the address bar, back/forward buttons, or the navigation pane.
- Creating – right‑click → New → Folder/File, or use
Ctrl+Shift+Nfor a new folder. - Renaming – select item, press
F2, type new name, hit Enter. - Moving/Copying – drag‑and‑drop, or use
Ctrl+X(cut) /Ctrl+C(copy) andCtrl+V(paste). - Deleting –
Deletesends to Recycle Bin;Shift+Deleteremoves permanently. - File extensions – suffixes that indicate file type, e.g.,
.txt(plain text),.docx(Word),.pdf(Portable Document Format),.exe(executable). - File properties – right‑click → Properties to view size, dates, attributes (Read‑only, Hidden, System), and security tabs.
3.3.4 Customizing Start Screen and Desktop
Personalization options:
- Wallpaper – right‑click desktop → Personalize → Background.
- Theme – changes colors, sounds, and background collectively.
- Pinning apps – drag an app’s shortcut to the Taskbar or Start menu, or right‑click → Pin to taskbar/start.
- Organizing desktop icons – arrange manually, enable Auto‑align, or sort by name/date/type via right‑click → View.
3.3.5 Installing and Removing Devices
Windows supports Plug and Play (PnP), allowing the OS to automatically detect and configure many devices.
- Device Manager – accessed via
Win+X→ Device Manager; shows all hardware, lets you update, roll back, or uninstall drivers. - Installing printers/scanners – Settings → Devices → Printers & scanners → Add a printer; Windows often downloads drivers automatically.
- USB devices – simply plug in; Windows installs the appropriate driver (e.g., for flash drives, keyboards).
- Uninstalling drivers – in Device Manager, right‑click the device → Uninstall device; optionally check “Delete the driver software for this device”.
3.3.6 Managing Passwords and Privacy
User account management:
- Setting/changing password – Settings → Accounts → Sign‑in options → Password → Change.
- Privacy settings – Settings → Privacy; control location, camera, microphone, diagnostics, and advertising ID.
- Account types – Administrator (full control), Standard (limited privileges), and Guest (temporary access).
3.3.7 Control Panel, System Tools, and Accessories
Control Panel – legacy hub for system settings; categories include System and Security, Network and Internet, Hardware and Sound, Programs, User Accounts, etc.
System Tools (accessible via Start → Windows Administrative Tools):
- Disk Cleanup – removes temporary files, recycle bin contents, system files.
- Disk Defragmenter – reorganizes fragmented data on HDDs for faster access.
- System Restore – creates restore points to roll back system files and settings to an earlier state.
Accessories – small utility programs:
- Notepad – simple text editor.
- Calculator – basic, scientific, and programmer modes.
- Paint – basic raster graphics editor.
- Snipping Tool / Snip & Sketch – capture screenshots of full screen, window, or custom region.
3.4 Open Source and Mobile Operating Systems
3.4.1 Open Source Operating Systems
Open source software makes its source code freely available for anyone to view, modify, and distribute under licenses such as GPL, MIT, or Apache.
Benefits:
- Cost‑free (no licensing fees).
- Community‑driven support and rapid bug fixing.
- Enhanced security through transparent code review.
- High degree of customization for