It uses physical addresses. To use virtual addresses, the DMA unit would have to perform a virtual-to-physical address translation by running the virtual addresses though the MMU, which is located in the CPU. The point of DMA is to leave the CPU out of the data transfer, so DMA uses physical addresses.
Pure FIFO selects pages based on the order in which the pages arrived in primary store: the page that arrived earliest is the next page selected. FIFO doesn't consider page access history at all (second-chance FIFO does, but this question asked about pure FIFO).
NRU selects pages based on their access history: pages that haven't been accessed recently are selected next. NRU doesn't consider page arrival time at all.
No; each program gets its own virtual memory address space.
A particular program may be too large to fit in virtual memory, but this question asked about the number of programs, not the size of an individual program. There may be more programs than can fit on disk, but disk is not virtual memory. There may be more virtual memory address spaces than can fit in primary store, but primary store is not virtual memory.
With two-level page tables, a virtual memory address is divided into three parts. The middle part determines the size of the second-level page tables: if the middle part contains m bits, the second-level page tables have size 2m*s, where s is the size of each element in a second-level page table.
This page last modified on 20 November 2000.