|
|
Subscribe / Log in / New account

Walleij: How the ARM32 kernel starts

Linus Walleij continues his exploration of the boot process for the 32-bit Arm kernel. "BAM! The MMU is on. The next instruction (which is incidentally an instruction cache flush) will be executed from virtual memory. We don’t notice anything at first, but we are executing in virtual memory. When we return by jumping to the address passed in r13, we enter __mmap_switched at the virtual memory address of this function, somewhere below PAGE_OFFSET (typically 0xC0nnnnnn). We can now facilitate absolute addressing: the kernel is executing as intended."

to post comments

Walleij: How the ARM32 kernel starts

Posted Aug 20, 2020 10:52 UTC (Thu) by mckoan (guest, #135718) [Link]

Excellent articles!
Thank you LWN and Linus Walleij


Copyright © 2020, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds