InterviewStack.io LogoInterviewStack.io

Operating System Fundamentals Questions

Comprehensive knowledge of operating system concepts and practical administration across Linux, Unix, and Windows platforms. Core theoretical topics include processes and threads, process creation and termination, scheduling and context switching, synchronization and deadlock conditions, system calls, kernel versus user space, interrupt handling, memory management including virtual memory, paging and swapping, and input and output semantics including file descriptors. Practical administration and tooling expectations include file systems and permission models, user and group account management, common system utilities and commands such as grep, find, ps, and top, package management, service and process management, startup and boot processes, environment variables, shell and scripting basics, system monitoring, and performance tuning. Platform specific knowledge should cover Unix and Linux topics such as signals and signal handling, kernel modules, initialization and service management systems, and command line administration, as well as Windows topics such as the registry, service management, event logs, user account control, and graphical and command line administration tools. Security and infrastructure topics include basic system hardening, common misconfigurations, and an understanding of containerization and virtualization at the operating system level. Interview questions may probe conceptual explanations, platform comparisons, troubleshooting scenarios, or hands on problem solving.

HardTechnical
0 practiced
Discuss kernel vs user-space boundaries. For a high-throughput application that must pass large buffers to the kernel (e.g., high-speed packet I/O or disk I/O), describe techniques to minimize copies and context switches (e.g., zero-copy, mmap, splice, sendfile, io_uring) and the security considerations involved.
MediumTechnical
0 practiced
Write a POSIX-compliant shell script (bash) that atomically updates /etc/myapp/config.yaml: it should validate the new config with a provided validation command, create a timestamped backup of the current file, and replace the config only if validation succeeds. Describe how you avoid race conditions and partial updates.
HardTechnical
0 practiced
Describe mitigation techniques to prevent common kernel- and user-space privilege escalation or buffer-overflow exploits on Linux: ASLR, NX/DEP, stack canaries, seccomp, capabilities, SELinux/AppArmor, and compiler hardening (PIE, fortify). Explain practical trade-offs and compatibility considerations.
EasyTechnical
0 practiced
Explain swap space on Linux: what it is, how it differs from page cache, and how to configure swap partitions and swap files. Discuss pros and cons of enabling swap (performance vs avoiding OOM), and the meaning of the vm.swappiness sysctl.
HardTechnical
0 practiced
Implement a simplified virtual memory simulator in Python that supports:- allocating virtual pages for processes,- reading/writing virtual addresses (causing page faults),- a pluggable page replacement policy (LRU and CLOCK),- reporting page faults and frames contents.Describe the data structures and provide code for the core page access routine.

Unlock Full Question Bank

Get access to hundreds of Operating System Fundamentals interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.