Paged virtual memory:
Mostly all implementations of virtual memory divide the virtual address space of an application program into pages; a page is a block that contains contiguous virtual memory addresses. Pages are generally at least 4K bytes in size, and systems with big virtual address ranges or big amounts of real memory (for example: RAM) generally use larger page sizes.
Mostly all the implementations use page tables to translate the virtual addresses of application program into physical addresses (also referred to as "real addresses") used by the hardware to process instructions. Each entry in the page table have a mapping for a virtual page to either the real memory address at which the page is stored, or an pointer that the page is presently held in a disk file. (Although most of the system does, some systems cannot support use of a disk file for virtual memory.)
Systems can have 1 page table for the overall system or a distinct page table for each application. If there is only 1, different applications which are running at the one time share a single virtual address space, for example they use different parts of a single range of VA. Systems which are use multiple page tables provide multiple virtual address spaces - concurrent applications think they are utilizing the same range of VA, but their separate page tables redirect to different real addresses.