mirror of
https://github.com/XunilGroup/XunilOS.git
synced 2026-06-02 13:44:25 +02:00
Patched everything for aarch64, aside from scheduler, add more linker
points to aarch64 ld, add aarch64 heap, init, page tables and usermode, make hhdm_offset a global atomic, aarch64 uses semihosting for output, add generic PageTable type, add a function that creates and maps pages, use allow to remove warnings, add a bufwriter so kernel panic always works
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
use crate::task::scheduler::{SCHEDULER, current_pid};
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
#[repr(C)]
|
||||
#[derive(Clone, Copy)]
|
||||
pub struct UserContext {
|
||||
@@ -22,6 +23,11 @@ pub struct UserContext {
|
||||
pub rsp: u64, // user rsp
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "aarch64")]
|
||||
#[repr(C)]
|
||||
#[derive(Clone, Copy)]
|
||||
pub struct UserContext {}
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
pub extern "C" fn ctx_save(regs: *const UserContext) {
|
||||
if let Some(pid) = current_pid() {
|
||||
|
||||
Reference in New Issue
Block a user