Code: Select all
user-mode apps
^
kernel
^
kernel-mode apps
^
hardware
All kernel-mode apps are run by the kernel in machine language. User-mode apps, however, are run by the kernel like a virtual machine, in a specific high-level bytecode, which allows them only to communicate (directly) with the kernel. This also makes all user-mode apps completely machine-portable, without the need to compile from source when installing.
I looked up different types of kernels on Wikipedia, and found that there was no kernel-type like this. The closest was hybrid, which was still a bit different.
So, overall, what do you think? Any comments, suggestions, misunderstandings?