Know and understand differences between types of operating systems

1. Operating Systems – Definition and Core Functions

An operating system (OS) is system software that sits between the hardware and application programmes. It manages the computer’s resources, provides a common platform for software to run, and offers an interface (text‑based or graphical) for users to interact with the machine.

Core Functions (AO 1)

  • Resource Management

    • CPU scheduling – allocates time‑slices to processes (pre‑emptive or cooperative).
    • Memory management – assigns RAM to programmes, handles paging or segmentation.
    • I/O management – buffers data, controls devices via drivers.

  • File‑system Organisation

    • Hierarchical directory structure (folders within folders).
    • File‑type identification and metadata (size, timestamps, attributes).
    • Permission model – read/write/execute rights for owners, groups and others.
    • Common file‑system types: NTFS, APFS, ext4, FAT32, exFAT.

  • User‑Account Management

    • Creation, deletion and modification of accounts.
    • Authentication (passwords, biometrics, smart‑cards).
    • Access control lists and group policies.

  • Security & Updates

    • Patch management – automatic or manual installation of security fixes.
    • Digital signatures & code signing to verify software integrity.
    • Firewalls, intrusion‑detection, and anti‑malware scanners.
    • Sandboxing & application‑level isolation.

  • User Interface (UI)

    • Command‑Line Interface (CLI) – text commands entered via a terminal.
    • Graphical User Interface (GUI) – windows, icons, menus and pointers.
    • Many modern OSes provide both (CLI for advanced control, GUI for everyday tasks).

  • Multitasking

    • Pre‑emptive – the OS interrupts a running process to give CPU time to another.
    • Cooperative – processes voluntarily yield control (rare in modern desktop OSes).
    • Batch OS typically have no interactive multitasking; they run jobs sequentially.

CLI vs. GUI (AO 1)

  • CLI‑only OS – interaction solely through typed commands (e.g., many real‑time and batch systems).
  • GUI‑based OS – visual interaction with mouse/touch; most desktop, mobile and many network OSes.
  • Hybrid approach – modern OSes usually include a GUI for routine work and a CLI for power users and system administration.

2. Major Categories of Operating Systems (AO 1 & AO 2)

OS CategoryTypical UseUser InteractionMultitasking ModelKey Security FeaturesAdvantagesDisadvantagesRepresentative Examples
Batch Operating SystemLarge mainframes for repetitive, high‑throughput jobs (payroll, scientific simulations)CLI‑only – jobs submitted on punched cards, magnetic tape or batch filesNo interactive multitasking; jobs run sequentiallyIsolated from external users → low exposure to network attacks; limited services reduce attack surfaceMaximum utilisation of expensive hardware; simple scheduling for batch workloadsNo real‑time interaction; debugging individual jobs is difficult; poor responsiveness for interactive usersIBM OS/360 (historical), Burroughs MCP
Time‑Sharing (Multi‑User) OSShared mainframes or minicomputers where many users work simultaneouslyCLI or text‑based terminal interface (e.g., VT100 terminals)Pre‑emptive multitasking – each user receives a time slice of the CPUAccount‑based authentication, audit trails, user‑level permissions, optional firewallsEfficient use of costly hardware; supports many concurrent usersRequires careful resource allocation; performance can degrade under heavy loadUNIX, Multics, VMS
Real‑Time Operating System (RTOS)Embedded controllers, industrial automation, medical devices, automotive systemsUsually CLI‑only; UI, if present, is minimal (LCD menus, simple touch screens)Deterministic, priority‑based pre‑emptive schedulingMinimal services → reduced attack surface; deterministic behaviour limits timing‑related vulnerabilities; often includes signed firmware updatesPredictable response times; small memory footprint; suitable for limited hardwareLimited general‑purpose functionality; specialised development tools; need to distinguish hard real‑time (strict deadlines) from soft real‑time (best‑effort)VxWorks, QNX, RT‑Linux, FreeRTOS
Network Operating SystemServers and workstations that provide shared resources (files, printers, databases) over LAN or InternetGUI and/or CLI plus network‑management utilities (e.g., DNS, DHCP, web services)Pre‑emptive multitasking; supports many concurrent network connectionsIntegrated firewalls, role‑based access control, regular security patches (Windows Update, yum/apt), intrusion‑detection systemsCentralised administration; facilitates collaboration and resource sharingComplex configuration; security depends on correct hardening of servicesWindows Server, Linux server distributions (Ubuntu Server, CentOS, Red Hat Enterprise), Novell NetWare, Samba
Desktop Operating SystemPersonal computers for productivity, gaming, education and creative workFull‑featured GUI with optional CLI terminalPre‑emptive multitasking; typically single‑user focus but supports multiple accountsBuilt‑in anti‑malware, User Account Control, automatic updates, sandboxing (e.g., Windows Defender Application Guard, macOS Gatekeeper)Rich software ecosystem; easy to learn and useHigher hardware requirements; susceptibility to malware if updates are ignoredMicrosoft Windows, Apple macOS, Linux desktop distributions (Ubuntu, Fedora, Mint)
Mobile Operating SystemSmartphones, tablets, wearables and other portable devicesTouch‑oriented GUI, voice assistants; limited CLI access for developers (adb, terminal apps)Optimised pre‑emptive multitasking for limited CPU, memory and batteryApp sandboxing, permission‑based access (camera, location, contacts), verified boot, frequent OTA security patches, hardware‑backed keystoreHighly responsive UI; power‑efficient; extensive app ecosystemsFragmented hardware support; tighter control over installed software can limit user freedomAndroid, iOS, Huawei HarmonyOS

3. Comparison of the Three Main Desktop Operating Systems (AO 1 & AO 2)

FeatureMicrosoft WindowsApple macOSLinux (e.g., Ubuntu)
Kernel TypeHybrid (NT kernel – microkernel‑like components + monolithic core)Hybrid (XNU – Mach microkernel + BSD monolithic components)Monolithic (Linux kernel)
LicensingProprietary, commercial (paid licences per device)Proprietary, commercial (Apple hardware‑tied)Open‑source, free (GPL); commercial support available from vendors
Default File SystemNTFS (supports ACLs, encryption, compression)APFS (Apple File System – snapshots, cloning, encryption)ext4 (default for most distributions; supports journaling, large files)
Software EcosystemBroad commercial and gaming software; extensive driver supportStrong creative‑industry tools (Final Cut Pro, Logic Pro); limited native gamingVast open‑source catalogue; powerful command‑line tools; growing desktop apps
Security ModelUser Account Control, Windows Defender, Patch Tuesday updates, BitLocker encryptionApp sandboxing, Gatekeeper, XProtect, regular security updates, FileVault encryptionPermission‑based access, SELinux/AppArmor policies, rapid community‑driven patches, optional full‑disk encryption (LUKS)
Typical Use CasesBusiness environments, gaming, education, general‑purpose computingDesign, media production, education, creative workflowsServers, software development, scientific computing, cost‑effective desktops

4. Why the Choice of Operating System Matters (AO 3)

  • Performance – RTOS gives deterministic response times; desktop OSes optimise throughput for interactive tasks.
  • Hardware Compatibility – Drivers and firmware support differ; e.g., some specialised sensors only have Linux drivers.
  • Software Availability – Certain professional packages (e.g., AutoCAD) are Windows‑only, while Xcode is macOS‑only.
  • Security Posture – Sandboxing on mobile OSes reduces impact of a compromised app; server OSes need hardened network services.
  • Cost – Open‑source Linux reduces licence fees for schools or developing‑world projects.
  • User Experience – GUI richness influences learning curves and productivity.

5. Suggested Diagram

Hierarchical classification of operating systems: a tree diagram with “Operating System” at the top, branching into the six categories (Batch, Time‑Sharing, Real‑Time, Network, Desktop, Mobile). Under each branch list two or three representative examples (e.g., under Real‑Time: VxWorks, QNX, FreeRTOS).

6. Quick Revision Checklist (Exam‑style prompts)

  • Define an operating system and list its six core functions.
  • Explain the difference between a CLI‑only OS and a GUI‑based OS, giving an example of each.
  • Identify the six OS categories and provide at least two examples for each.
  • For each OS category, state one advantage and one disadvantage.
  • Compare Windows, macOS and Linux on kernel type, licensing, default file system and security model.
  • Describe why a real‑time OS uses deterministic, priority‑based scheduling, and differentiate between hard and soft real‑time constraints.
  • Outline two e‑safety measures that modern operating systems provide (e.g., automatic updates, app sandboxing, verified boot).
  • Give one scenario where the choice of OS critically affects performance or safety (e.g., medical ventilator → RTOS; office workstation → Windows).