Memory Configuration Name Origin Length Attributes *default* 0x0000000000000000 0xffffffffffffffff Linker script and memory map .text 0x00000000c0106000 0x6000 0x00000000c0106000 code = . 0x00000000c0106000 _code = . 0x00000000c0106000 __code = . *(.text) .text 0x00000000c0106000 0x384 ks.o 0x00000000c0106000 _start .text 0x00000000c0106384 0x523 kernel.o 0x00000000c0106384 _k_init 0x00000000c010665c _isr *fill* 0x00000000c01068a7 0x1 00 .text 0x00000000c01068a8 0x308 asmfuncs.o 0x00000000c01068c6 _read_cr3 0x00000000c01068ca _strcmp 0x00000000c01069d9 _puts 0x00000000c0106960 _memsetd 0x00000000c010698e _invlpg_ 0x00000000c01069f8 _putDecu 0x00000000c010691c _memcpyd 0x00000000c0106905 _memcpy 0x00000000c0106933 _memset 0x00000000c01068c2 _read_cr2 0x00000000c0106996 _writeCursorPosition 0x00000000c0106949 _memsetw 0x00000000c0106ac0 _putDec 0x00000000c01068f0 _strcpy 0x00000000c0106976 _strlen 0x00000000c01069bc _getCursorPosition 0x00000000c01068a8 _write_cr0 0x00000000c01068b7 _write_cr3 0x00000000c01068b3 _read_cr0 .text 0x00000000c0106bb0 0x69a keyboard.o 0x00000000c01070e4 _kbdGetKey 0x00000000c010717a _kbd_resetLEDs 0x00000000c0106bb0 _isr_keyboard 0x00000000c0107136 _kbdWaitKey *fill* 0x00000000c010724a 0x2 00 .text 0x00000000c010724c 0x665 kio.o 0x00000000c01077fc _kio_drawConsoleChar 0x00000000c01073b6 _putc 0x00000000c0107602 _kio_console_cls 0x00000000c01074f2 _putHex 0x00000000c010788a _kio_writeCursorPosition 0x00000000c010759e _kio_console_scroll 0x00000000c010765c _kio_drawConsole 0x00000000c0107880 _kio_getCursorPosition 0x00000000c010724c _kio_init 0x00000000c0107276 _printf 0x00000000c0107566 _kio_putBCD *fill* 0x00000000c01078b1 0x3 00 .text 0x00000000c01078b4 0x350 mm.o 0x00000000c01078b4 __Z7mm_initv 0x00000000c0107a96 __Z8mm_pfreej 0x00000000c0107a58 __Z9mm_pfreenjj 0x00000000c0107bf0 __Z14mm_getTotalMemv 0x00000000c0107ae0 __Z9mm_pallocv 0x00000000c0107b88 __Z10mm_freememv 0x00000000c0107bfa __Z15mm_getTotalMegsv .text 0x00000000c0107c04 0x201 mouse.o 0x00000000c0107c04 _mouse_init 0x00000000c0107cae _isr_mouse *fill* 0x00000000c0107e05 0x3 00 .text 0x00000000c0107e08 0x8f stdfont.o 0x00000000c0107e68 __Z17stdfont_getBitmapj 0x00000000c0107e08 __Z20stdfont_getFontWidthj 0x00000000c0107e38 __Z21stdfont_getFontHeightj *fill* 0x00000000c0107e97 0x1 00 .text 0x00000000c0107e98 0x669 video.o 0x00000000c0108378 __Z13video_psetp32ij 0x00000000c010818c __Z10video_vertiiij 0x00000000c0108394 __Z15video_psetpnullij 0x00000000c0108070 __Z11video_horiziiij 0x00000000c01083aa __Z15video_getHeightv 0x00000000c01083ca __Z20video_getPhysBasePtrv 0x00000000c0107e98 __Z10video_initv 0x00000000c0108244 __Z10video_rectiiiij 0x00000000c01083de __Z10video_lineiiiij 0x00000000c010839a __Z14video_getWidthv 0x00000000c01083ba __Z21video_getBitsPerPixelv 0x00000000c0108170 __Z11video_psetiij 0x00000000c01082e4 __Z13video_psetp16ij 0x00000000c010829c __Z11video_rectfiiiij 0x00000000c0108118 __Z10video_psetiij 0x00000000c010832a __Z13video_psetp24ij 0x00000000c0107f8a __Z16video_renderChariiiijij 0x00000000c01083d4 __Z10video_Modev *fill* 0x00000000c0108501 0x3 00 .text 0x00000000c0108504 0x7d5 vmm.o 0x00000000c0108aaa __Z21vmm_addHeapEntryBlockv 0x00000000c0108b6c __Z20vmm_getLastHeapEntryv 0x00000000c01088cc __Z21vmm_coalesceHeapEntryP9HeapEntry 0x00000000c0108c9e __Z22vmm_getHeapEntryByBasej 0x00000000c010881e __Z16vmm_getFreeChunkj 0x00000000c0108c54 __Z4freePv 0x00000000c0108996 __Z12vmm_moreCorej 0x00000000c01087aa __Z6mallocj 0x00000000c0108c1c __Z19vmm_heapEntriesLeftv 0x00000000c0108504 __Z8vmm_initv 0x00000000c0108b9c __Z25vmm_getFirstHoleHeapEntryj 0x00000000c01085ac __Z12vmm_heb_initP14HeapEntryBlock 0x00000000c0108a8e __Z17vmm_nextHeapEntryv 0x00000000c0108628 __Z8vmm_map1jj 0x00000000c0108700 __Z8vmm_mapnjjj 0x00000000c010877c __Z10vmm_unmapnjj 0x00000000c010873a __Z10vmm_unmap1j 0x00000000c0108be2 __Z27vmm_getFirstUnusedHeapEntryv *fill* 0x00000000c0108cd9 0x3 00 .text 0x00000000c0108cdc 0x269 rtc.o 0x00000000c0108d06 __Z13rtc_readMonthv 0x00000000c0108edc __Z11rtc_setHourh 0x00000000c0108cdc __Z11rtc_readDayv 0x00000000c0108e0c __Z12rtc_setMonthh 0x00000000c0108ea8 __Z13rtc_setMinuteh 0x00000000c0108dd8 __Z10rtc_setDayh 0x00000000c0108dae __Z12rtc_readHourv 0x00000000c0108d30 __Z12rtc_readYearv 0x00000000c0108d5a __Z14rtc_readSecondv 0x00000000c0108e40 __Z11rtc_setYearh 0x00000000c0108d84 __Z14rtc_readMinutev 0x00000000c0108e74 __Z13rtc_setSecondh *fill* 0x00000000c0108f45 0x3 00 .text 0x00000000c0108f48 0x121 pic.o 0x00000000c0108f48 __Z9pic_remapii *fill* 0x00000000c0109069 0x3 00 .text 0x00000000c010906c 0x15d cstring.o 0x00000000c0109094 __Z12string_splitPcc 0x00000000c010906c __Z6strcatPcPKc 0x00000000c01090f2 __Z14string_advancePc 0x00000000c010914e __Z5ucasePc 0x00000000c010910c __Z5rtrimPc 0x00000000c010918c __Z5lcasePc *fill* 0x00000000c01091c9 0x3 00 .text 0x00000000c01091cc 0xed9 string.o 0x00000000c01098da __ZN6stringC1ERKS_S1_ 0x00000000c01096ae __ZN6stringmIEPKc 0x00000000c010935c __ZN6stringC1EPKc 0x00000000c0109c54 __ZN6stringC2EcRKS_ 0x00000000c01099d4 __ZN6stringC1ERKS_PKc 0x00000000c010926c __ZN6stringC2ERKS_ 0x00000000c01093b0 __ZN6stringaSERKS_ 0x00000000c0109308 __ZN6stringC2EPKc 0x00000000c010a01a __ZNK6stringleEPKc 0x00000000c0109fd6 __ZNK6stringleERKS_ 0x00000000c01091cc __ZN6stringC2Ev 0x00000000c0109550 __ZN6stringpLEPKc 0x00000000c0109864 __ZN6stringC2ERKS_S1_ 0x00000000c0109d42 __ZN6stringixEj 0x00000000c0109b6c __ZN6stringC2ERKS_c 0x00000000c0109498 __ZNK6string4dataEv 0x00000000c0109be0 __ZN6stringC1ERKS_c 0x00000000c0109cb4 __ZN6stringC1EcRKS_ 0x00000000c0109f7e __ZNK6stringgtEPKc 0x00000000c0109d14 __ZNK6stringixEj 0x00000000c010924c __ZN6stringD1Ev 0x00000000c0109eda __ZNK6stringgtERKS_ 0x00000000c0109a58 __ZN6stringC2EPKcRKS_ 0x00000000c010960c __ZN6stringmIERKS_ 0x00000000c0109dd8 __ZNK6stringeqEPKc 0x00000000c010922c __ZN6stringD2Ev 0x00000000c0109e4a __ZNK6stringneERKS_ 0x00000000c01094a2 __ZNK6string4sizeEv 0x00000000c010a060 __ZNK6stringgeEPKc 0x00000000c0109950 __ZN6stringC2ERKS_PKc 0x00000000c0109ff8 __ZNK6stringgeERKS_ 0x00000000c01097f4 __ZN6stringmIEc 0x00000000c01092ba __ZN6stringC1ERKS_ 0x00000000c0109e8e __ZNK6stringltERKS_ 0x00000000c0109e6c __ZNK6stringneEPKc 0x00000000c0109ae2 __ZN6stringC1EPKcRKS_ 0x00000000c0109d70 __ZNK6stringeqERKS_ 0x00000000c0109f26 __ZNK6stringltEPKc 0x00000000c0109770 __ZN6stringpLEc 0x00000000c01094ae __ZN6stringpLERKS_ 0x00000000c0109420 __ZN6stringaSEPKc 0x00000000c01091fc __ZN6stringC1Ev *fill* 0x00000000c010a0a5 0x3 00 .text 0x00000000c010a0a8 0xe5 cmos.o 0x00000000c010a100 __Z11cmos_gethd0v 0x00000000c010a0a8 __Z11cmos_getfd0v 0x00000000c010a0d4 __Z11cmos_getfd1v 0x00000000c010a12c __Z11cmos_gethd1v *fill* 0x00000000c010a18d 0x3 00 .text 0x00000000c010a190 0x58 hos_defines.o 0x00000000c010a1bc __ZdlPv 0x00000000c010a1a6 __Znaj 0x00000000c010a190 __Znwj 0x00000000c010a1d2 __ZdaPv .text 0x00000000c010a1e8 0x3a vfs.o 0x00000000c010a1e8 __Z8vfs_initv *fill* 0x00000000c010a222 0x2 00 .text 0x00000000c010a224 0x20d devfs.o 0x00000000c010a224 __Z10devfs_init6string *fill* 0x00000000c010a431 0x3 00 .text 0x00000000c010a434 0x6e7 Device.o 0x00000000c010a72c __ZN6DeviceD2Ev 0x00000000c010a798 __ZN6DeviceD1Ev 0x00000000c010a4e4 __ZN6DeviceC2E6string 0x00000000c010a9e4 __ZN6DeviceaSERKS_ 0x00000000c010a678 __ZN6DeviceC1E6stringjjjjct 0x00000000c010a804 __ZN6DeviceC2ERKS_ 0x00000000c010a8f4 __ZN6DeviceC1ERKS_ 0x00000000c010a48c __ZN6DeviceC1Ev 0x00000000c010a434 __ZN6DeviceC2Ev 0x00000000c010a554 __ZN6DeviceC1E6string 0x00000000c010aae2 __ZN6Device7setLinkE6string 0x00000000c010a5c4 __ZN6DeviceC2E6stringjjjjct *fill* 0x00000000c010ab1b 0x1 00 .text 0x00000000c010ab1c 0x572 DeviceFolder.o 0x00000000c010b078 __ZN12DeviceFolder4sizeEv 0x00000000c010ad2c __ZN12DeviceFolderC2Ev 0x00000000c010ad42 __ZN12DeviceFolderC1Ev 0x00000000c010ae74 __ZN12DeviceFolder5mkdirE6stringjjt 0x00000000c010afd2 __ZN12DeviceFolder5mknodE6stringjjjjct 0x00000000c010ad58 __ZN12DeviceFolder9addDeviceE6Device 0x00000000c010af10 __ZN12DeviceFolder6mklinkE6stringjjS0_ 0x00000000c010ab1c __ZN12DeviceFolder2lsEv 0x00000000c010c000 . = ALIGN (0x1000) *fill* 0x00000000c010b08e 0x80b237400000f72 00 .gnu.linkonce.t._ZN10LinkedListI6DeviceE5beginEv 0x00000000c010c000 0x27 .gnu.linkonce.t._ZN10LinkedListI6DeviceE5beginEv 0x00000000c010c000 0x27 DeviceFolder.o 0x00000000c010c000 __ZN10LinkedListI6DeviceE5beginEv .gnu.linkonce.t._ZN10LinkedListI6DeviceE3endEv 0x00000000c010c028 0x28 .gnu.linkonce.t._ZN10LinkedListI6DeviceE3endEv 0x00000000c010c028 0x28 DeviceFolder.o 0x00000000c010c028 __ZN10LinkedListI6DeviceE3endEv .gnu.linkonce.t._ZNK10LinkedListI6DeviceE8iteratorneERKS2_ 0x00000000c010c050 0x17 .gnu.linkonce.t._ZNK10LinkedListI6DeviceE8iteratorneERKS2_ 0x00000000c010c050 0x17 DeviceFolder.o 0x00000000c010c050 __ZNK10LinkedListI6DeviceE8iteratorneERKS2_ .gnu.linkonce.t._ZN10LinkedListI6DeviceE8iteratordeEv 0x00000000c010c068 0xa .gnu.linkonce.t._ZN10LinkedListI6DeviceE8iteratordeEv 0x00000000c010c068 0xa DeviceFolder.o 0x00000000c010c068 __ZN10LinkedListI6DeviceE8iteratordeEv .gnu.linkonce.t._ZN10LinkedListI6DeviceE8iteratorppEi 0x00000000c010c072 0x12 .gnu.linkonce.t._ZN10LinkedListI6DeviceE8iteratorppEi 0x00000000c010c072 0x12 DeviceFolder.o 0x00000000c010c072 __ZN10LinkedListI6DeviceE8iteratorppEi .gnu.linkonce.t._ZN10LinkedListI6DeviceEC1Ev 0x00000000c010c084 0x43 .gnu.linkonce.t._ZN10LinkedListI6DeviceEC1Ev 0x00000000c010c084 0x43 DeviceFolder.o 0x00000000c010c084 __ZN10LinkedListI6DeviceEC1Ev .gnu.linkonce.t._ZN10LinkedListI6DeviceE6insertEiS0_ 0x00000000c010c0c8 0x101 .gnu.linkonce.t._ZN10LinkedListI6DeviceE6insertEiS0_ 0x00000000c010c0c8 0x101 DeviceFolder.o 0x00000000c010c0c8 __ZN10LinkedListI6DeviceE6insertEiS0_ .gnu.linkonce.t._ZN10LinkedListI6DeviceE4sizeEv 0x00000000c010c1ca 0xb .gnu.linkonce.t._ZN10LinkedListI6DeviceE4sizeEv 0x00000000c010c1ca 0xb DeviceFolder.o 0x00000000c010c1ca __ZN10LinkedListI6DeviceE4sizeEv .gnu.linkonce.t._ZN10LinkedListI6DeviceE8iteratorC1EPNS1_10LinkedNodeE 0x00000000c010c1d6 0xd .gnu.linkonce.t._ZN10LinkedListI6DeviceE8iteratorC1EPNS1_10LinkedNodeE 0x00000000c010c1d6 0xd DeviceFolder.o 0x00000000c010c1d6 __ZN10LinkedListI6DeviceE8iteratorC1EPNS1_10LinkedNodeE .gnu.linkonce.t._ZN10LinkedListI6DeviceE10LinkedNodeC1Ev 0x00000000c010c1e4 0x2a .gnu.linkonce.t._ZN10LinkedListI6DeviceE10LinkedNodeC1Ev 0x00000000c010c1e4 0x2a DeviceFolder.o 0x00000000c010c1e4 __ZN10LinkedListI6DeviceE10LinkedNodeC1Ev .gnu.linkonce.t._ZN10LinkedListI6DeviceE9push_backES0_ 0x00000000c010c20e 0x82 .gnu.linkonce.t._ZN10LinkedListI6DeviceE9push_backES0_ 0x00000000c010c20e 0x82 DeviceFolder.o 0x00000000c010c20e __ZN10LinkedListI6DeviceE9push_backES0_ .gnu.linkonce.t._ZN10LinkedListI6DeviceE10LinkedNodeC1ES0_ 0x00000000c010c290 0x40 .gnu.linkonce.t._ZN10LinkedListI6DeviceE10LinkedNodeC1ES0_ 0x00000000c010c290 0x40 DeviceFolder.o 0x00000000c010c290 __ZN10LinkedListI6DeviceE10LinkedNodeC1ES0_ .data 0x00000000c010c2d0 0xd30 0x00000000c010c2d0 data = . 0x00000000c010c2d0 _data = . 0x00000000c010c2d0 __data = . *(.data) .data 0x00000000c010c2d0 0x18 stdfont.o 0x00000000c010c2d0 _fonts .data 0x00000000c010c2e8 0x10 video.o 0x00000000c010c2e8 _vid_ptr16 0x00000000c010c2f4 _video_psetp 0x00000000c010c2f0 _vid_ptr32 0x00000000c010c2ec _vid_ptr24 .data 0x00000000c010c2f8 0x4 vmm.o 0x00000000c010c2f8 _firstHeapEntry 0x00000000c010d000 . = ALIGN (0x1000) *fill* 0x00000000c010c2fc 0x812a70800000d04 00 .rodata 0x00000000c010d000 0x2000 0x00000000c010d000 rodata = . 0x00000000c010d000 _rodata = . 0x00000000c010d000 __rodata = . *(.rodata) .rodata 0x00000000c010d000 0x141 kernel.o *fill* 0x00000000c010d141 0x1f 00 .rodata 0x00000000c010d160 0x141 keyboard.o *fill* 0x00000000c010d2a1 0x3 00 .rodata 0x00000000c010d2a4 0x1e4 kio.o *fill* 0x00000000c010d488 0x18 00 .rodata 0x00000000c010d4a0 0x1200 stdfont.o .rodata 0x00000000c010e6a0 0x5 vfs.o *fill* 0x00000000c010e6a5 0x1b 00 .rodata 0x00000000c010e6c0 0xad devfs.o .rodata 0x00000000c010e76d 0x33 DeviceFolder.o 0x00000000c010f000 . = ALIGN (0x1000) *fill* 0x00000000c010e7a0 0x812a77c00000860 00 .bss 0x00000000c010f000 0x22000 0x00000000c010f000 bss = . 0x00000000c010f000 _bss = . 0x00000000c010f000 __bss = . *(.bss) .bss 0x00000000c010f000 0x4 kernel.o 0x00000000c010f000 _timer *fill* 0x00000000c010f004 0x4 00 *fill* 0x00000000c010f008 0x18 00 .bss 0x00000000c010f020 0x12b keyboard.o 0x00000000c010f040 _kbdBuffer 0x00000000c010f148 _kbdExt 0x00000000c010f021 _kbdAscii 0x00000000c010f149 _kbdExt2 0x00000000c010f14a _ackReason 0x00000000c010f140 _kbdBufferStart 0x00000000c010f022 _kbdScan 0x00000000c010f144 _kbdBufferLen 0x00000000c010f020 _kbdFlags *fill* 0x00000000c010f14b 0x15 00 .bss 0x00000000c010f160 0xfc0 kio.o 0x00000000c010f180 _console_memory 0x00000000c010f160 _graphical 0x00000000c010f164 _cursorPosition .bss 0x00000000c0110120 0x20020 mm.o 0x00000000c0110124 _mm_megabytes 0x00000000c0110140 _page_bitmap 0x00000000c0110120 _mm_totalmem .bss 0x00000000c0130140 0x1c mouse.o 0x00000000c0130144 _mouse_y 0x00000000c0130148 _mouse_bytesRead 0x00000000c0130140 _mouse_x 0x00000000c013014c _mouse_inbuffer *fill* 0x00000000c013015c 0x4 00 .bss 0x00000000c0130160 0x104 video.o 0x00000000c0130160 _video_mode 0x00000000c0130260 _videoMode .bss 0x00000000c0130264 0x4 devfs.o 0x00000000c0130264 _dev 0x00000000c0131000 . = ALIGN (0x1000) *fill* 0x00000000c0130268 0x812a8e000000d98 00 0x00000000c0131000 end = . 0x00000000c0131000 _end = . 0x00000000c0131000 __end = . LOAD ks.o LOAD kernel.o LOAD asmfuncs.o LOAD fdc.o LOAD keyboard.o LOAD kio.o LOAD mm.o LOAD mouse.o LOAD stdfont.o LOAD video.o LOAD vmm.o LOAD rtc.o LOAD pic.o LOAD io.o LOAD cstring.o LOAD string.o LOAD cmos.o LOAD hos_defines.o LOAD vfs.o LOAD devfs.o LOAD Device.o LOAD DeviceFolder.o OUTPUT(kernel.bin binary) .note.GNU-stack 0x0000000000000000 0x0 .comment 0x0000000000000000 0x3fc .comment 0x0000000000000000 0x33 kernel.o .comment 0x0000000000000033 0x33 fdc.o .comment 0x0000000000000066 0x33 keyboard.o .comment 0x0000000000000099 0x33 kio.o .comment 0x00000000000000cc 0x33 mm.o .comment 0x00000000000000ff 0x33 mouse.o .comment 0x0000000000000132 0x33 stdfont.o .comment 0x0000000000000165 0x33 video.o .comment 0x0000000000000198 0x33 vmm.o .comment 0x00000000000001cb 0x33 rtc.o .comment 0x00000000000001fe 0x33 pic.o .comment 0x0000000000000231 0x33 io.o .comment 0x0000000000000264 0x33 cstring.o .comment 0x0000000000000297 0x33 string.o .comment 0x00000000000002ca 0x33 cmos.o .comment 0x00000000000002fd 0x33 hos_defines.o .comment 0x0000000000000330 0x33 vfs.o .comment 0x0000000000000363 0x33 devfs.o .comment 0x0000000000000396 0x33 Device.o .comment 0x00000000000003c9 0x33 DeviceFolder.o