37 lines
627 B
Plaintext
37 lines
627 B
Plaintext
/* Guidance from http://wiki.osdev.org/Bare_Bones */
|
|
ENTRY(_start)
|
|
|
|
KERNEL_OFFSET = 0xFFFFFF8000000000;
|
|
KERNEL_START = 0x100000;
|
|
|
|
SECTIONS
|
|
{
|
|
. = KERNEL_START + KERNEL_OFFSET;
|
|
kernel_start = .;
|
|
|
|
.text : AT(ADDR(.text) - KERNEL_OFFSET)
|
|
{
|
|
*(.multiboot) /* Multiboot header must be in first 4k of elf */
|
|
*(.text)
|
|
. = ALIGN(4096);
|
|
}
|
|
|
|
.rodata BLOCK(4K) :AT(ADDR(.rodata) - KERNEL_OFFSET)
|
|
{
|
|
*(.rodata*)
|
|
}
|
|
|
|
.data BLOCK(4K) :AT(ADDR(.data) - KERNEL_OFFSET)
|
|
{
|
|
*(.data)
|
|
}
|
|
|
|
.bss BLOCK(4K) :AT(ADDR(.bss) - KERNEL_OFFSET)
|
|
{
|
|
*(.COMMON)
|
|
*(.bss)
|
|
}
|
|
. = ALIGN(4096);
|
|
kernel_end = .;
|
|
}
|