Free mock test
Operating System Architecture and Types in Detail

Operating System Architecture and Types in Detail

Software and Operating Systems · 4 min read

System software at a glance

TypeRoleExamples
Operating systemControls the whole computerWindows, Linux, Android, macOS
Device driversLet hardware talk to the OSPrinter, graphics and sound drivers
Utility softwareMaintain and protect the systemAntivirus, disk cleanup, backup
Language translatorsConvert code to machine languageCompiler, interpreter, assembler
FirmwareSoftware stored permanently in hardwareBIOS, router firmware

Layers of an operating system

LayerComponentRole
1 (top)UserClicks, types, opens apps
2ShellTakes the user's commands and passes them to the kernel. CLI (Command Prompt) or GUI (desktop)
3Application softwareDoes the user's task; asks the OS for services and cannot touch the hardware directly
4KernelThe core. Talks to the hardware and manages the CPU, memory, devices, files, processes and security
5 (bottom)HardwareCPU, RAM, storage, devices

Flow: User → Shell → Application → Kernel → Hardware.

Types of kernel

KernelIdeaAdvantageExamples
MonolithicAll OS services run together in kernel spaceFastLinux, Unix
MicrokernelOnly essential functions in kernel space; the rest run in user spaceStable and secure: one failing service does not crash the systemMach, MINIX, QNX
HybridMix of the twoBalance of speed and stabilityWindows NT, macOS (XNU)
ExokernelAlmost no abstraction; programs get direct hardware accessPeak performance for special usesResearch systems
NanokernelEven smaller than a microkernel; handles little more than hardware interruptsEmbedded and real-time useEROS, embedded RTOS

Well-known operating systems

OSDeveloperUsed onInterface
WindowsMicrosoftPCs, laptops, serversGUI
macOSAppleMac computersGUI
LinuxLinus Torvalds (open source)Servers, PCs, embeddedCLI and GUI
ChromeOSGoogleChromebooksGUI
AndroidGoogle (Linux-based)Phones, tabletsTouch GUI
iOSAppleiPhone, iPadTouch GUI
UNIXAT&T Bell LabsServers, workstationsCLI and GUI

Batch, multiprogramming, multitasking and multiprocessing

  • Batch OS: from the second generation. An operator groups similar jobs into a batch, which then runs one after another with no user contact. Good for payroll and bank processing; a fault in one job can delay the batch and the CPU may sit idle during I/O.
  • Multiprogramming: several programs sit in memory together. When one needs I/O, the OS switches the CPU to another ready program, so the CPU is rarely idle. It is not parallel: the CPU still runs one at a time.
  • Multitasking (time-sharing): each task gets a small time slice (time quantum) in turn, round-robin, so quickly that everything seems to run at once. Fast response, interactive.
  • Multiprocessing: two or more CPUs or cores run different processes truly in parallel, sharing the same RAM.
FeatureMultiprogrammingMultitaskingMultiprocessing
GoalKeep the CPU busyFast response to usersHigher throughput
When CPU switchesWhen a process waits for I/OAt fixed time intervalsNot needed: each CPU has its own process
CPUsOneOneTwo or more
ExamplesEarly mainframesWindows, Linux, macOSModern multi-core PCs

Real-time and network operating systems

  • Real-time OS (RTOS): guarantees a response within a strict deadline. Hard real-time: missing a deadline is a complete failure (airbag, missile guidance, aircraft control). Soft real-time: a missed deadline only reduces quality (video streaming, online games). Examples: VxWorks, FreeRTOS, QNX, ThreadX.
  • Network OS (NOS): lets computers share files, printers, users and an internet connection. Peer-to-peer: all computers are equal, no dedicated server. Client-server: a dedicated server provides services to clients. Examples: Windows Server, Linux server, UNIX.

Keep practising

Notes are only half the work. Test yourself with questions and discuss doubts with other aspirants.

Prepared for exam revision from standard computer textbooks, Microsoft documentation and official sources. Features differ between Excel and Word versions (2016, 2019, 2021, 365) so check which version your exam follows. Found a mistake? Tell us.