Microkernel thing OS experiment (Zig ⚡)
1OUTPUT_FORMAT(elf64-x86-64)
2ENTRY(_start)
3
4PHDRS {
5 limine_reqs PT_LOAD;
6 text PT_LOAD;
7 rodata PT_LOAD;
8 data PT_LOAD;
9 dynamic PT_DYNAMIC;
10}
11
12SECTIONS {
13 . = 0xffffffff80000000;
14
15 .limine_reqs : {
16 KEEP(*(.limine_reqs_start))
17 KEEP(*(.limine_reqs))
18 KEEP(*(.limine_reqs_end))
19 } : limine_reqs
20
21 . = ALIGN(CONSTANT(MAXPAGESIZE));
22
23 .text : {
24 *(.text .text.*)
25 } :text
26
27 . = ALIGN(CONSTANT(MAXPAGESIZE));
28
29 .rodata : {
30 *(.rodata .rodata.*)
31 } :rodata
32
33 . = ALIGN(CONSTANT(MAXPAGESIZE));
34
35 .data : {
36 *(.data .data.*)
37 } :data
38
39 .dynamic : {
40 *(.dynamic)
41 } :data :dynamic
42
43 .bss : {
44 *(.bss .bss.*)
45 *(COMMON)
46 } :data
47
48 /DISCARD/ : {
49 *(.eh_frame*)
50 *(.note .note.*)
51 }
52}