26.6. Nested virtual machines
The designs of ordinary kernel-based systems, microkernels and library extensible systems each provide different positions at which to draw the boundary between kernel-mode execution and user-mode execution. One feature that all of these systems have in common is the use of a dual-mode environment in which the system is either executing part of the kernel, or it is executing a user-mode process. This scheme has several advantages.
Dual-mode execution enjoys almost universal support from modern microprocessors, for example through specialized instructions for implementing system call and return operations.
Exposing each application as a separate entity directly to the operating system means that only a single level ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access