Overlaying
2008
Overlaying
Answer: B. allows larger programs, but requires more effort — Overlaying is a memory-management technique used on systems that lack (or predate) virtual memory: only the code and data a running process needs at a given…
- A.
requires use of a loader
- B.
allows larger programs, but requires more effort
- C.
is most used on large computers
- D.
is transparent to the user
Attempted by 785 students.
Show answer & explanation
Correct answer: B
Overlaying is a memory-management technique used on systems that lack (or predate) virtual memory: only the code and data a running process needs at a given moment are kept in main memory, while the rest stays on secondary storage and is swapped in only when required. The operating system does not do this swapping automatically — the programmer, or a linker-driven overlay manager, must divide the program into overlay segments and control when each segment is loaded and unloaded.
For this item, that dual nature is exactly what the correct completion captures: overlaying lets a program whose total size exceeds physical memory still execute, because at any moment only the overlay segments that are mutually exclusive in use need to share the same memory region — typically alongside a small permanently resident root segment — while the rest wait on secondary storage until called for. Achieving this needs deliberate design work: identifying which routines can safely share the same memory region and inserting the calls that trigger each swap. So overlaying "allows larger programs, but requires more effort" is the accurate characterization.
requires use of a loader — a loader participates in launching any program, overlaid or not; it is not the property that distinguishes overlaying from ordinary program execution.
is most used on large computers — the opposite is true: overlaying became necessary specifically on machines with small physical memory, to fit programs that would not otherwise run.
is transparent to the user — that describes fully OS-managed schemes such as demand paging, introduced later; here "user" means whoever writes and manages the program (not the end user running the finished application), and overlaying does not carry that same invisibility to that person, since it is that person who must lay out the segments and code the swap calls.
So overlaying is the technique that lets a program exceed physical memory size, at the cost of extra design effort from whoever writes it.
A video solution is available for this question — log in and enroll to watch it.
Explore the full course: Iocl Engineers Officers Grade A Paper 2