JCE Computer Studies study materials
JCE Computer Studies study resources

JCE Computer Studies: Software and Operating Systems

JCE Computer Studies · Work through your exam, one topic at a time.

All guide sections

Software and Operating Systems

Software is the set of instructions a computer follows; the operating system (OS) is the master program that manages the hardware and provides services to applications. The exam tests software categories, the functions of an OS, types of OS, and how translators work.

Categories of software

  • System software: the OS, utilities (disk clean-up, antivirus, backup), device drivers, and translators (compiler, interpreter, assembler).
  • Application software: general-purpose packages (word processor, spreadsheet), special-purpose packages (payroll, CAD), and bespoke software written for one organisation.

Functions of an OS

Memory management, process scheduling and multitasking, file management, input/output and peripheral control through drivers, a user interface (GUI or CLI), security through user accounts and permissions, error handling, spooling of print jobs, and virtual memory created by paging.

Types of OS

Batch, single-user, multi-user, multitasking, network, embedded, mobile, and real-time (hard or soft).

Translators

A compiler translates the whole source program into object code before it runs: fast execution, all errors reported at the end, and the source is not needed at run time. An interpreter translates and executes one line at a time: easier debugging and good for teaching, but slower and it needs the source each time.

Worked example

A hospital ventilator must react to a sensor change within a fixed deadline, every single time. Which OS is appropriate? A hard real-time OS, because correctness depends on meeting the deadline, not on average speed. A general-purpose multitasking OS could delay the process unpredictably while servicing other jobs.

Traps that cost marks

  • Saying an interpreter produces a stand-alone executable file.
  • Confusing multitasking (several processes sharing one CPU) with multiprocessing (several CPUs).
  • Calling the OS application software, or a GUI hardware.
  • Listing "runs programs" as an OS function without naming the resource being managed.