Virtual memory allows processes to be larger than physical memory by storing portions on disk. When a process accesses memory not in RAM, a page fault occurs and the OS brings the needed page into RAM, possibly writing another page out first. Hardware and software structures like page tables, TLBs, and policies for replacement, placement, loading, and cleaning optimize virtual memory performance.