SpaceJMP: Programming with Multiple Virtual Address Spaces
The interaction of architecture and operating system design