---
title: "Fixed vs variable partitioning"
subject: "Operating System"
chapter: 4
key: "semester_6/operating_system:fixed-vs-variable-partitioning"
source: https://www.bctengineer.com/q/semester_6/operating_system/fixed-vs-variable-partitioning
site: BCT Engineering
---

# Fixed vs variable partitioning

Operating System · Chapter 4: Memory Management

- Asked in: year not given
- Video: [Memory Partitioning Explained: Fixed vs Variable Techniques for Beginners](https://www.youtube.com/watch?v=evIyTxuIv7M) — CodeLucky
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_6/operating_system/fixed-vs-variable-partitioning
- Whole chapter: https://www.bctengineer.com/md/semester_6/operating_system/chapter-4

## Question

Prepare a comparative note on the fixed and variable partitioning multiprogramming techniques for real memory management.

## Short answer

Fixed partitioning uses static partition sizes, causing internal fragmentation and simple management. Variable partitioning allocates partitions exactly as needed, avoiding internal fragmentation but creating external holes that require coalescing and compaction, achieving higher memory utilization with more overhead.

## Answer

Both are contiguous real-memory management schemes for multiprogramming: main memory is divided into partitions, each holding one process.

**Fixed (static) partitioning** divides memory into a fixed number of partitions of equal or unequal size at system start-up. **Variable (dynamic) partitioning** creates a partition of exactly the required size when a process is loaded; the partitions and their number change over time.

| Point | Fixed partitioning | Variable partitioning |
|---|---|---|
| Partition size | Fixed before execution | Created as per process size |
| Number of partitions | Fixed, so limits degree of multiprogramming | Variable |
| Internal fragmentation | Yes (partition larger than process) | None |
| External fragmentation | Not significant (but unusable free partitions exist) | Yes, holes appear as processes leave |
| Memory utilization | Low | Higher |
| Process size limit | Cannot exceed largest partition | Limited only by free memory |
| Allocation | Simple; queue per partition or a single queue | Needs first/best/worst fit algorithms |
| Management overhead | Low (simple table) | Higher (free-list, coalescing, compaction) |
| Relocation | Static, simpler | Needs dynamic relocation for compaction |
| Example | IBM OS/360 MFT | IBM OS/360 MVT |

Example: memory 100 K, processes of 30 K, 25 K, 20 K. With fixed 25 K partitions the 30 K process cannot be loaded and the 20 K process wastes 5 K. With variable partitioning all three fit exactly (75 K used, 25 K hole).

In short, fixed partitioning is simple but wasteful; variable partitioning uses memory efficiently but suffers external fragmentation, which requires coalescing and compaction.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. Which fragmentation is characteristic of fixed partitioning?
   A. Internal fragmentation
   B. No fragmentation at all
   C. Only external fragmentation of holes created by departures
   D. Fragmentation in registers
   Answer: A. A process smaller than its fixed partition wastes the remainder inside it. (Key point: Fixed partitioning waste)

2. What problem does variable partitioning suffer from, and what cures it?
   A. Internal fragmentation, cured by bigger partitions
   B. External fragmentation, requiring coalescing and compaction
   C. Limited degree of fixed multiprogramming, cured by paging
   D. None
   Answer: B. Holes appear as processes leave; coalescing and compaction merge them. (Key point: Variable partitioning problem)

3. Memory 100K, processes 30K, 25K, 20K with fixed 25K partitions: what happens?
   A. All three fit with no waste
   B. The 30K process cannot load and the 20K wastes 5K
   C. The 25K process cannot load
   D. All wait
   Answer: B. 30K exceeds the largest partition; the 20K process wastes 5K in its 25K partition. (Key point: Example)

## Related in Operating System

- [Multiprogramming, multiprocessing, distributed OS](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Amultiprog-multiproc-distributed-os) — Operating System, chapter 1
- [Virtual memory management; thrashing](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Avirtual-memory-thrashing) — Operating System, chapter 4
- [File system vs virtual memory; contiguous allocation](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Afs-vs-virtual-memory-contiguous-tape) — Operating System, chapter 5
- [Preemptive vs non-preemptive; real-time scheduling](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Apreemptive-nonpreemptive-realtime) — Operating System, chapter 2
- [Compaction vs coalescing; paging; TLB](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Acompaction-coalescing-paging-tlb) — Operating System, chapter 4

## Related in other subjects

- [Source coding; fixed vs variable length codes](https://www.bctengineer.com/question.md?key=semester_5%2Fdata_communication%3Asource-coding-fixed-variable) — Data Communication, chapter 8
- [Variable length coding; entropy and fixed code efficiency](https://www.bctengineer.com/question.md?key=semester_6%2Fcommunication_systems%3Avariable-length-coding-entropy-six) — Communication Systems, chapter 6
- [Cache memory mapping techniques](https://www.bctengineer.com/question.md?key=semester_6%2Fembedded_system%3Acache-mapping-techniques) — Embedded System, chapter 4, asked 3×
- [Need of clustering; hierarchical vs partitioning; K-means](https://www.bctengineer.com/question.md?key=semester_7%2Fdata_mining%3Acluster-need-hier-vs-partition-kmeans) — Data Mining, chapter 5
