Assume the page size is 100 bytes for this example. We divide the program into pages and memory is already divided into page frames. Suppose that free list of frames (i.e., physical pages) is (0,1,2,4,6,7,8). We can use the first five to hold our program:
Virtual Program Physical Memory page page frame contents +--------+ +--------+ 0 | page 0 | 0 | page 1 | +--------+ +--------+ 1 | page 1 | 1 | page 0 | +--------+ +--------+ 2 | page 2 | 2 | page 2 | +--------+ +--------+ 3 | page 3 | 3 | | +--------+ +--------+ 4 | page 4 | 4 | page 3 | +--------+ +--------+ 5 | | +--------+ 6 | page 4 | +--------+ 7 | | +--------+ 8 | | +--------+