twizzler-operating-system / twizzler

The Twizzler Operating System
BSD 3-Clause "New" or "Revised" License
66 stars 13 forks source link

Implement initialization of the init program for aarch64 #135

Closed PandaZ3D closed 1 year ago

PandaZ3D commented 1 year ago

This PR implements some of the arch-specific functionality described by https://github.com/twizzler-operating-system/twizzler/blob/328649966ea6d907b72c5238321ca32fd6cbe418/src/kernel/src/thread.rs#L568

We implemented page fault handling for user pages while in the kernel so that we can initalize the memory context used by the init program. We also changed the mapping required by the text segment (initially read-only) to be writable, and the remove this permission later. The execution gets to jump_to_user which will be implemented in a future patch.

Summary