Virtual memory management in multi-processor Mach OS allows processes to access more memory than is physically installed by using virtual addresses. The Mach kernel provides basic services like tasks, threads, messages, and ports to enable parallel and distributed applications. Tasks have their own virtual address spaces that are divided into pages which are allocated to physical frames. The virtual memory system provides protection at the page level by using protection codes in page table entries to control read, write, and execute permissions.