ENTRY (_start) SECTIONS { . = 0x1000; .early.text ALIGN (4K) : { *(.early.text) } .early.rodata ALIGN (4K) : { *(.early.rodata) } .early.data ALIGN (4K) : { *(.early.data) } .early.bss ALIGN (4K) : { *(.early.bss) } . += 0xC00000; .text ALIGN (4K) : AT (ADDR (.text) - 0xC00000) { *(.text) } .rodata ALIGN (4K) : AT (ADDR (.rodata) - 0xC00000) { *(.rodata) } .data ALIGN (4K) : AT (ADDR (.data) - 0xC00000) { *(.data) } .bss ALIGN (4K) : AT (ADDR (.bss) - 0xC00000) { *(COMMON) *(.bss) } _kernel_end_page = ALIGN(4K); }