-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathkernel.lds
More file actions
69 lines (55 loc) · 926 Bytes
/
kernel.lds
File metadata and controls
69 lines (55 loc) · 926 Bytes
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
* ld directives the for kernel
*/
FORCE_COMMON_ALLOCATION
SECTIONS {
/* The kernel starts at 1M */
. = 0x100000;
_start = .;
.text : {
*(.text)
_etext = .;
}
.data : {
__CTOR_LIST__ = .;
LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
*(.ctors)
LONG(0)
__CTOR_END__ = .;
__DTOR_LIST__ = .;
LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
*(.dtors)
LONG(0)
__DTOR_END__ = .;
*(.fini)
*(.anno)
*(.rodata)
*(.rodata.str1.1)
*(.rodata.str1.4)
*(.rodata.str1.32)
*(__ex_table)
*(.rodata.cst8)
*(.data)
task_dump_screen = .;
*(.task_dump_screen)
_edata = .;
}
.bss : {
__bss_start = .;
*(.bss)
*(COMMON)
__bss_end = .;
}
_end = .;
/DISCARD/ : {
*(.comment)
}
/* The memory map */
idt = 0x1000;
gdt = 0x10000;
tss = 0x20000;
/* Beginning of kernel memory heap */
mem_heap = _end;
/* End of kernel memory heap */
mem_heap_end = 0x1000000;
}