Lup,

Another great article!


One suggestion.

In section 10 "Swap the SATP Register"

You mention:

"Huh? Our Applications can meddle with the I/O Memory?

Nope they can’t, because the “U” User Permission is denied. Therefore we’re all safe and well protected!
"

I may have missed the reference, but this might be a place to introduce the idea that Kernel trampoline, eCalls, and so forth make use of kernel memory being mapped and available in all User address spaces so the Kernel's handling code does not have to immediately swap SATP to access its data structures.

I know this is a large topic on its own, but am important trick to learn.

Again, great article!  Thanks!!
-KenD

Reply via email to