blob: 86a77ed2a1fc598192573764a7c0c24bfe687f9d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
//! Kagami State
const types = @import("types/types.zig");
const Kagami = types.Kagami;
var kernel_kagami: Kagami = .{
.pml4_physical = 0,
.reference_count = 1,
.resident_pages = 0,
.wired_pages = 0,
.table_pages = 0,
.lock = false,
};
var current_kagami: *Kagami = &kernel_kagami;
var initialized: bool = false;
pub fn get_kernel_kagami() *Kagami {
return &kernel_kagami;
}
pub fn get_current_kagami() *Kagami {
return current_kagami;
}
pub fn set_current_kagami(kagami: *Kagami) void {
current_kagami = kagami;
}
pub fn set_kernel_pml4(pml4_physical: u64) void {
kernel_kagami.pml4_physical = pml4_physical;
}
pub fn is_initialized() bool {
return initialized;
}
pub fn set_initialized() void {
initialized = true;
}
|