Practice
Solution
Step 1: Recall linked allocation structure
Each file block contains a pointer to the next block; no direct indexing.Step 2: Accessing the 5th block
Requires starting at the first block and following pointers through blocks 2, 3, 4 sequentially.Step 3: Analyze the system reads the directory entry, then follows the pointer from the 1st block to the 5th block sequentially through intermediate blocks
Correctly describes sequential pointer traversal from the first to the 5th block.Step 4: Analyze the system calculates the 5th block's address directly using the starting block and block size
Direct calculation is only possible in contiguous allocation, not linked.Step 5: Analyze the system uses an index block to directly access the 5th block without traversing intermediate blocks
Index blocks are used in indexed allocation, not linked allocation.Step 6: Analyze the system reads all blocks in parallel and picks the 5th block from memory
Parallel reading of blocks is not feasible due to pointer-based chaining.Final Answer:
Option D -> Option DQuick Check:
Linked allocation -> sequential pointer traversal to reach desired block.
- Assuming direct block calculation in linked allocation
- Confusing linked allocation with indexed allocation
Solution
Step 1: Understand preemptive SJF behavior
Preemptive SJF allows the CPU to switch to a newly arrived process if it has a shorter burst time than the currently running process.Step 2: Analyze scenarios
If new processes with shorter burst times can arrive anytime, preemptive SJF ensures the CPU always runs the shortest job next, improving average waiting time.Step 3: Why other options are incorrect
A: If all processes arrive simultaneously with similar burst times, preemptive advantage is minimal.
B: Starvation is a concern in preemptive SJF, so it's not chosen when fairness is ignored.
C: Preemptive SJF increases context switches, so it's not preferred when minimizing overhead.Final Answer:
Option A -> Option AQuick Check:
Preemptive SJF is best when shorter jobs can arrive anytime, requiring immediate preemption.
- Assuming preemptive SJF always reduces overhead
- Believing preemptive SJF is best when all jobs arrive simultaneously
Solution
Step 1: Analyze each statement
A is correct; long processes delaying short ones is the convoy effect.
B is correct; preemption can reduce the convoy effect.
C is incorrect; the convoy effect increases average waiting time, not minimizes it.
D is correct; convoy effect can cause poor CPU utilization and longer waits.Step 2: Identify the incorrect statement
Only The convoy effect causes the average waiting time to always be minimal in FCFS falsely claims minimal average waiting time due to the convoy effect.Final Answer:
Option C -> Option CQuick Check:
Convoy effect worsens waiting time, not improves it.
- Assuming convoy effect improves waiting time
- Ignoring preemption as a mitigation
- Misunderstanding convoy effect impact on CPU utilization
Solution
Step 1: Analyze Segments can vary in size and represent logical units of a program
Segments are variable-sized logical units; this is correct.Step 2: Analyze Segmentation completely eliminates fragmentation issues
Segmentation does not eliminate fragmentation; it can cause external fragmentation.Step 3: Analyze Segment tables store base and limit for each segment
Segment tables store base and limit addresses; this is correct.Step 4: Analyze Segmentation allows sharing of segments between processes
Segmentation supports sharing segments like code segments; this is correct.Final Answer:
Option A -> Option AQuick Check:
Fragmentation remains a problem in segmentation due to variable sizes.
- Believing segmentation removes all fragmentation
- Confusing segment tables with page tables
- Assuming segments cannot be shared
Solution
Step 1: Understand TLB size impact
Larger TLB can cache more translations, increasing hit rate.Step 2: Consider trade-offs
However, larger TLBs have longer lookup times and consume more power and chip area.Step 3: Analyze options
A: Correct, bigger TLBs have diminishing returns and increased latency.
B: Incorrect, increasing size does not always reduce access time without downsides.
C: Incorrect, larger TLBs increase power and area.
D: Incorrect, page tables remain necessary for full address translation.Final Answer:
Option D -> Option DQuick Check:
Trade-offs include lookup latency and hardware cost, not just hit rate.
- Assuming bigger TLB is always better
- Ignoring hardware cost and latency
