Which of the following statement(s) is/are correct with respect to virtual memory?
Statement I: Address translation is performed for every logical address used during the execution of a program.
Statement II: A program can execute only when all of its components are loaded in memory.
Pick an option to check yourself, or open the answer below.
Show answer & explanation
Correct answer: C. Statement I is correct but Statement II is incorrect
Explanation
Statement I is correct: in a virtual memory system, every logical (virtual) address the CPU generates must pass through the MMU for translation to a physical address, on every single memory reference, not just occasionally. Statement II is incorrect — the whole point of virtual memory and demand paging is that a program can begin and continue executing with only the pages it currently needs resident in memory, bringing the rest in on demand, so it need not be fully loaded beforehand. Therefore Statement I is correct but Statement II is incorrect, option (iii).More Programming Languages and Computer Graphics questions
- Which of the statement is not true in regards to virtual memory? (i) The main objective for using virtual memory is to increase the effecti…
- For the following page reference string: 4, 3, 2, 1, 4, 3, 5, 4, 3, 2, 1, 5 — the number of page faults that occur using the Least Recently…
- Given memory access time as p nanoseconds and an additional q nanoseconds for handling a page fault, what is the effective memory access ti…
- Consider a machine with 16 GB of main memory and a 32-bit virtual address space, with page size 4 KB (frame size equals page size). If a pr…
- (Same machine as above: 16 GB main memory, 32-bit virtual address space, 4 KB page size.) What is the size of the page table needed to hand…
- (Same machine as above: 16 GB main memory, 32-bit virtual address space, 4 KB page size.) What is the minimum number of bits needed for the…