1
OPERATING SYSTEM
(QUESTION BANK)
CONTENTS:
1. INTRODUCTION
a. IMPORTANCE OF OS, CONCEPTS, TERMINOLOGY, TYPES OF OS,
KERNELS AND ITS TYPE.
2. PROCESS SCHEDULING
a. PROCESS, RESOURCE, PROCESS MANAGEMENT
b. PROCESS SCHUDULAR, SCEDULING, SCHEDULING ALGORITHMS
(PREMPTIVE, NON-PREEMPTIVE)
c. PERFORMANCE EVALUATION LIKE TAT, WT, THROUGHPUT,
RESPONSE TIME, SYSTEM PERFORMANCE , SCEDULING CRITERIA,
BASIC TERMS REGARDING SCEDULING (INCL. SUM)
3. PROCESS SYNCHRONIZATION
a. DEFINITION, TYPES OF PROCESS, IPC, PROCESS CONTROL BLOCK
(PCB), SYNC TERMINOLOGY, CRITICAL REGION, SOLUTION, IPC
CLASSICAL PROBLEMS.
b. MONITOR, SEMAPHORE, LOCKS, MESSAGE PASSING
4. DEADLOCK AND OTHER SYSTEM MANAGEMENT SCHEMES
[ DEFINITION, CRITERIA, HANDLING STRATEGIES, BASIC
CONDITIONS FOR DEADLOCK(INCLUDING SUM)].
A. RESOUCE MANAGEMENT
a. MAIN MEMORY , VIRTUAL MEMORY MANAGEMENT
b. MEMORY ALLOCATION STRATEGIES, SUM
c. VIRTUAL ADDRESS, MANAGEMENT WITH INTERNAL AND
EXTERNAL FRAGMENTATION (INCLUDING PROCESS
ALLOCATION ALGORITHMS LIKE BEST-FIT, WORT-FIT AND
FIRST-FIT ALGORITHM).
B. DISK / FILE MANAGEMENT
a. NEED OF FILE MANAGEMENT
b. GOAL OF DISK SCHEDULING
c. DISK SCHEDULING INCLUDING FIFO, SSTF ONLY.
~SUPARNA BANDYOPADHYAY
2
MODULE – I : INTRODUCTION TO OS
1. What is an operating system and why is it essential for computer
functioning?
2. Define the kernel of an operating system and state its main responsibilities.
3. What is the difference between single-core and multi-core processors?
Compare and contrast Uni-processing and Multiprocessing systems with
advantages and limitations of each.
4. Explain the term Uni-programming in the context of operating systems
5. What is multitasking and how does it differ from multiprocessing?
6. Describe the various types of operating systems (batch, time-sharing,
distributed, real-time) with suitable examples.
7. Discuss the structure of the kernel and differentiate between monolithic
kernel, microkernel, and hybrid kernel architectures.
8. Explain in detail how a multi-core operating system manages tasks across
multiple cores for efficient performance.
MODULE – 2 : PROCESS SCHEDULING
1. Define Process Scheduling. What is its main objective in an operating
system? List the different types of schedulers used?
2. What is the difference between a scheduler and a dispatcher? Explain the
role of a dispatcher during process execution?
3. Explain the different process states in an operating system using a state
transition diagram. Describe how the CPU scheduling is related to these
states?
4. What is the Process Control Block (PCB)? List its major components and
explain how it helps the CPU to switch between processes.
5. Explain the CPU Scheduling Criteria in detail. How do throughput,
turnaround time, waiting time, response time, and CPU utilization affect the
performance of a scheduling algorithm?
~SUPARNA BANDYOPADHYAY
3
6. Differentiate between Multilevel Queue (MLQ) and Multilevel Feedback
Queue (MLFQ) scheduling algorithms.
7. Explain with a neat diagram how feedback is provided in MLFQ to
improve responsiveness?
8. Difference between MLQ & MLFQ with diagram ?
9. What is Aging and Bootstrap Loader?
~SUPARNA BANDYOPADHYAY
4
MODULE – 3 : PROCESS SYNCHRONIZATION
1. Explain the concept of Process Synchronization in operating systems? Why
is synchronization needed in multiprogramming environments? Describe
with suitable examples?
2. Discuss the Critical Section Problem in detail? What are the
requirements for a solution to the critical section problem, and how are they
satisfied by synchronization mechanisms?
3. Differentiate between pre-emptive and non-pre-emptive kernels? How
does process synchronization differ in these two kernel types? Illustrate with
examples?
4. Explain Peterson’s Solution for the critical section problem? Describe
how it satisfies the three conditions of mutual exclusion, progress, and
bounded waiting?
5. What are Semaphores? Explain their types (binary and counting) and
their role in process synchronization with suitable pseudo-code examples?
6. Discuss the Producer–Consumer Problem in detail? How can it be
solved using semaphores? Write the algorithm and explain each step clearly?
7. Explain the Readers–Writers Problem? Discuss how semaphores can
be used to solve this problem while ensuring fairness among readers and
writers?
8. Describe the Dining Philosophers Problem? Why does this problem
occur, and how can it be solved using monitors or semaphores? Discuss
possible deadlock scenarios?
9. What is a Monitor in process synchronization? Explain the structure
and working of monitors with examples of synchronization problems solved
using them?
10. Compare and contrast Semaphores, Monitors, and Message Passing
mechanisms used in synchronization. Give examples of situations where
each is more suitable?
11. Discuss how synchronization is implemented in modern
multiprocessor systems? What are hardware-supported synchronization
mechanisms like Test-and-Set and Compare-and-Swap?
~SUPARNA BANDYOPADHYAY
5
12. Explain the concept of Busy Waiting? Why is it considered
inefficient? How can it be avoided using blocking synchronization
mechanisms?
13. Explain how synchronization issues can cause race conditions?
Provide an example of a race condition and describe methods to prevent it?
14. Describe the Bakery Algorithm for process synchronization? Explain
how it ensures mutual exclusion and fairness among multiple processes?
15. Discuss how the bounded buffer problem demonstrates process
synchronization challenges? Provide both semaphore-based and monitor-
based solutions?
16. Explain condition variables in monitors? How are they different from
semaphores? Give an example to illustrate their use in synchronization?
17. What are the synchronization issues in distributed systems? Explain
the concept of logical clocks and synchronization mechanisms used in
distributed environments?
MODULE – 4: DEADLOCK
[Link] dead in a system? Illustrate with Resource Allocation graph and Wait-for-graph?
2. What are the necessary conditions for deadlock?
3. Describe the deadlock handling strategies?
4. Cycle doesn’t necessarily mean there exists deadlock in a system – justify with example?
5.
Compute the Need matrix for each process, where Need = Max − Allocation.
Using the Banker's algorithm, determine whether the system is currently in a safe state.
~SUPARNA BANDYOPADHYAY
6
If the system is safe, find one safe sequence (an ordering of processes that allows all to
finish). Show the step-by-step reasoning of the Banker's algorithm (which process you choose at each
step, why it is chosen, how Available changes, and when a process finishes and releases its resources).
If the system is not safe, explain why (identify the point where no process can be selected)
and state whether the system is in deadlock or simply unsafe.
[Link] are the memory allocation strategies in memory (primary)
management with working principle(s)?
7. Difference between physical and logical address with diagram?
8. Explain Virtual memory?
9. Difference between external and internal fragmentation with example?
10. What is starvation, aging, live-lock, mutex?
11. Why do you need disk scheduling? Why demand paging is needed in
virtual memory?
12. Define thrashing? What is spatial and temporal locality of reference ?
BOOKS : P. GALVIN / RAJIB MALL
RESOURCE(S): GEEKSFORGEEK / TUTORIAL POINT/ GATE
SMASHERS
*******************
~SUPARNA BANDYOPADHYAY