Opal was an operating system research project at the University of Washington in the mid-1990s that had a single, 64-bit address space but also had memory protection between processes. The single address space avoided TLB flushes during context switches, as you point out, and made shared memory RPC much easier (because pointers could be passed between processes because virtual addresses were the safe everywhere).<p>I recall some discussion about leaking virtual addresses as an optimization to avoid needing to manage or GC large page tables. This was the mid-1990s so a 64-bit address space was more than anyone could possibly need. ;)<p><a href="http:&#x2F;&#x2F;homes.cs.washington.edu&#x2F;~levy&#x2F;opal&#x2F;opal.html" rel="nofollow">http:&#x2F;&#x2F;homes.cs.washington.edu&#x2F;~levy&#x2F;opal&#x2F;opal.html</a>