পরীক্ষা আর্কাইভ

৪৯তম বিসিএস ⎯ কম্পিউটার সায়েন্স (CSE) [৯৭১]

পরীক্ষা৪৯তম বিসিএস ⎯ কম্পিউটার সায়েন্স (CSE) [৯৭১]তারিখতারিখ অনির্ধারিতসময়30 minutes
মোট প্রশ্ন৪৪
সিলেবাস
Exam 12 OS overview and types; process and thread management; Scheduling algorithms; Inter-process communication; semaphores; deadlocks; Memory management: paging, segmentation; File management and security [Source: Class–10 and relevant books]
ঘনত্ব
উত্তর
উত্তরিতবর্তমানপুনরায় দেখুনঅসম্পূর্ণ

৪৯তম বিসিএস ⎯ কম্পিউটার সায়েন্স (CSE) [৯৭১]

৪৯তম বিসিএস ⎯ কম্পিউটার সায়েন্স (CSE) [৯৭১] · তারিখ অনির্ধারিত · ৪৪ প্রশ্ন

.
The primary goal of an operating system is to:
  1.  Maximize CPU clock speed
  2. Manage hardware and provide services to users and applications
  3. Replace application software
  4. Only run on network servers
ব্যাখ্যা

Answer: b)
Explanation:
Definition: An OS is system software that manages hardware resources (CPU, memory, I/O) and provides abstractions and services (files, processes) to applications. Intermediate: It schedules tasks, mediates access to devices, and offers APIs (system calls).
Standard: While performance is important, OS design balances resource utilization, concurrency, security, and usability — not simply maximizing raw CPU speed.
Other options:
(a)—OS does not change clock frequency;
(c) —OS supports, not replaces, applications;
(d) —OS runs on many device types.

.
Which of the following is not a core component of a typical OS?
  1. Process management
  2.  File system
  3. Compiler 
  4. Memory management
ব্যাখ্যা

Answer: c)
Explanation:
Core OS components include process scheduler, memory manager, file system, device drivers, and I/O manager. Intermediate: A compiler translates high-level language to machine code — it's application-level tool, not part of OS kernel. Standard: Some OS distributions include toolchains, but they are not kernel components. Other options are integral OS modules.

.
Which of the following is not a type of kernel?
  1. Monolithic kernel
  2. Microkernel
  3. Hybrid kernel
  4. Multithreaded kernel
ব্যাখ্যা

Answer: d) Multithreaded kernel
Explanation:

(a)  Monolithic = all OS services in one large kernel.

(b)  Microkernel = minimal kernel, rest in user space.

(c)  Hybrid = mix of both.

(d)  "Multithreaded kernel" is not a kernel type (though kernels may support multithreading).

.
Batch operating systems were primarily designed to:
  1. Provide interactive GUI sessions
  2. Offer cloud virtualization features
  3. Support real-time control for embedded systems
  4. Execute a sequence of jobs without user interaction 
ব্যাখ্যা

Answer: d)
Explanation:
Batch OS ran jobs (programs + data) in groups without user interaction. IUsed job control language, job queues, and were popular on early mainframes to improve throughput.  They optimize throughput and resource utilization, not interactivity.

.
Time-sharing OS differ from batch OS chiefly because they:
  1. Run only on battery-powered devices
  2. Allow multiple users to interact with the system concurrently via time-sliced CPU allocation
  3. Never use virtual memory
  4. Only support one job at a time
ব্যাখ্যা

Answer: b)
Explanation:
Definition: Time-sharing systems divide CPU time into slices and rapidly switch among users/processes.  Provide interactive response, typically via terminals; require scheduling and context-switch overhead management. Standard: Time-sharing often introduced features like process isolation and fair scheduling.

(c) false—many time-sharing systems use virtual memory;
(d) contradicts time-sharing;
(a) irrelevant

.
A distributed operating system primarily:
  1. Runs only on single-core machines
  2. Provides a single system image across multiple networked machines 
  3.  Is identical to a batch OS
  4.  Requires no network protocols
ব্যাখ্যা

Answer: b)
Explanation:
Definition: Distributed OS coordinates resources across machines to appear as one cohesive system. It handles transparency (location, migration), distributed scheduling, and failure handling. Requires networking protocols and consistency mechanisms;.

.
A process control block (PCB) store:
  1.  Process state, CPU registers, scheduling info, memory pointers, I/O status 
  2.  Only the process source code
  3. The OS kernel itself
  4. User's GUI preferences
ব্যাখ্যা

Answer: a)
Explanation:
Definition: PCB holds all information needed to manage a process: PID, state, program counter, registers, memory map, open files. Intermediate: On context switch, kernel saves/restores PCB to resume process. Standard: Not source code or OS kernel

.
Process scheduling that selects the next process to run on CPU is called:
  1. Long-term scheduling
  2. Medium-term scheduling
  3. Short-term (CPU) scheduling
  4. Swapping scheduler
ব্যাখ্যা

Answer: c)
Explanation:
Short-term scheduler (dispatcher) picks ready process to execute on CPU frequently
Needs to be fast, often in microseconds. 
Long-term (job admission) and medium-term (swapping) have different roles

.
A context switch involves:
  1. Switching from one user to another without touching CPU state
  2. Converting source code to machine code
  3. Only swapping disk blocks
  4. Saving CPU registers of current process and loading registers of next process 
ব্যাখ্যা

Explanation:
Context switch saves process state (PC, registers) into PCB, restores next process's state.
 Overhead includes time to save/restore and flush TLBs.
Minimizing unnecessary context switches is a performance concern.

১০.
The dispatcher latency is:
  1. Time to execute the process's instructions
  2.  Time taken by the scheduler to select and switch to the next process (context switch overhead)
  3. Time to write files to disk
  4. Time between two context switch requests
ব্যাখ্যা

Answer: b)
Explanation:
Dispatcher latency includes context-switch time and time to start executing next process.
Smaller latency improves responsiveness. Kernel design aims to minimize this.

১১.
Which scheduling policy is most fair for time-shared systems where each user gets roughly equal CPU share?
  1. Round Robin (with suitable quantum) 
  2. First Come First Serve (FCFS)
  3. SJF
  4. LIFO
ব্যাখ্যা

Answer: a)
Explanation:
Round Robin gives each ready process a time slice in cyclic order with equal quantum, fairness is achieved; performance depends on quantum size.

১২.
The major difference between process and thread is:
  1. Processes execute faster by default
  2. Threads cannot be scheduled independently
  3. Threads share the process's address space and resources; processes do not 
  4. Processes do not have PCBs
ব্যাখ্যা

Answer: c)
Explanation:

Thread = lightweight process; multiple threads of a process share memory and file descriptors.
 Threads allow concurrency with lower context-switch cost; require synchronization. 
 Processes have PCBs; threads may have TCBs;

১৩.
Which is an advantage of multithreading?
  1.  Increased overhead for context switching compared to processes
  2. Improved responsiveness and better CPU utilization for I/O-bound tasks 
  3. Mandatory global locking across threads
  4. Threads cannot share resources
ব্যাখ্যা

Answer: b)
Explanation:
Threads permit parallelism within process; while one thread blocks on I/O, others can run. 
Lower creation and switching overhead than processes. 
Synchronization is needed but not mandatory global locking;

১৪.
Which algorithm is non-preemptive by design?
  1. Round Robin
  2. FCFS 
  3.  SRTF
  4. Preemptive priority scheduling
ব্যাখ্যা

Answer: b)
Explanation:

Non-preemptive scheduling means once a process starts executing on the CPU it keeps the CPU until it either finishes or voluntarily blocks (e.g. for I/O). The scheduler does not forcibly take the CPU away because a new process arrived or a timer expired.
FCFS (First-Come, First-Served) is non-preemptive by design. obeys exactly that rule: processes are served in arrival order and each runs to completion (or until it blocks). So FCFS is non-preemptive by definition.

Other choices are preemptive:

Round Robin (a) preemptive: a running process is interrupted after a fixed time quantum and put back in the ready queue (time-slice preemption).
SRTF (c) — preemptive: “Shortest Remaining Time First” is the preemptive version of SJF; a new arrival with smaller remaining time will preempt the current process.
Preemptive priority scheduling (d) — the name says it: a higher priority arrival can preempt a lower-priority running task.

১৫.
Priority scheduling can be implemented with aging to prevent:
  1. Deadlock
  2. Increased throughput always
  3. Starvation
  4. Decreased context switches
ব্যাখ্যা

Answer: c) Starvation
Priority Scheduling
In priority scheduling, each process is assigned a priority. Higher priority processes are executed first.
Lower priority processes may have to wait indefinitely if higher-priority processes keep arriving.
 What is Aging?
Aging is a technique to prevent starvation. It gradually increases the priority of waiting processes over time.
Eventually, a low-priority process will become high enough to get CPU time.

Priority scheduling + aging starvation prevention.

Priority scheduling alone can cause starvation.
Aging adjusts priority dynamically → ensures fairness.


Others option:

a) Deadlock --Aging does not prevent deadlocks. Deadlocks depend on resource allocation cycles, not just priority.

b) Increased throughput always --Aging may slightly reduce throughput in some cases because CPU may be given to previously low-priority processes.

d) Decreased context switches --Aging doesn’t reduce context switches. It affects which process gets scheduled, not the number of switches.

১৬.
Which scheduling algorithm is best for interactive response time?
  1. Longest Job First
  2. Round Robin with small quantum
  3.  Strict FCFS
  4. Random scheduling
ব্যাখ্যা

Answer: b)  
Interactive response time: How fast a system responds to user inputs (like typing, mouse clicks, commands).
Round Robin: Each process gets a time slice (quantum) in cyclic order.
Small quantum: Each process gets CPU frequently. Short tasks finish quickly, improving interactive response time.
   Fair and predictable.
Example:
Processes (CPU burst in ms):
Process    Burst
 P1             4
 P2             2
 P3             6

   Quantum = 2 ms → each process runs max 2 ms per turn.
   Interactive users see frequent responses, no process waits too long.

১৭.
The concept of throughput in scheduling is improved by:
  1. Increasing average, I/O wait times
  2. Decreasing CPU speed
  3.  Increasing degree of multiprogramming until thrashing begins 
  4.  Removing all concurrency
ব্যাখ্যা

Answer: c) 

Throughput = Number of processes completed per unit time.
Goal of a CPU scheduler: maximize throughput while keeping CPU and I/O busy.
Factors affecting throughput:
 → CPU utilization
 → I/O utilization
 → Number of processes in memory (degree of multiprogramming)

Degree of multiprogramming = Number of processes in memory at the same time.
Effect: More processesCPU is less likely to be idle → better throughput.
Example: 
1 process
→ CPU may be idle during I/O.
5 processes → while some are waiting for I/O, others use CPUhigher throughput.

১৮.
Which scheduling approach focuses on minimizing maximum lateness for jobs with deadlines?
  1.  Minimize average waiting time
  2. Earliest Due Date first (EDD)
  3. Longest Remaining Time First
  4.  Random selection
ব্যাখ্যা

Answer: b) 
Scenario: You have a set of jobs with specific deadlines.

Goal: Minimize maximum lateness, i.e., ensure no job is excessively late.

Lateness (L) of a job = Completion time − Due date

If L > 0 → job is late.
Maximum lateness = the largest lateness among all jobs.

So, the scheduling approach must prioritize jobs with earlier due dates.

Earliest Due Date first (EDD) 

Rule: Always schedule the job with the earliest due date next.

Effect: Jobs with the closest deadlines finish first.

Minimizes maximum lateness across all jobs.

Example:

Job   Processing Time   Due Date
J1               4                        10
J2               2                         8
J3               3                        12

Schedule using EDD: J2 → J1 → J3

Completion times:

J2: 2 → L2 = 2−8 = -6 (early, no lateness)

J1: 6 → L1 = 6−10 = -4

J3: 9 → L3 = 9−12 = -3

Maximum lateness minimized.

Key point: EDD does not necessarily minimize waiting time, but it guarantees minimized maximum lateness.

১৯.
Which is true about processor affinity?
  1. Strong affinity pins a process to a CPU to improve cache performance
  2. Affinity always reduces performance
  3. It refers to relationships between processes and files
  4. It is unrelated to scheduling
ব্যাখ্যা

Answer: a) 

Processor Affinity:

Processor affinity (also called CPU affinity) is a scheduling concept in multiprocessor systems.

It defines the preference of a process to run on a specific CPU/core.

Purpose: improve cache performance and reduce overhead from moving processes between CPUs.

Types of Processor Affinity
1. Strong affinity→ The process must run on a specific CPU.

Example: Process P is pinned to CPU 0.

Advantage: CPU cache is reused → fewer cache misses → better performance.

Disadvantage: May reduce load balancing if that CPU becomes busy.

2. Weak affinity→ The process prefers a CPU but can run elsewhere if needed.

Balances cache performance and CPU utilization.

২০.
The critical section problem is concerned with:
  1. Ensuring exclusive access to shared resources among concurrent processes
  2. Formatting disks safely
  3. Allocating file system in nodes
  4. Preventing network congestion
ব্যাখ্যা

Answer: a) 

Critical Section Problem:

In concurrent programming, multiple processes may share resources (like variables, files, or devices).

Critical Section (CS): The part of the program where the process accesses shared resources.

Problem: If two or more processes execute their critical sections simultaneously, it can lead to race conditions and inconsistent results.

Example: Two processes incrementing the same counter. If executed simultaneously, updates may be lost.

Requirements for Solving the Critical Section Problem:

Any solution must satisfy three conditions:

Mutual Exclusion →Only one process can be in the critical section at a time.

Progress → If no process is in CS, one of the waiting processes must eventually enter.

Bounded Waiting (No Starvation) →Each process must get a chance to enter CS after waiting for some bounded time.

২১.
A semaphore is best described as:
  1.  A binary file on disk
  2.  An integer variable used for signaling and mutual exclusion with atomic operations (P and V) 
  3.  A network protocol
  4. Only used for file locking
ব্যাখ্যা

Answer: b)
Semaphore:
A semaphore is a synchronization tool used in operating systems for:

Mutual exclusion – to prevent multiple processes from accessing a shared resource simultaneously.
Process synchronization – to coordinate the sequence of execution among processes.

Semaphore = integer variable used for signaling.
P (wait): decrement, if <0 → process waits.
V (signal): increment; wake up waiting process if any.
Solves critical section problem, prevents race conditions.
Binary semaphore mutual exclusion.
Counting semaphoremanages multiple identical resources.

২২.
Thread is a ________.
  1. Light weight process 
  2.  Heavy weight process
  3.  Multi process
  4.  I/O process
ব্যাখ্যা

 Answer: a) Light weight process

Why is a thread called a "lightweight process"?

Process:

→ A process is a heavy unit because it has:

→ its own memory space (code, data, heap, stack)

→ its own resources (file descriptors, registers, etc.)

→ creation and switching between processes require more overhead

A thread:

→ Exists within a process

→ Shares code, data, and files with other threads of the same process

→ Needs only a separate program counter, registers, and stack

→ Switching between threads of the same process is faster than switching between processes

২৩.
Context switching between threads of the same process is:
  1.  Slower than between processes
  2. Faster than between processes 
  3.  Equal in cost
  4. Impossible
ব্যাখ্যা

Answer: b) Faster than between processes.
• Threads share resources → only registers/PC need switching.
• Processes need full memory + resources switchheavier.

২৪.
Which is an advantage of multithreading?
  1. Increased throughput
  2. Reduced concurrency
  3. Guaranteed deadlock freedom
  4.  Increased context switching always
ব্যাখ্যা

Answer: a) Increased throughput 
Multithreading:
Thread = smallest unit of CPU execution.
Multithreading = A process having multiple threads that run concurrently.
All threads share the process’s code, data, and open files, but have their own registers, PC, and stack.

Analogy:

Process = "factory"
Threads = "workers inside the factory"
Multithreading= Workers share the same tools/resources but work independently.

Advantages of Multithreading
1. Responsiveness – UI stays active (e.g., Word processor typing + spell check).
2. Resource Sharing – Threads share memory → efficient communication.
3. Economy – Thread creation/switching < Process creation/switching.

Scalability – On multi-core CPUs, multiple threads can run in parallel

a) Correct: Multithreading keeps CPU busymore tasks completed.
b) Wrong: Multithreading increases concurrency.
c) Wrong: Deadlock is still possible.
d) Wrong: Context switching can be reduced with efficient scheduling.

২৫.
What is a common risk in multithreading?
  1. Thrashing
  2. Paging fault
  3. Deadlock
  4. I/O starvation
ব্যাখ্যা

Answer: c) Deadlock
If threads compete for shared resources with circular waits, deadlock occurs.

২৬.
Which is not a typical thread state?
  1. Ready
  2. Running
  3. Terminated
  4. Formatting 
ব্যাখ্যা

Answer: d) Formatting 
    Threads have states: New → Ready → Running → Waiting → Terminated.


  d)  "Formatting" is unrelated.

২৭.
Which scheduling is usually applied for threads?
  1. FCFS
  2. Preemptive Round Robin 
  3. Random
  4. LIFO
ব্যাখ্যা

Answer: b) Preemptive Round Robin
Explanation:
Why Round Robin for threads?

Threads are usually lightweight units inside a process.
→ Multiple threads may belong to the same process, and they need fair CPU sharing.
→ Round Robin gives each thread a time quantum (time slice).
→ After its quantum expires → CPU switches to next thread.

This ensures:

Fairness → every thread gets CPU.

Responsiveness → especially good for interactive and I/O-bound threads.

Preemption → if one thread hogs CPU, OS can interrupt it and give others a chance.

Why not the others?

a) FCFS (First Come First Serve) → Non-preemptive.
If one thread runs a long CPU burst → all other threads wait → bad responsiveness.

Suitable for batch jobs, not threads.

c) Random → Random scheduling is unfair and unpredictable. Can cause starvation.
d) LIFO (Last In First Out) → New threads always scheduled first older threads may starve.

২৮.
Deadlock occurs when processes are waiting for resources in a ________ manner.
  1. Sequential
  2. Random
  3. Parallel
  4. Circular
ব্যাখ্যা

Answer: d) Circular 
•    Deadlock arises if there is a circular chain of processes where each process is waiting for a resource held by the next process in the chain.
•    Example: P1 waits for R1 (held by P2), P2 waits for R2 (held by P3), … Pn waits for Rn (held by P1).

২৯.
Which strategy ensures that deadlock never occurs?
  1. Deadlock prevention 
  2.  Deadlock avoidance
  3. Deadlock detection
  4. Deadlock recovery
ব্যাখ্যা

Answer: a) Deadlock prevention 
    Prevention: structurally deny one of the four Coffman’s conditions (e.g., disallow hold & wait).
    Avoidance: dynamic resource allocation (Banker’s algorithm).
    Detection: allow deadlock, then check periodically.
    Recovery: terminate processes or preempt resources to fix deadlock.

৩০.
Banker’s Algorithm is used for:
  1. Deadlock prevention
  2. Deadlock avoidance 
  3. Deadlock detection
  4. Deadlock recovery
ব্যাখ্যা

Answer: b) Deadlock avoidance 

Deadlock Avoidance means:

System analyzes each resource request before granting.
Ensures system remains in a safe state (at least one safe execution order exists).

Banker’s Algorithm is the most famous algorithm for this.

• Banker’s algorithm checks if granting a request will leave the system in a safe state.
• If yes → allocate resource.
• If no → make process wait (avoiding unsafe → deadlock states).
Analogy: Like a banker lending money only if he’s sure all loans can eventually be repaid.

৩১.
Deadlock vs Starvation: which statement is true?
  1. Deadlock is temporary, starvation is permanent
  2. Starvation is caused by circular wait
  3. Deadlock involves circular waiting, starvation involves indefinite waiting 
  4.  Both are same
ব্যাখ্যা

Answer: b) Deadlock involves circular waiting, starvation involves indefinite waiting 
•    Deadlock → circular dependency; none can proceed.
•    Starvation → one process waits indefinitely (e.g., low-priority never scheduled).

৩২.
A system is in a “safe state” if:
  1. Deadlock has occurred
  2. At least one safe sequence of processes exists
  3. All processes finish immediately
  4. Resources are idle
ব্যাখ্যা

Answer: b) At least one safe sequence of processes exists 
•    Safe sequence = an order in which all processes can finish without deadlock.
•    If such sequence exists → safe state.

৩৩.
Paging is a technique of:
  1. Logical to physical address mapping 
  2.  Process synchronization
  3. File allocation
  4.  CPU scheduling
ব্যাখ্যা

Answer: a) Logical to physical address mapping.
• Paging divides logical memory into pages (fixed-size) and physical memory into frames (same size).
• The OS maintains a page table for mapping.
• It solves external fragmentation but causes internal fragmentation.

৩৪.
Segmentation differs from paging because:
  1.  Segments are fixed-size, pages variable
  2. Segments are variable-size, pages fixed-size 
  3.  Both segments and pages are fixed-size
  4. Both are variable-size
ব্যাখ্যা

Answer: b) Segments are variable-size, pages fixed-size 
   Paging → fixed-size chunks.
•    Segmentationvariable-size logical divisions (e.g., code, stack, data).

৩৫.
Logical address in segmentation consists of:
  1.  Page number + Offset
  2. Segment number + Offset
  3. Frame number + Page offset
  4.  Virtual + Physical
ব্যাখ্যা

Answer: b) Segment number + Offset 
In Segmentation, memory is divided into logical segments such as:

Code segment
Data segment
Stack segment
Heap segment

Each logical address generated by the CPU is expressed as:
Logical Address= (Segment Number, Offset)
Segment Number → Index into the segment table.
Offset → Distance (displacement) from the start of that segment.

৩৬.
Thrashing occurs when:
  1. Page size is too small
  2. Deadlock occurs in paging
  3. Segments are too large
  4.  Processes spend more time swapping pages than executing 
ব্যাখ্যা

Answer: d) Processes spend more time swapping pages than executing 
• Thrashing excessive paging activity CPU utilization drops.
• Usually caused by too much degree of multiprogramming.

৩৭.
Paging is mainly a ________ technique, while segmentation is a ________ technique.
  1. Memory management, Memory management
  2.  Physical memory management, Logical memory management 
  3. Both logical
  4. Both physical
ব্যাখ্যা

 Answer: b) Physical memory management, Logical memory management 
Segmentation vs Paging:
Paging cares about dividing memory into physical frames.
Segmentation divides programs into logical parts.

৩৮.
Page fault rate (p) is:
  1.  Number of pages in memory / Total pages
  2. CPU utilization fraction
  3. Number of free frames
  4.  Fraction of memory accesses that cause page faults 
ব্যাখ্যা

Answer: d) Fraction of memory accesses that cause page faults 

Formula:  P = Page Faults / Memory References    0 ≤ p ≤ 1

৩৯.
Which of the following increases page fault rate?
  1. Increasing number of frames per process
  2. Reducing number of frames per process
  3. Using LRU
  4. Using Optimal replacement
ব্যাখ্যা

Answer: b) Reducing number of frames per process 

Fewer frameshigher chance needed page is not in memory → higher page fault rate p.

৪০.
Which is the primary symptom of thrashing?
  1. CPU utilization drops 
  2. Page fault rate decreases
  3. Process completes faster
  4. Memory usage decreases
ব্যাখ্যা

Answer: a) CPU utilization drops 
Thrashing:
Thrashing occurs in a computer system when processes spend more time swapping pages in and out of memory than executing actual instructions.
In other words: CPU utilization while paging activity ↑ dramatically

Cause:

Occurs in virtual memory systems when:

Too many processes are loaded into memory (high degree of multiprogramming).

Each process doesn’t have enough frames to hold its working set (the set of pages it frequently uses).

Symptoms:

Very high page fault rate.

CPU is mostly idle or underutilized, waiting for memory.

System slows down drastically, even though it seems busy.

Processes constantly swap → little useful work done → Low CPU utilization

৪১.
What is an FCB (File Control Block)?
  1. Stores file content
  2. Stores file metadata 
  3. Only stores file name
  4. Manages memory allocation
ব্যাখ্যা

Answer: b) Stores file metadata 

Explanation:

FCB contains:

→ File name, type, size
→ Disk block addresses
→ Creation/modification time
→ Access permissions

৪২.
File access methods include:
  1. Sequential
  2. Direct
  3. Indexed
  4.  All of the above
ব্যাখ্যা

Answer: d) All of the above
File access methods define how a program retrieves data from a file. There are several methods depending on the organization of the file and the access requirements.

৪৩.
Contiguous allocation suffers from:
  1. Internal fragmentation
  2. Thrashing
  3.  External fragmentation
  4. No fragmentation
ব্যাখ্যা

Answer: c) External fragmentation 

Explanation:
Contiguous Allocation:
In contiguous allocation, each file is stored in a set of contiguous (consecutive) blocks on the disk.
The starting block and length are recorded in the File Control Block (FCB) or directory entry.

Example:

Disk blocks: 0–19
File A → needs 5 blocks → stored at blocks 0–4
File B → needs 3 blocks → stored at blocks 5–7
File C → needs 4 blocks → stored at blocks 8–11


Why External Fragmentation Occurs:
Over time, as files are created and deleted, free blocks become scattered.
Suppose File B is deleted → free blocks 5–7
New file D requires 6 blocks → cannot be allocated contiguously even though total free space = 6 blocks exists.
This unusable scattered space = external fragmentation.
Key: Contiguous allocation cannot use free space unless it’s all together.

৪৪.
Tree-structured file systems:
  1. Allow multiple files with same name in same directory
  2. Organize files hierarchically
  3. Store all files in single list
  4. Do not allow subdirectories
ব্যাখ্যা

Answer: b) Organize files hierarchically

Explanation:

Supports directories & subdirectories easy navigation and access.