Thanks Ken! Yep you read my mind, I'll write about NuttX Apps in the next article:
(1) What's inside the simplest "Hello World" app (2) How NuttX Apps call NuttX Kernel with "ecall" (3) Bundling the NuttX Apps into the Initial RAM Disk (initrd) for Ox64 BL808 SBC. (We'll append the initrd to the NuttX Kernel for easier booting with U-Boot. It's kinda messy right now for Star64 JH7110, as you have discovered) Stay tuned :-) Lup On Mon, Nov 20, 2023 at 2:47 AM <ken.dic...@whidbey.com> wrote: > 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 >