CSS Prepare

optional · CSS study notes

I.13 Types of Software

⬆️ Back to: P-I.I. Introduction to Computing

🧭

Page Outline — click a heading to jump. Past-paper questions sit in the last section.

🎯

Exam pattern (2016–2026): 2021 Q3(c) IDEs (5) · 2024 MCQ Q4 (system software).


1. Definitions

  • Software: instructions, programs and data that tell hardware what to do; intangible.
  • Program: one set of instructions for one task.
  • Software: the wider term — one or many programs plus data and documentation.

2. Three Categories by Function

CategoryRoleExamples
System softwareManages hardware; platform for othersOS, device drivers, utilities
Programming softwareWrite, translate and debug codeCompiler, interpreter, assembler, debugger, IDE
Application softwareEnd-user tasksMS Word, Photoshop, browsers
  • 🧠 Stack: hardware → system software → applications; programming tools build both upper layers.

2.1 System software

  • Operating system:
    • Schedules CPU, manages memory, files and I/O through a kernel.
    • Types: single/multi-user, single/multitasking, real-time, mobile.
    • Examples: Windows, macOS, Linux, Android, iOS.
  • Device drivers:
    • Translate OS commands for one specific device.
    • Missing driver → device works partly or not at all.
    • Examples: printer, GPU, network drivers.
  • Utilities:
    • Maintain or optimise the system.
    • Examples: antivirus (Windows Defender), compression (WinRAR), backup, disk cleanup.

2.2 Programming software

  • Compiler: translates the whole program first → standalone executable (GCC, javac).
  • Interpreter: translates and runs line by line (CPython).
  • Assembler: assembly mnemonics → machine code (NASM, MASM).
  • Debugger: breakpoints, step-through, inspect variables (GDB).
  • IDE: editor + compiler + debugger in one (Visual Studio, Eclipse, PyCharm).
  • Why separate from system software:
    • Used by developers, not every user.
    • Its output is other software.
    • The computer runs fine without it.

2.3 Application software

  • General-purpose: Word, Excel, browsers — cheap, broad, not specialised.
  • Specialised: QuickBooks, AutoCAD, radiology software — deep features, costlier.
  • Custom/bespoke: built for one organisation (airline booking, bank core system) — exact fit, high cost.

3. System vs Application Software

AspectSystemApplication
PurposeRuns the hardwareDoes user tasks
DependencyRuns without applicationsNeeds system software
InstalledFirst, usually one per machineAfterwards, many
User contactMostly backgroundDirect
Written inC, assemblyMostly high-level languages
ExamplesWindows, Linux, driversWord, Photoshop, Chrome
  • Dependency is one-way: an app makes system calls for disk, memory and screen.
  • That is why a Windows .exe will not run on Linux.

4. Compiler vs Interpreter

AspectCompilerInterpreter
TranslationWhole program, before runningLine by line, while running
OutputExecutable fileNone
Run speedFast (10–100× for heavy work)Slower
ErrorsAll together after scanStops at the exact line
DebuggingHarderEasier, interactive
PortabilityExecutable is platform-specificSource runs wherever interpreter exists
ExamplesGCC, javacCPython, Ruby
  • 🧠 Compilers run faster, debug slower; interpreters debug faster, run slower.
  • Hybrid: Java → bytecode → JVM interprets or JIT-compiles.
  • Copyright: automatic legal right from the moment code is written.
    • Gives the owner control of copying, distributing, modifying.
    • Berne Convention (Pakistan is a party); Pakistan: Copyright Ordinance 1962, IPO-Pakistan.
  • Licence: the permission the owner grants to others.
    • Does not transfer ownership.
  • 🧠 Copyright = ownership; licence = what others may do.

5.2 Licensing models

ModelSourceCostModify/share?Example
ProprietaryClosedPaidNoWindows, Photoshop
Open-sourceOpenUsually freeYes, under licenceLinux, Firefox, LibreOffice
FreewareClosedFreeNoAdobe Acrobat Reader
SharewareClosedFree trial, then paidNoWinRAR evaluation
Public domainAnyFreeYes, no conditionsCC0-dedicated code
  • Two separate questions: is the source open? must you pay?
  • Red Hat Enterprise Linux: paid, yet open-source.

5.3 Public domain vs open-source

  • Public domain: no copyright (expired or waived, e.g. CC0); no conditions; anyone can close it and sell it.
  • Open-source: still copyrighted; licence grants rights with conditions (attribution, maybe share-alike).

5.4 Copyleft vs permissive

AspectCopyleft (GPL)Permissive (MIT, Apache, BSD)
RuleDerivatives keep the same licence and publish sourceKeep the notice; anything else allowed
Closed derivativesNot allowed when distributedAllowed
AimKeep freedom downstreamMaximise adoption
ProjectsLinux kernel, GIMP, WordPressReact, Node.js, jQuery
  • Triggered by distribution, not internal use (AGPL closes this for web services).
  • Weak copyleft: LGPL, Mozilla Public License.

5.5 Other axis — platform

  • Native: installed on one OS (Word desktop).
  • Web/cloud: runs in a browser (Google Docs, Gmail).
  • Mobile: phone/tablet apps.

6. Classifying One Product on Every Axis

  • Linux: system software (OS kernel) + open-source (GPLv2) + native.
    • Runs on x86, ARM, RISC-V, mainframes; Android's kernel; almost all TOP500 supercomputers.
  • MS Word: application + proprietary + native (web version in Microsoft 365).
  • Python: see I.14.

7. ⚠️ MCQ Traps

  • Compilers, IDEs are programming software, not system software.
  • Device driver = system software.
  • Compiler = fast run, slow debug.
  • Open-source is about source, not price.
  • Freeware ≠ open-source.
  • Copyright ≠ licence; open-source is still copyrighted.
  • Public domain ≠ open-source.
  • GPL forces openness; MIT does not.

8. ✅ Self-Test Questions (with Answers)

Q1. Three categories of software with one example each.

  • System: Windows. Programming: GCC. Application: MS Word.

Q2. Where do compilers and IDEs fit, and why separately?

  • Programming software.
  • Different user (developer), different output (other software), not needed to run the PC.

Q3. System vs application software using dependency.

  • Apps need the OS; the OS does not need apps.
  • Use the table in section 3.

Q4. Compiler vs interpreter on speed and debugging.

  • Use the table in section 4.

Q5. When is a specialised application better than a general one?

  • Case: a Lahore architecture firm uses AutoCAD/Revit, not MS Paint.
    • Real-world units and exact dimensions.
    • Domain intelligence (a wall knows it is a wall; changes update every view).
    • Industry file formats (DWG/IFC) for engineers and approvals.
    • Errors in a general tool risk safety and legal problems.
  • Rule: general for common, low-budget tasks; specialised when accuracy, compliance or interoperability matter.

Q6. Proprietary, open-source, freeware, shareware — one example each.

  • Use the table in 5.2.

Q7. Classify Linux on three axes.

  • System (OS) + open-source GPLv2 + native.

Q8. Copyright vs licence.

  • Ownership vs permission; see 5.1.

Q9. Public domain vs open-source.

  • No copyright vs copyrighted with licence; see 5.3.

Q10. Copyleft vs permissive licence.

  • GPL (Linux) vs MIT (React); see 5.4.

9. 📜 Past-Paper Questions & MCQs (CSS 2016–2026)

2021 · Paper-I · Q3(c) · 5 marks

Q. What are IDEs? How do they help in software development? List the IDEs you have used.

Quick revision and exam-ready model

Quick revision — key points

  • Define IDE as integrated developer toolkit
  • Editing, syntax checking and completion
  • Build, debugging, testing and version control
  • Name only IDEs actually used

Exam-ready answer — structured

Introduction / direct answer: An Integrated Development Environment (IDE) combines tools for writing, building, testing and debugging software in one interface.

Main explanation

  • Typical facilities include syntax highlighting and completion, project management, compiler/interpreter or build-system integration, breakpoints and variable inspection, refactoring and version-control integration. It reduces repetitive setup and helps diagnose defects early.
  • Examples: Visual Studio, IntelliJ IDEA, Eclipse, PyCharm and Android Studio. A candidate may name the IDEs they have genuinely used; do not claim personal experience falsely.

MCQs

2024 P-I · Q4. What is an example of system software from the list below?

  • (A) Windows ✅
  • (B) Google Chrome
  • (C) Adobe Photoshop
  • (D) None of these
  • Answer: (A) Windows.
  • Why: an operating system is the main example of system software. Chrome and Photoshop are application software.