Computer Software and Operating Systems
What this domain tests
The paper checks whether you can classify software, describe what an operating system does, compare scheduling policies and recognise deadlock. Expect definitions, comparison tables, short notes on translators and utility programs, and a small scheduling calculation.
Core rules
- System software (operating system, device drivers, translators, utilities) runs the machine; application software solves user tasks. Firmware sits in ROM.
- Translators: assembler for assembly language, compiler translates the whole program before running, interpreter translates and executes line by line, linker joins object modules, loader brings the program into memory.
- OS functions: process management, memory management, file management, device management, security and the user interface.
- OS types: batch, multiprogramming, multitasking, time-sharing, real-time, distributed.
- Scheduling metrics: turnaround = completion - arrival; waiting = turnaround - burst time.
- Deadlock needs all four conditions together: mutual exclusion, hold and wait, no preemption, circular wait.
Worked example
Three processes arrive together with burst times P1 = 8, P2 = 4, P3 = 2. Under FCFS in the order P1, P2, P3 the waiting times are 0, 8 and 12, average 6.67. Under SJF the order is P3, P2, P1, so waiting times are 0, 2 and 6, average 2.67. SJF gives the lower average waiting time but can starve a long process.
Traps that cost marks
- Calling the operating system application software.
- Confusing multiprogramming (several jobs resident, one running) with multitasking.
- Saying a compiler produces machine code line by line.
- Quoting only one deadlock condition instead of all four.
- Subtracting arrival time twice, or reporting turnaround as waiting time.