'Operating system interrupt handler and CPU in virtual memory access

Which of these activities are performed by the CPU while execution the instructions and which by the Operating System (OS) interrupt handler that manages page faults? I am not sure about the distinction between the two's functions in virtual memory access.

  1. Translate virtual memory address to a physical memory (DRAM) address
  2. Mark a page as recently referenced
  3. If a page is not in DRAM, decide which existing page in DRAM needs to be removed to make room for it
  4. Load a page from disk into DRAM
  5. Update the page table to indicate that the loaded page is now in DRAM
  6. If the program instruction corresponds to a store instruction, indicate in the page table entry that the page is dirty


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source