diff options
Diffstat (limited to 'Source/Kernel/Map.txt')
-rw-r--r-- | Source/Kernel/Map.txt | 1473 |
1 files changed, 835 insertions, 638 deletions
diff --git a/Source/Kernel/Map.txt b/Source/Kernel/Map.txt index adb112e..a615e1d 100644 --- a/Source/Kernel/Map.txt +++ b/Source/Kernel/Map.txt @@ -33,6 +33,20 @@ Discarded input sections .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .text._ZnwjPv 0x00000000 0x0 DeviceManager/Dev.ns.o + .group 0x00000000 0x0 DeviceManager/Kbd.ns.o + .group 0x00000000 0x0 DeviceManager/Kbd.ns.o + .group 0x00000000 0x0 DeviceManager/Kbd.ns.o + .group 0x00000000 0x0 DeviceManager/Kbd.ns.o + .group 0x00000000 0x0 DeviceManager/Kbd.ns.o + .group 0x00000000 0x0 DeviceManager/Kbd.ns.o + .group 0x00000000 0x0 DeviceManager/Kbd.ns.o + .text._ZdaPv 0x00000000 0x0 DeviceManager/Kbd.ns.o + .text._ZN6VectorIP6DeviceED1Ev + 0x00000000 0x0 DeviceManager/Kbd.ns.o + .text._ZN6VectorIP6DeviceE4sizeEv + 0x00000000 0x0 DeviceManager/Kbd.ns.o + .text._ZN6VectorIP6DeviceEixEj + 0x00000000 0x0 DeviceManager/Kbd.ns.o .group 0x00000000 0x0 TaskManager/Process.class.o .group 0x00000000 0x0 TaskManager/Process.class.o .group 0x00000000 0x0 TaskManager/Process.class.o @@ -93,7 +107,22 @@ Discarded input sections .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o .text._ZdaPv 0x00000000 0x0 VTManager/VirtualTerminal.class.o + .text._ZN5wcharaSEj + 0x00000000 0x0 VTManager/VirtualTerminal.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .group 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .text._ZnwjPv 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .text._ZN3Kbd10keypress_tC1Ev + 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o @@ -119,6 +148,8 @@ Discarded input sections .text._ZdaPv 0x00000000 0x0 Library/String.class.o .text._ZN5wcharaSEj 0x00000000 0x0 Library/String.class.o + .text._ZN5wcharcvjEv + 0x00000000 0x0 Library/String.class.o .group 0x00000000 0x0 Library/wchar.class.o .text._ZN5wchareqEj 0x00000000 0x0 Library/wchar.class.o @@ -137,6 +168,18 @@ Discarded input sections .group 0x00000000 0x0 Devices/Display/VGATextOutput.class.o .text._ZN6Device9handleIRQE11registers_ti 0x00000000 0x0 Devices/Display/VGATextOutput.class.o + .group 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .group 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .group 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .group 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .group 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .group 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .text._ZN6Device9handleIRQE11registers_ti + 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .text._ZN6DeviceC2Ev + 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .rodata._ZTV6Device + 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o .group 0x00000000 0x0 Devices/Timer.class.o .group 0x00000000 0x0 Devices/Timer.class.o .group 0x00000000 0x0 Devices/Timer.class.o @@ -162,815 +205,953 @@ Linker script and memory map .setup 0x00100000 0x1e Core/loader.wtf.o 0xc010001e . = (. + 0xc0000000) -.text 0xc0100020 0x7d61 load address 0x00100020 +.text 0xc0100020 0xc531 load address 0x00100020 *(.text) - .text 0xc0100020 0x917 Core/kmain.wtf.o - 0xc0100020 kmain - *fill* 0xc0100937 0x9 00 - .text 0xc0100940 0x75 Core/loader.wtf.o - 0xc010094c loader - *fill* 0xc01009b5 0x3 00 - .text 0xc01009b8 0xf Core/cppsupport.wtf.o - 0xc01009b8 __cxa_pure_virtual - 0xc01009bd __cxa_atexit - *fill* 0xc01009c7 0x1 00 - .text 0xc01009c8 0x560 Core/Sys.ns.o - 0xc0100a22 Sys::bochs_output(char*, char*, unsigned int) - 0xc01009e6 Sys::inb(unsigned short) - 0xc0100a03 Sys::inw(unsigned short) - 0xc0100ba6 Sys::panic(char*, char*, unsigned int) - 0xc0100f0c Sys::reboot() - 0xc01009c8 Sys::outb(unsigned short, unsigned char) - 0xc0100b1c Sys::bochs_output_hex(unsigned int) - 0xc0100d59 Sys::panic_assert(char*, unsigned int, char*) - .text 0xc0100f28 0xd5 Core/CMem.ns.o - 0xc0100f5e CMem::memset(unsigned char*, unsigned char, int) - 0xc0100f95 CMem::memsetw(unsigned short*, unsigned short, int) - 0xc0100fd0 CMem::strlen(char const*) - 0xc0100f28 CMem::memcpy(unsigned char*, unsigned char const*, int) - *fill* 0xc0100ffd 0x3 00 - .text 0xc0101000 0x8b4 MemoryManager/Mem.ns.o - 0xc01014b3 Mem::contractHeap() - 0xc01010ba Mem::insertIntoHeapIndex(Mem::heap_header_t*) - 0xc010125e Mem::removeFromHeapIndex(Mem::heap_header_t*) - 0xc0101215 Mem::removeFromHeapIndex(unsigned int) - 0xc0101285 Mem::createHeap() - 0xc0101393 Mem::expandHeap(unsigned int) - 0xc0101752 Mem::kfree(void*) - 0xc01015c3 Mem::kalloc(unsigned int, bool) - 0xc01011d3 Mem::heapIndexFindEntry(Mem::heap_header_t*) - 0xc0101000 Mem::kallocInternal(unsigned int, bool) - .text 0xc01018b4 0x35c MemoryManager/PhysMem.ns.o - 0xc0101c06 PhysMem::total() - 0xc0101a56 PhysMem::removeTemporaryPages() - 0xc0101b91 PhysMem::freeFrame(page_t*) - 0xc0101be0 PhysMem::free() - 0xc0101aaa PhysMem::allocFrame(page_t*, bool, bool) - 0xc01018b4 PhysMem::initPaging(unsigned int) - .text 0xc0101c10 0x1d MemoryManager/GDT.wtf.o - 0xc0101c10 gdt_flush - *fill* 0xc0101c2d 0x3 00 - .text 0xc0101c30 0x193 MemoryManager/GDT.ns.o - 0xc0101cbf GDT::init() - 0xc0101c30 GDT::setGate(int, unsigned int, unsigned int, unsigned char, unsigned char) - *fill* 0xc0101dc3 0x1 00 - .text 0xc0101dc4 0x8f1 MemoryManager/PageDirectory.class.o - 0xc0102504 PageDirectory::getPage(unsigned int, bool) - 0xc0101e88 PageDirectory::PageDirectory(PageDirectory*) - 0xc0101dc4 PageDirectory::PageDirectory() - 0xc010247e PageDirectory::~PageDirectory() - 0xc01023f8 PageDirectory::~PageDirectory() - 0xc0102654 PageDirectory::freeFrame(unsigned int) - 0xc0102140 PageDirectory::PageDirectory(PageDirectory*) - 0xc0101e26 PageDirectory::PageDirectory() - 0xc0102602 PageDirectory::allocFrame(unsigned int, bool, bool) - 0xc010268e PageDirectory::switchTo() - *fill* 0xc01026b5 0x3 00 - .text 0xc01026b8 0x239 MemoryManager/PageAlloc.ns.o - 0xc01028d5 PageAlloc::free(void*) - 0xc010270c PageAlloc::alloc(unsigned int*) - 0xc01026b8 PageAlloc::init() - *fill* 0xc01028f1 0x3 00 - .text 0xc01028f4 0x161 DeviceManager/Disp.ns.o - 0xc01028fe Disp::textRows() - 0xc01029e1 Disp::clear() - 0xc01028f4 Disp::textCols() - 0xc01029ff Disp::setDisplay(Display*) - 0xc0102980 Disp::moveCursor(unsigned short, unsigned short) - 0xc0102908 Disp::putChar(unsigned short, unsigned short, wchar, unsigned char) - *fill* 0xc0102a55 0x3 00 - .text 0xc0102a58 0x37d DeviceManager/Dev.ns.o - 0xc0102b09 Dev::registerDevice(Device*) - 0xc0102bdd Dev::findDevice(String) - 0xc0102b2f Dev::unregisterDevice(Device*) - 0xc0102bb1 Dev::requestIRQ(Device*, int) - 0xc0102a58 Dev::handleIRQ(registers_t, int) - *fill* 0xc0102dd5 0x3 00 - .text 0xc0102dd8 0x37 DeviceManager/Time.ns.o - 0xc0102dd8 Time::setTimer(Timer*) - 0xc0102dfa Time::time() - 0xc0102de5 Time::uptime() - *fill* 0xc0102e0f 0x1 00 - .text 0xc0102e10 0x4d5 TaskManager/Process.class.o - 0xc0103186 Process::exit() - 0xc0102e58 Process::createKernel(String) - 0xc0102e10 Process::Process() - 0xc0102f36 Process::Process(String, unsigned int) - 0xc01030fe Process::stackAlloc() - 0xc010320c Process::threadFinishes(Thread*, unsigned int) - 0xc01030b0 Process::~Process() - 0xc0102e34 Process::Process() - 0xc0103062 Process::~Process() - 0xc0102fcc Process::Process(String, unsigned int) - 0xc01031e4 Process::registerThread(Thread*) - 0xc01032da Process::getPagedir() - *fill* 0xc01032e5 0x3 00 - .text 0xc01032e8 0x3eb TaskManager/Thread.class.o - 0xc010343c Thread::Thread(Process*, unsigned int (*)()) - 0xc010330a Thread::Thread() - 0xc0103514 Thread::setup(unsigned int (*)(), unsigned int) - 0xc01034bc Thread::~Thread() - 0xc0103310 Thread::Thread(unsigned int (*)(), bool) - 0xc0103624 Thread::sleep(unsigned int) - 0xc0103304 Thread::Thread() - 0xc0103648 Thread::waitIRQ(unsigned char) - 0xc01033a6 Thread::Thread(unsigned int (*)(), bool) - 0xc01035d6 Thread::setState(unsigned int, unsigned int, unsigned int) - 0xc01035f6 Thread::getEsp() - 0xc0103602 Thread::getEbp() - 0xc010361a Thread::getProcess() - 0xc010360e Thread::getEip() - 0xc0103590 Thread::finish(unsigned int) - 0xc010367c Thread::runnable() - 0xc01034e8 Thread::~Thread() - 0xc01035b4 Thread::run(unsigned int (*)()) - 0xc010347c Thread::Thread(Process*, unsigned int (*)()) - 0xc01032e8 runThread(Thread*, unsigned int (*)()) - *fill* 0xc01036d3 0x1 00 - .text 0xc01036d4 0x565 TaskManager/Task.ns.o - 0xc010393c Task::IRQwakeup(unsigned char) - 0xc010391f Task::triggerSwitch() - 0xc0103a46 Task::getKernelProcess() - 0xc0103b0c Task::registerProcess(Process*) - 0xc0103926 Task::nextPid() - 0xc01036d4 Task::initialize(String) - 0xc0103b32 Task::unregisterProcess(Process*) - 0xc0103a8a Task::unregisterThread(Thread*) - 0xc0103a64 Task::registerThread(Thread*) - 0xc010377a Task::nextThread() - 0xc01039b8 Task::allocKernelPageTable(unsigned int, page_table_t*, unsigned int) - 0xc010382f Task::doSwitch() - *fill* 0xc0103c39 0x7 00 - .text 0xc0103c40 0x48 TaskManager/Task.wtf.o - 0xc0103c40 read_eip - 0xc0103c43 idle_task - 0xc0103c4a copy_page_physical - .text 0xc0103c88 0xa5a VTManager/VirtualTerminal.class.o - 0xc0103fec VirtualTerminal::map(int, int) - 0xc010430a VirtualTerminal::put(wchar, bool) - 0xc0104066 VirtualTerminal::unmap() - 0xc01042d2 VirtualTerminal::setCursorLine(unsigned int) - 0xc0103e58 VirtualTerminal::setColor(unsigned char, unsigned char) - 0xc0103df0 VirtualTerminal::~VirtualTerminal() - 0xc01042ee VirtualTerminal::setCursorCol(unsigned int) - 0xc0103d3c VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) - 0xc0104270 VirtualTerminal::updateCursor() - 0xc01044e0 VirtualTerminal::writeDec(int, bool) - 0xc0103e24 VirtualTerminal::~VirtualTerminal() - 0xc0104080 VirtualTerminal::redraw() - 0xc0104618 VirtualTerminal::writeHex(unsigned int, bool) - 0xc0104158 VirtualTerminal::scroll() - 0xc0103c88 VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) - 0xc0104474 VirtualTerminal::write(String, bool) - 0xc0103ea6 VirtualTerminal::putChar(unsigned int, unsigned int, wchar) - 0xc0103f70 VirtualTerminal::clear() - 0xc01042ac VirtualTerminal::moveCursor(unsigned int, unsigned int) - *fill* 0xc01046e2 0x2 00 - .text 0xc01046e4 0x156 VTManager/VT.ns.o - 0xc010470a VT::unmap(VirtualTerminal*) - 0xc0104791 VT::redrawScreen() - 0xc01046e4 VT::map(VirtualTerminal*) - *fill* 0xc010483a 0x2 00 - .text 0xc010483c 0x2f1 Library/Bitset.class.o - 0xc0104b22 Bitset::usedBits() - 0xc010483c Bitset::Bitset() - 0xc0104a44 Bitset::testBit(unsigned int) - 0xc010490a Bitset::~Bitset() - 0xc01049dc Bitset::clearBit(unsigned int) - 0xc0104920 Bitset::init(unsigned int, unsigned int*) - 0xc0104848 Bitset::Bitset(unsigned int) - 0xc0104842 Bitset::Bitset() - 0xc010487c Bitset::Bitset(unsigned int) - 0xc0104976 Bitset::setBit(unsigned int) - 0xc01048f4 Bitset::~Bitset() - 0xc01048d2 Bitset::Bitset(unsigned int, unsigned int*) - 0xc01048b0 Bitset::Bitset(unsigned int, unsigned int*) - 0xc0104a8c Bitset::firstFreeBit() - *fill* 0xc0104b2d 0x3 00 - .text 0xc0104b30 0x123c Library/String.class.o - 0xc0104b30 String::hex(unsigned int) - 0xc01054c2 String::operator==(char*) - 0xc0105808 String::operator+=(wchar) - 0xc01059b6 String::toInt() - 0xc0105110 String::String(String const&) - 0xc0104e1e String::String() - 0xc0104e36 String::String() - 0xc0105b4c String::size() - 0xc0104c3e String::number(int) - 0xc0105440 String::operator==(String&) - 0xc0105936 String::operator+(char*) - 0xc010520e String::~String() - 0xc010503a String::String(String const&) - 0xc01051e6 String::~String() - 0xc0105236 String::operator=(String const&) - 0xc0104e4e String::String(char*) - 0xc0105582 String::operator+=(String&) - 0xc0105b3a String::operator[](int) - 0xc0105b9a String::split(wchar) - 0xc0105b58 String::clear() - 0xc0105b8a String::empty() - 0xc0105a7e String::toInt16() - 0xc0105c8e String::substr(int, int) - 0xc0104f44 String::String(char*) - 0xc01056b0 String::operator+=(char*) - 0xc0105976 String::operator+(wchar) - 0xc010532c String::operator=(char*) - 0xc01058f6 String::operator+(String&) - .text 0xc0105d6c 0xd01 Library/wchar.class.o - 0xc0105d7a wchar::wchar() - 0xc0105de6 wchar::wchar(char*) - 0xc0105d6c wchar::wchar() - 0xc0105dcc wchar::wchar(char*) - 0xc0105eb0 wchar::affectAscii(char) - 0xc0105e00 wchar::utf8len(char*) - 0xc0105ec8 wchar::affectUtf8(char*) - 0xc0105d88 wchar::wchar(char) - 0xc0105daa wchar::wchar(char) - 0xc010604a wchar::toAscii() - *fill* 0xc0106a6d 0x3 00 - .text 0xc0106a70 0xd53 SyscallManager/IDT.ns.o - 0xc010749b IDT::handleException(registers_t, int) - 0xc0106c79 IDT::init() - 0xc0106c12 IDT::setGate(unsigned char, unsigned int, unsigned short, unsigned char) - 0xc0106a70 interrupt_handler - *fill* 0xc01077c3 0xd 00 - .text 0xc01077d0 0x20e SyscallManager/IDT.wtf.o - 0xc0107800 isr4 - 0xc01078da isr27 - 0xc0107852 isr13 - 0xc0107984 irq12 - 0xc01078a8 isr22 - 0xc0107862 isr15 - 0xc0107970 irq10 - 0xc0107998 irq14 - 0xc0107830 isr9 - 0xc010795c irq8 - 0xc01078b2 isr23 - 0xc01078ee isr29 - 0xc0107902 isr31 - 0xc010789e isr21 - 0xc010797a irq11 - 0xc01078e4 isr28 - 0xc0107828 isr8 - 0xc010793e irq5 - 0xc0107894 isr20 - 0xc010785a isr14 - 0xc010780a isr5 - 0xc0107948 irq6 - 0xc0107916 irq1 - 0xc01077e2 isr1 - 0xc0107966 irq9 - 0xc01078d0 isr26 - 0xc0107842 isr11 - 0xc010798e irq13 - 0xc010784a isr12 - 0xc01077d8 isr0 - 0xc0107920 irq2 - 0xc01078bc isr24 - 0xc010786c isr16 - 0xc01077f6 isr3 - 0xc0107814 isr6 - 0xc0107952 irq7 - 0xc0107880 isr18 - 0xc010790c irq0 - 0xc010783a isr10 - 0xc0107876 isr17 - 0xc01077ec isr2 - 0xc01079ac int64 - 0xc010788a isr19 - 0xc01077d0 idt_flush - 0xc01078f8 isr30 - 0xc01079a2 irq15 - 0xc010781e isr7 - 0xc01078c6 isr25 - 0xc0107934 irq4 - 0xc010792a irq3 - *fill* 0xc01079de 0x2 00 - .text 0xc01079e0 0x185 Devices/Display/VGATextOutput.class.o - 0xc0107a08 VGATextOutput::getName() - 0xc0107a30 VGATextOutput::textCols() - 0xc0107b2e VGATextOutput::clear() - 0xc01079e0 VGATextOutput::getClass() - 0xc0107aa8 VGATextOutput::moveCursor(unsigned short, unsigned short) - 0xc0107a44 VGATextOutput::putChar(unsigned short, unsigned short, wchar, unsigned char) - 0xc0107a3a VGATextOutput::textRows() - *fill* 0xc0107b65 0x3 00 - .text 0xc0107b68 0x219 Devices/Timer.class.o - 0xc0107c80 Timer::setFrequency(unsigned char) - 0xc0107b68 Timer::Timer(unsigned char) - 0xc0107c30 Timer::getClass() - 0xc0107c58 Timer::getName() - 0xc0107d04 Timer::time() - 0xc0107d3e Timer::handleIRQ(registers_t, int) - 0xc0107cf8 Timer::uptime() - 0xc0107bcc Timer::Timer(unsigned char) - -.text._Znwj 0xc0107d81 0x1b load address 0x00107d81 - .text._Znwj 0xc0107d81 0x1b Core/kmain.wtf.o - 0xc0107d81 operator new(unsigned int) + .text 0xc0100020 0x75 Core/loader.wtf.o + 0xc010002c loader + *fill* 0xc0100095 0x3 00 + .text 0xc0100098 0x40a7 Core/kmain.wtf.o + 0xc0100098 kmain + *fill* 0xc010413f 0x1 00 + .text 0xc0104140 0xf Core/cppsupport.wtf.o + 0xc0104140 __cxa_pure_virtual + 0xc0104145 __cxa_atexit + *fill* 0xc010414f 0x1 00 + .text 0xc0104150 0x668 Core/Sys.ns.o + 0xc01041aa Sys::bochs_output(char*, char*, unsigned int) + 0xc010416e Sys::inb(unsigned short) + 0xc010418b Sys::inw(unsigned short) + 0xc0104436 Sys::panic(char*, char*, unsigned int) + 0xc010479c Sys::reboot() + 0xc0104150 Sys::outb(unsigned short, unsigned char) + 0xc01043ac Sys::bochs_output_hex(unsigned int) + 0xc01045e9 Sys::panic_assert(char*, unsigned int, char*) + 0xc01042a4 Sys::bochs_output(String, char*, unsigned int) + .text 0xc01047b8 0xd5 Core/CMem.ns.o + 0xc01047ee CMem::memset(unsigned char*, unsigned char, int) + 0xc0104825 CMem::memsetw(unsigned short*, unsigned short, int) + 0xc0104860 CMem::strlen(char const*) + 0xc01047b8 CMem::memcpy(unsigned char*, unsigned char const*, int) + *fill* 0xc010488d 0x3 00 + .text 0xc0104890 0x8b4 MemoryManager/Mem.ns.o + 0xc0104d43 Mem::contractHeap() + 0xc010494a Mem::insertIntoHeapIndex(Mem::heap_header_t*) + 0xc0104aee Mem::removeFromHeapIndex(Mem::heap_header_t*) + 0xc0104aa5 Mem::removeFromHeapIndex(unsigned int) + 0xc0104b15 Mem::createHeap() + 0xc0104c23 Mem::expandHeap(unsigned int) + 0xc0104fe2 Mem::kfree(void*) + 0xc0104e53 Mem::kalloc(unsigned int, bool) + 0xc0104a63 Mem::heapIndexFindEntry(Mem::heap_header_t*) + 0xc0104890 Mem::kallocInternal(unsigned int, bool) + .text 0xc0105144 0x35c MemoryManager/PhysMem.ns.o + 0xc0105496 PhysMem::total() + 0xc01052e6 PhysMem::removeTemporaryPages() + 0xc0105421 PhysMem::freeFrame(page_t*) + 0xc0105470 PhysMem::free() + 0xc010533a PhysMem::allocFrame(page_t*, bool, bool) + 0xc0105144 PhysMem::initPaging(unsigned int) + .text 0xc01054a0 0x1d MemoryManager/GDT.wtf.o + 0xc01054a0 gdt_flush + *fill* 0xc01054bd 0x3 00 + .text 0xc01054c0 0x193 MemoryManager/GDT.ns.o + 0xc010554f GDT::init() + 0xc01054c0 GDT::setGate(int, unsigned int, unsigned int, unsigned char, unsigned char) + *fill* 0xc0105653 0x1 00 + .text 0xc0105654 0x8f1 MemoryManager/PageDirectory.class.o + 0xc0105d94 PageDirectory::getPage(unsigned int, bool) + 0xc0105718 PageDirectory::PageDirectory(PageDirectory*) + 0xc0105654 PageDirectory::PageDirectory() + 0xc0105d0e PageDirectory::~PageDirectory() + 0xc0105c88 PageDirectory::~PageDirectory() + 0xc0105ee4 PageDirectory::freeFrame(unsigned int) + 0xc01059d0 PageDirectory::PageDirectory(PageDirectory*) + 0xc01056b6 PageDirectory::PageDirectory() + 0xc0105e92 PageDirectory::allocFrame(unsigned int, bool, bool) + 0xc0105f1e PageDirectory::switchTo() + *fill* 0xc0105f45 0x3 00 + .text 0xc0105f48 0x239 MemoryManager/PageAlloc.ns.o + 0xc0106165 PageAlloc::free(void*) + 0xc0105f9c PageAlloc::alloc(unsigned int*) + 0xc0105f48 PageAlloc::init() + *fill* 0xc0106181 0x3 00 + .text 0xc0106184 0x161 DeviceManager/Disp.ns.o + 0xc010618e Disp::textRows() + 0xc0106271 Disp::clear() + 0xc0106184 Disp::textCols() + 0xc010628f Disp::setDisplay(Display*) + 0xc0106210 Disp::moveCursor(unsigned short, unsigned short) + 0xc0106198 Disp::putChar(unsigned short, unsigned short, wchar, unsigned char) + *fill* 0xc01062e5 0x3 00 + .text 0xc01062e8 0x37d DeviceManager/Dev.ns.o + 0xc0106399 Dev::registerDevice(Device*) + 0xc010646d Dev::findDevice(String) + 0xc01063bf Dev::unregisterDevice(Device*) + 0xc0106441 Dev::requestIRQ(Device*, int) + 0xc01062e8 Dev::handleIRQ(registers_t, int) + *fill* 0xc0106665 0x3 00 + .text 0xc0106668 0x37 DeviceManager/Time.ns.o + 0xc0106668 Time::setTimer(Timer*) + 0xc010668a Time::time() + 0xc0106675 Time::uptime() + *fill* 0xc010669f 0x1 00 + .text 0xc01066a0 0x70f DeviceManager/Kbd.ns.o + 0xc01067d4 Kbd::keyPress(unsigned char) + 0xc010673e Kbd::updateLeds() + 0xc0106719 Kbd::setKeymap(wchar*, wchar*, wchar*, wchar*) + 0xc0106b1c Kbd::keyRelease(unsigned char) + 0xc010670c Kbd::setFocus(VirtualTerminal*) + 0xc01066a0 Kbd::process(Kbd::keypress_t) + *fill* 0xc0106daf 0x1 00 + .text 0xc0106db0 0x518 TaskManager/Process.class.o + 0xc010714e Process::exit() + 0xc0106db0 Process::Process() + 0xc0106ed6 Process::Process(String, unsigned int) + 0xc01072ba Process::setVirtualTerminal(VirtualTerminal*) + 0xc01070c6 Process::stackAlloc() + 0xc01072ae Process::getVirtualTerminal() + 0xc01071d4 Process::threadFinishes(Thread*, unsigned int) + 0xc0107078 Process::~Process() + 0xc0106dd4 Process::Process() + 0xc0106df8 Process::createKernel(String, VirtualTerminal*) + 0xc010702a Process::~Process() + 0xc0106f80 Process::Process(String, unsigned int) + 0xc01071ac Process::registerThread(Thread*) + 0xc01072a2 Process::getPagedir() + .text 0xc01072c8 0x3eb TaskManager/Thread.class.o + 0xc010741c Thread::Thread(Process*, unsigned int (*)()) + 0xc01072ea Thread::Thread() + 0xc01074f4 Thread::setup(unsigned int (*)(), unsigned int) + 0xc010749c Thread::~Thread() + 0xc01072f0 Thread::Thread(unsigned int (*)(), bool) + 0xc0107604 Thread::sleep(unsigned int) + 0xc01072e4 Thread::Thread() + 0xc0107628 Thread::waitIRQ(unsigned char) + 0xc0107386 Thread::Thread(unsigned int (*)(), bool) + 0xc01075b6 Thread::setState(unsigned int, unsigned int, unsigned int) + 0xc01075d6 Thread::getEsp() + 0xc01075e2 Thread::getEbp() + 0xc01075fa Thread::getProcess() + 0xc01075ee Thread::getEip() + 0xc0107570 Thread::finish(unsigned int) + 0xc010765c Thread::runnable() + 0xc01074c8 Thread::~Thread() + 0xc0107594 Thread::run(unsigned int (*)()) + 0xc010745c Thread::Thread(Process*, unsigned int (*)()) + 0xc01072c8 runThread(Thread*, unsigned int (*)()) + *fill* 0xc01076b3 0x1 00 + .text 0xc01076b4 0x56e TaskManager/Task.ns.o + 0xc0107925 Task::IRQwakeup(unsigned char) + 0xc0107908 Task::triggerSwitch() + 0xc0107a2f Task::getKernelProcess() + 0xc0107af5 Task::registerProcess(Process*) + 0xc010790f Task::nextPid() + 0xc0107b1b Task::unregisterProcess(Process*) + 0xc0107a73 Task::unregisterThread(Thread*) + 0xc0107a4d Task::registerThread(Thread*) + 0xc01076b4 Task::initialize(String, VirtualTerminal*) + 0xc0107763 Task::nextThread() + 0xc01079a1 Task::allocKernelPageTable(unsigned int, page_table_t*, unsigned int) + 0xc0107818 Task::doSwitch() + *fill* 0xc0107c22 0xe 00 + .text 0xc0107c30 0x48 TaskManager/Task.wtf.o + 0xc0107c30 read_eip + 0xc0107c33 idle_task + 0xc0107c3a copy_page_physical + .text 0xc0107c78 0x99 TaskManager/Mutex.class.o + 0xc0107c90 Mutex::Mutex(bool) + 0xc0107cfa Mutex::unlock() + 0xc0107ca8 Mutex::lock() + 0xc0107cca Mutex::waitLock() + 0xc0107d06 Mutex::locked() + 0xc0107c78 Mutex::Mutex(bool) + *fill* 0xc0107d11 0x3 00 + .text 0xc0107d14 0xabe VTManager/VirtualTerminal.class.o + 0xc01080dc VirtualTerminal::map(int, int) + 0xc01083fa VirtualTerminal::put(wchar, bool) + 0xc0108156 VirtualTerminal::unmap() + 0xc01083c2 VirtualTerminal::setCursorLine(unsigned int) + 0xc0107f48 VirtualTerminal::setColor(unsigned char, unsigned char) + 0xc0107ec4 VirtualTerminal::~VirtualTerminal() + 0xc01083de VirtualTerminal::setCursorCol(unsigned int) + 0xc0107dec VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) + 0xc0108360 VirtualTerminal::updateCursor() + 0xc01085d0 VirtualTerminal::writeDec(int, bool) + 0xc0107f06 VirtualTerminal::~VirtualTerminal() + 0xc0108170 VirtualTerminal::redraw() + 0xc0108708 VirtualTerminal::writeHex(unsigned int, bool) + 0xc0108248 VirtualTerminal::scroll() + 0xc0107d14 VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) + 0xc0108564 VirtualTerminal::write(String, bool) + 0xc0107f96 VirtualTerminal::putChar(unsigned int, unsigned int, wchar) + 0xc0108060 VirtualTerminal::clear() + 0xc010839c VirtualTerminal::moveCursor(unsigned int, unsigned int) + *fill* 0xc01087d2 0x2 00 + .text 0xc01087d4 0x50b VTManager/VirtualTerminal-kbd.class.o + 0xc01088fe VirtualTerminal::getKeypress(bool, bool) + 0xc0108b3a VirtualTerminal::readLine(bool) + 0xc01087d4 VirtualTerminal::keyPress(Kbd::keypress_t) + *fill* 0xc0108cdf 0x1 00 + .text 0xc0108ce0 0x156 VTManager/VT.ns.o + 0xc0108d06 VT::unmap(VirtualTerminal*) + 0xc0108d8d VT::redrawScreen() + 0xc0108ce0 VT::map(VirtualTerminal*) + *fill* 0xc0108e36 0x2 00 + .text 0xc0108e38 0x2f1 Library/Bitset.class.o + 0xc010911e Bitset::usedBits() + 0xc0108e38 Bitset::Bitset() + 0xc0109040 Bitset::testBit(unsigned int) + 0xc0108f06 Bitset::~Bitset() + 0xc0108fd8 Bitset::clearBit(unsigned int) + 0xc0108f1c Bitset::init(unsigned int, unsigned int*) + 0xc0108e44 Bitset::Bitset(unsigned int) + 0xc0108e3e Bitset::Bitset() + 0xc0108e78 Bitset::Bitset(unsigned int) + 0xc0108f72 Bitset::setBit(unsigned int) + 0xc0108ef0 Bitset::~Bitset() + 0xc0108ece Bitset::Bitset(unsigned int, unsigned int*) + 0xc0108eac Bitset::Bitset(unsigned int, unsigned int*) + 0xc0109088 Bitset::firstFreeBit() + *fill* 0xc0109129 0x3 00 + .text 0xc010912c 0x123c Library/String.class.o + 0xc010912c String::hex(unsigned int) + 0xc0109abe String::operator==(char*) + 0xc0109e04 String::operator+=(wchar) + 0xc0109fb2 String::toInt() + 0xc010970c String::String(String const&) + 0xc010941a String::String() + 0xc0109432 String::String() + 0xc010a148 String::size() + 0xc010923a String::number(int) + 0xc0109a3c String::operator==(String&) + 0xc0109f32 String::operator+(char*) + 0xc010980a String::~String() + 0xc0109636 String::String(String const&) + 0xc01097e2 String::~String() + 0xc0109832 String::operator=(String const&) + 0xc010944a String::String(char*) + 0xc0109b7e String::operator+=(String&) + 0xc010a136 String::operator[](int) + 0xc010a196 String::split(wchar) + 0xc010a154 String::clear() + 0xc010a186 String::empty() + 0xc010a07a String::toInt16() + 0xc010a28a String::substr(int, int) + 0xc0109540 String::String(char*) + 0xc0109cac String::operator+=(char*) + 0xc0109f72 String::operator+(wchar) + 0xc0109928 String::operator=(char*) + 0xc0109ef2 String::operator+(String&) + .text 0xc010a368 0xd47 Library/wchar.class.o + 0xc010a376 wchar::wchar() + 0xc010a3e2 wchar::wchar(char*) + 0xc010a368 wchar::wchar() + 0xc010a3c8 wchar::wchar(char*) + 0xc010a4ac wchar::affectAscii(char) + 0xc010a3fc wchar::utf8len(char*) + 0xc010a4c4 wchar::affectUtf8(char*) + 0xc010a384 wchar::wchar(char) + 0xc010a3a6 wchar::wchar(char) + 0xc010a68c wchar::toAscii() + *fill* 0xc010b0af 0x1 00 + .text 0xc010b0b0 0xd53 SyscallManager/IDT.ns.o + 0xc010badb IDT::handleException(registers_t, int) + 0xc010b2b9 IDT::init() + 0xc010b252 IDT::setGate(unsigned char, unsigned int, unsigned short, unsigned char) + 0xc010b0b0 interrupt_handler + *fill* 0xc010be03 0xd 00 + .text 0xc010be10 0x20e SyscallManager/IDT.wtf.o + 0xc010be40 isr4 + 0xc010bf1a isr27 + 0xc010be92 isr13 + 0xc010bfc4 irq12 + 0xc010bee8 isr22 + 0xc010bea2 isr15 + 0xc010bfb0 irq10 + 0xc010bfd8 irq14 + 0xc010be70 isr9 + 0xc010bf9c irq8 + 0xc010bef2 isr23 + 0xc010bf2e isr29 + 0xc010bf42 isr31 + 0xc010bede isr21 + 0xc010bfba irq11 + 0xc010bf24 isr28 + 0xc010be68 isr8 + 0xc010bf7e irq5 + 0xc010bed4 isr20 + 0xc010be9a isr14 + 0xc010be4a isr5 + 0xc010bf88 irq6 + 0xc010bf56 irq1 + 0xc010be22 isr1 + 0xc010bfa6 irq9 + 0xc010bf10 isr26 + 0xc010be82 isr11 + 0xc010bfce irq13 + 0xc010be8a isr12 + 0xc010be18 isr0 + 0xc010bf60 irq2 + 0xc010befc isr24 + 0xc010beac isr16 + 0xc010be36 isr3 + 0xc010be54 isr6 + 0xc010bf92 irq7 + 0xc010bec0 isr18 + 0xc010bf4c irq0 + 0xc010be7a isr10 + 0xc010beb6 isr17 + 0xc010be2c isr2 + 0xc010bfec int64 + 0xc010beca isr19 + 0xc010be10 idt_flush + 0xc010bf38 isr30 + 0xc010bfe2 irq15 + 0xc010be5e isr7 + 0xc010bf06 isr25 + 0xc010bf74 irq4 + 0xc010bf6a irq3 + *fill* 0xc010c01e 0x2 00 + .text 0xc010c020 0x185 Devices/Display/VGATextOutput.class.o + 0xc010c048 VGATextOutput::getName() + 0xc010c070 VGATextOutput::textCols() + 0xc010c16e VGATextOutput::clear() + 0xc010c020 VGATextOutput::getClass() + 0xc010c0e8 VGATextOutput::moveCursor(unsigned short, unsigned short) + 0xc010c084 VGATextOutput::putChar(unsigned short, unsigned short, wchar, unsigned char) + 0xc010c07a VGATextOutput::textRows() + *fill* 0xc010c1a5 0x3 00 + .text 0xc010c1a8 0x190 Devices/Keyboard/PS2Keyboard.class.o + 0xc010c1de PS2Keyboard::PS2Keyboard() + 0xc010c264 PS2Keyboard::handleIRQ(registers_t, int) + 0xc010c23c PS2Keyboard::getName() + 0xc010c2ee PS2Keyboard::updateLeds(unsigned int) + 0xc010c1a8 PS2Keyboard::PS2Keyboard() + 0xc010c214 PS2Keyboard::getClass() + .text 0xc010c338 0x219 Devices/Timer.class.o + 0xc010c450 Timer::setFrequency(unsigned char) + 0xc010c338 Timer::Timer(unsigned char) + 0xc010c400 Timer::getClass() + 0xc010c428 Timer::getName() + 0xc010c4d4 Timer::time() + 0xc010c50e Timer::handleIRQ(registers_t, int) + 0xc010c4c8 Timer::uptime() + 0xc010c39c Timer::Timer(unsigned char) + +.text._Znwj 0xc010c551 0x1b load address 0x0010c551 + .text._Znwj 0xc010c551 0x1b Core/kmain.wtf.o + 0xc010c551 operator new(unsigned int) .text._ZN6Device9handleIRQE11registers_ti - 0xc0107d9c 0x5 load address 0x00107d9c + 0xc010c56c 0x5 load address 0x0010c56c .text._ZN6Device9handleIRQE11registers_ti - 0xc0107d9c 0x5 Core/kmain.wtf.o - 0xc0107d9c Device::handleIRQ(registers_t, int) + 0xc010c56c 0x5 Core/kmain.wtf.o + 0xc010c56c Device::handleIRQ(registers_t, int) .text._ZN15VirtualTerminallsE6String - 0xc0107da2 0x42 load address 0x00107da2 + 0xc010c572 0x42 load address 0x0010c572 .text._ZN15VirtualTerminallsE6String - 0xc0107da2 0x42 Core/kmain.wtf.o - 0xc0107da2 VirtualTerminal::operator<<(String) + 0xc010c572 0x42 Core/kmain.wtf.o + 0xc010c572 VirtualTerminal::operator<<(String) .text._ZN15VirtualTerminallsEi - 0xc0107de4 0x25 load address 0x00107de4 + 0xc010c5b4 0x25 load address 0x0010c5b4 .text._ZN15VirtualTerminallsEi - 0xc0107de4 0x25 Core/kmain.wtf.o - 0xc0107de4 VirtualTerminal::operator<<(int) + 0xc010c5b4 0x25 Core/kmain.wtf.o + 0xc010c5b4 VirtualTerminal::operator<<(int) .text._ZN15VirtualTerminallsEj - 0xc0107e0a 0x25 load address 0x00107e0a + 0xc010c5da 0x25 load address 0x0010c5da .text._ZN15VirtualTerminallsEj - 0xc0107e0a 0x25 Core/kmain.wtf.o - 0xc0107e0a VirtualTerminal::operator<<(unsigned int) + 0xc010c5da 0x25 Core/kmain.wtf.o + 0xc010c5da VirtualTerminal::operator<<(unsigned int) .text._ZN6DeviceC2Ev - 0xc0107e30 0xe load address 0x00107e30 + 0xc010c600 0xe load address 0x0010c600 .text._ZN6DeviceC2Ev - 0xc0107e30 0xe Core/kmain.wtf.o - 0xc0107e30 Device::Device() + 0xc010c600 0xe Core/kmain.wtf.o + 0xc010c600 Device::Device() .text._ZN7DisplayC2Ev - 0xc0107e3e 0x1c load address 0x00107e3e + 0xc010c60e 0x1c load address 0x0010c60e .text._ZN7DisplayC2Ev - 0xc0107e3e 0x1c Core/kmain.wtf.o - 0xc0107e3e Display::Display() + 0xc010c60e 0x1c Core/kmain.wtf.o + 0xc010c60e Display::Display() .text._ZN13VGATextOutputC1Ev - 0xc0107e5a 0x1c load address 0x00107e5a + 0xc010c62a 0x1c load address 0x0010c62a .text._ZN13VGATextOutputC1Ev - 0xc0107e5a 0x1c Core/kmain.wtf.o - 0xc0107e5a VGATextOutput::VGATextOutput() + 0xc010c62a 0x1c Core/kmain.wtf.o + 0xc010c62a VGATextOutput::VGATextOutput() -.text._ZnwjPv 0xc0107e76 0x8 load address 0x00107e76 - .text._ZnwjPv 0xc0107e76 0x8 MemoryManager/PhysMem.ns.o - 0xc0107e76 operator new(unsigned int, void*) +.text._ZnwjPv 0xc010c646 0x8 load address 0x0010c646 + .text._ZnwjPv 0xc010c646 0x8 MemoryManager/PhysMem.ns.o + 0xc010c646 operator new(unsigned int, void*) -.text._ZdaPv 0xc0107e7e 0x13 load address 0x00107e7e - .text._ZdaPv 0xc0107e7e 0x13 DeviceManager/Dev.ns.o - 0xc0107e7e operator delete[](void*) +.text._ZdaPv 0xc010c64e 0x13 load address 0x0010c64e + .text._ZdaPv 0xc010c64e 0x13 DeviceManager/Dev.ns.o + 0xc010c64e operator delete[](void*) .text._ZN6VectorIP6DeviceEC1Ev - 0xc0107e92 0x18 load address 0x00107e92 + 0xc010c662 0x18 load address 0x0010c662 .text._ZN6VectorIP6DeviceEC1Ev - 0xc0107e92 0x18 DeviceManager/Dev.ns.o - 0xc0107e92 Vector<Device*>::Vector() + 0xc010c662 0x18 DeviceManager/Dev.ns.o + 0xc010c662 Vector<Device*>::Vector() .text._ZN6VectorIP6DeviceE4pushES1_ - 0xc0107eaa 0x91 load address 0x00107eaa + 0xc010c67a 0x91 load address 0x0010c67a .text._ZN6VectorIP6DeviceE4pushES1_ - 0xc0107eaa 0x91 DeviceManager/Dev.ns.o - 0xc0107eaa Vector<Device*>::push(Device*) + 0xc010c67a 0x91 DeviceManager/Dev.ns.o + 0xc010c67a Vector<Device*>::push(Device*) .text._ZN6VectorIP6DeviceE4sizeEv - 0xc0107f3c 0xb load address 0x00107f3c + 0xc010c70c 0xb load address 0x0010c70c .text._ZN6VectorIP6DeviceE4sizeEv - 0xc0107f3c 0xb DeviceManager/Dev.ns.o - 0xc0107f3c Vector<Device*>::size() + 0xc010c70c 0xb DeviceManager/Dev.ns.o + 0xc010c70c Vector<Device*>::size() .text._ZN6VectorIP6DeviceEixEj - 0xc0107f48 0x12 load address 0x00107f48 + 0xc010c718 0x12 load address 0x0010c718 .text._ZN6VectorIP6DeviceEixEj - 0xc0107f48 0x12 DeviceManager/Dev.ns.o - 0xc0107f48 Vector<Device*>::operator[](unsigned int) + 0xc010c718 0x12 DeviceManager/Dev.ns.o + 0xc010c718 Vector<Device*>::operator[](unsigned int) .text._ZN6VectorIP6DeviceE4backEv - 0xc0107f5a 0x19 load address 0x00107f5a + 0xc010c72a 0x19 load address 0x0010c72a .text._ZN6VectorIP6DeviceE4backEv - 0xc0107f5a 0x19 DeviceManager/Dev.ns.o - 0xc0107f5a Vector<Device*>::back() + 0xc010c72a 0x19 DeviceManager/Dev.ns.o + 0xc010c72a Vector<Device*>::back() .text._ZN6VectorIP6DeviceE3popEv - 0xc0107f74 0x6d load address 0x00107f74 + 0xc010c744 0x6d load address 0x0010c744 .text._ZN6VectorIP6DeviceE3popEv - 0xc0107f74 0x6d DeviceManager/Dev.ns.o - 0xc0107f74 Vector<Device*>::pop() + 0xc010c744 0x6d DeviceManager/Dev.ns.o + 0xc010c744 Vector<Device*>::pop() .text._ZN6VectorIP6DeviceEC1ERKS2_ - 0xc0107fe2 0x7f load address 0x00107fe2 + 0xc010c7b2 0x7f load address 0x0010c7b2 .text._ZN6VectorIP6DeviceEC1ERKS2_ - 0xc0107fe2 0x7f DeviceManager/Dev.ns.o - 0xc0107fe2 Vector<Device*>::Vector(Vector<Device*> const&) + 0xc010c7b2 0x7f DeviceManager/Dev.ns.o + 0xc010c7b2 Vector<Device*>::Vector(Vector<Device*> const&) .text._ZN6VectorIP6DeviceED1Ev - 0xc0108062 0x27 load address 0x00108062 + 0xc010c832 0x27 load address 0x0010c832 .text._ZN6VectorIP6DeviceED1Ev - 0xc0108062 0x27 DeviceManager/Dev.ns.o - 0xc0108062 Vector<Device*>::~Vector() + 0xc010c832 0x27 DeviceManager/Dev.ns.o + 0xc010c832 Vector<Device*>::~Vector() -.text._ZdlPv 0xc0108089 0x13 load address 0x00108089 - .text._ZdlPv 0xc0108089 0x13 TaskManager/Process.class.o - 0xc0108089 operator delete(void*) +.text._ZN5wcharaSEj + 0xc010c85a 0x10 load address 0x0010c85a + .text._ZN5wcharaSEj + 0xc010c85a 0x10 DeviceManager/Kbd.ns.o + 0xc010c85a wchar::operator=(unsigned int) + +.text._ZN5wcharcvjEv + 0xc010c86a 0xa load address 0x0010c86a + .text._ZN5wcharcvjEv + 0xc010c86a 0xa DeviceManager/Kbd.ns.o + 0xc010c86a wchar::operator unsigned int() + +.text._ZN3Kbd10keypress_tC1Ev + 0xc010c874 0x33 load address 0x0010c874 + .text._ZN3Kbd10keypress_tC1Ev + 0xc010c874 0x33 DeviceManager/Kbd.ns.o + 0xc010c874 Kbd::keypress_t::keypress_t() + +.text._ZdlPv 0xc010c8a7 0x13 load address 0x0010c8a7 + .text._ZdlPv 0xc010c8a7 0x13 TaskManager/Process.class.o + 0xc010c8a7 operator delete(void*) .text._ZN6VectorIP6ThreadEC1Ev - 0xc010809c 0x18 load address 0x0010809c + 0xc010c8ba 0x18 load address 0x0010c8ba .text._ZN6VectorIP6ThreadEC1Ev - 0xc010809c 0x18 TaskManager/Process.class.o - 0xc010809c Vector<Thread*>::Vector() + 0xc010c8ba 0x18 TaskManager/Process.class.o + 0xc010c8ba Vector<Thread*>::Vector() .text._ZN6VectorIP6ThreadED1Ev - 0xc01080b4 0x27 load address 0x001080b4 + 0xc010c8d2 0x27 load address 0x0010c8d2 .text._ZN6VectorIP6ThreadED1Ev - 0xc01080b4 0x27 TaskManager/Process.class.o - 0xc01080b4 Vector<Thread*>::~Vector() + 0xc010c8d2 0x27 TaskManager/Process.class.o + 0xc010c8d2 Vector<Thread*>::~Vector() .text._ZN6VectorIP6ThreadE5emptyEv - 0xc01080dc 0x10 load address 0x001080dc + 0xc010c8fa 0x10 load address 0x0010c8fa .text._ZN6VectorIP6ThreadE5emptyEv - 0xc01080dc 0x10 TaskManager/Process.class.o - 0xc01080dc Vector<Thread*>::empty() + 0xc010c8fa 0x10 TaskManager/Process.class.o + 0xc010c8fa Vector<Thread*>::empty() .text._ZN6VectorIP6ThreadE4backEv - 0xc01080ec 0x19 load address 0x001080ec + 0xc010c90a 0x19 load address 0x0010c90a .text._ZN6VectorIP6ThreadE4backEv - 0xc01080ec 0x19 TaskManager/Process.class.o - 0xc01080ec Vector<Thread*>::back() + 0xc010c90a 0x19 TaskManager/Process.class.o + 0xc010c90a Vector<Thread*>::back() .text._ZN6VectorIP6ThreadE3popEv - 0xc0108106 0x6d load address 0x00108106 + 0xc010c924 0x6d load address 0x0010c924 .text._ZN6VectorIP6ThreadE3popEv - 0xc0108106 0x6d TaskManager/Process.class.o - 0xc0108106 Vector<Thread*>::pop() + 0xc010c924 0x6d TaskManager/Process.class.o + 0xc010c924 Vector<Thread*>::pop() .text._ZN6VectorIP6ThreadE4pushES1_ - 0xc0108174 0x91 load address 0x00108174 + 0xc010c992 0x91 load address 0x0010c992 .text._ZN6VectorIP6ThreadE4pushES1_ - 0xc0108174 0x91 TaskManager/Process.class.o - 0xc0108174 Vector<Thread*>::push(Thread*) + 0xc010c992 0x91 TaskManager/Process.class.o + 0xc010c992 Vector<Thread*>::push(Thread*) .text._ZN6VectorIP6ThreadEixEj - 0xc0108206 0x12 load address 0x00108206 + 0xc010ca24 0x12 load address 0x0010ca24 .text._ZN6VectorIP6ThreadEixEj - 0xc0108206 0x12 TaskManager/Process.class.o - 0xc0108206 Vector<Thread*>::operator[](unsigned int) + 0xc010ca24 0x12 TaskManager/Process.class.o + 0xc010ca24 Vector<Thread*>::operator[](unsigned int) .text._ZN6VectorIP6ThreadE4sizeEv - 0xc0108218 0xb load address 0x00108218 + 0xc010ca36 0xb load address 0x0010ca36 .text._ZN6VectorIP6ThreadE4sizeEv - 0xc0108218 0xb TaskManager/Process.class.o - 0xc0108218 Vector<Thread*>::size() + 0xc010ca36 0xb TaskManager/Process.class.o + 0xc010ca36 Vector<Thread*>::size() .text._ZN6Thread10irqHappensEh - 0xc0108224 0x38 load address 0x00108224 + 0xc010ca42 0x38 load address 0x0010ca42 .text._ZN6Thread10irqHappensEh - 0xc0108224 0x38 TaskManager/Task.ns.o - 0xc0108224 Thread::irqHappens(unsigned char) + 0xc010ca42 0x38 TaskManager/Task.ns.o + 0xc010ca42 Thread::irqHappens(unsigned char) .text._ZN6VectorIP7ProcessEC1Ev - 0xc010825c 0x18 load address 0x0010825c + 0xc010ca7a 0x18 load address 0x0010ca7a .text._ZN6VectorIP7ProcessEC1Ev - 0xc010825c 0x18 TaskManager/Task.ns.o - 0xc010825c Vector<Process*>::Vector() + 0xc010ca7a 0x18 TaskManager/Task.ns.o + 0xc010ca7a Vector<Process*>::Vector() .text._ZN6VectorIP6ThreadE5clearEv - 0xc0108274 0x3a load address 0x00108274 + 0xc010ca92 0x3a load address 0x0010ca92 .text._ZN6VectorIP6ThreadE5clearEv - 0xc0108274 0x3a TaskManager/Task.ns.o - 0xc0108274 Vector<Thread*>::clear() + 0xc010ca92 0x3a TaskManager/Task.ns.o + 0xc010ca92 Vector<Thread*>::clear() .text._ZN6VectorIP7ProcessE5clearEv - 0xc01082ae 0x3a load address 0x001082ae + 0xc010cacc 0x3a load address 0x0010cacc .text._ZN6VectorIP7ProcessE5clearEv - 0xc01082ae 0x3a TaskManager/Task.ns.o - 0xc01082ae Vector<Process*>::clear() + 0xc010cacc 0x3a TaskManager/Task.ns.o + 0xc010cacc Vector<Process*>::clear() .text._ZN6VectorIP7ProcessE4sizeEv - 0xc01082e8 0xb load address 0x001082e8 + 0xc010cb06 0xb load address 0x0010cb06 .text._ZN6VectorIP7ProcessE4sizeEv - 0xc01082e8 0xb TaskManager/Task.ns.o - 0xc01082e8 Vector<Process*>::size() + 0xc010cb06 0xb TaskManager/Task.ns.o + 0xc010cb06 Vector<Process*>::size() .text._ZN6VectorIP7ProcessEixEj - 0xc01082f4 0x12 load address 0x001082f4 + 0xc010cb12 0x12 load address 0x0010cb12 .text._ZN6VectorIP7ProcessEixEj - 0xc01082f4 0x12 TaskManager/Task.ns.o - 0xc01082f4 Vector<Process*>::operator[](unsigned int) + 0xc010cb12 0x12 TaskManager/Task.ns.o + 0xc010cb12 Vector<Process*>::operator[](unsigned int) .text._ZN6VectorIP7ProcessE4pushES1_ - 0xc0108306 0x91 load address 0x00108306 + 0xc010cb24 0x91 load address 0x0010cb24 .text._ZN6VectorIP7ProcessE4pushES1_ - 0xc0108306 0x91 TaskManager/Task.ns.o - 0xc0108306 Vector<Process*>::push(Process*) + 0xc010cb24 0x91 TaskManager/Task.ns.o + 0xc010cb24 Vector<Process*>::push(Process*) .text._ZN6VectorIP7ProcessE4backEv - 0xc0108398 0x19 load address 0x00108398 + 0xc010cbb6 0x19 load address 0x0010cbb6 .text._ZN6VectorIP7ProcessE4backEv - 0xc0108398 0x19 TaskManager/Task.ns.o - 0xc0108398 Vector<Process*>::back() + 0xc010cbb6 0x19 TaskManager/Task.ns.o + 0xc010cbb6 Vector<Process*>::back() .text._ZN6VectorIP7ProcessE3popEv - 0xc01083b2 0x6d load address 0x001083b2 + 0xc010cbd0 0x6d load address 0x0010cbd0 .text._ZN6VectorIP7ProcessE3popEv - 0xc01083b2 0x6d TaskManager/Task.ns.o - 0xc01083b2 Vector<Process*>::pop() + 0xc010cbd0 0x6d TaskManager/Task.ns.o + 0xc010cbd0 Vector<Process*>::pop() .text._ZN6VectorIP7ProcessE5emptyEv - 0xc0108420 0x10 load address 0x00108420 + 0xc010cc3e 0x10 load address 0x0010cc3e .text._ZN6VectorIP7ProcessE5emptyEv - 0xc0108420 0x10 TaskManager/Task.ns.o - 0xc0108420 Vector<Process*>::empty() + 0xc010cc3e 0x10 TaskManager/Task.ns.o + 0xc010cc3e Vector<Process*>::empty() .text._ZN6VectorIP7ProcessED1Ev - 0xc0108430 0x27 load address 0x00108430 + 0xc010cc4e 0x27 load address 0x0010cc4e .text._ZN6VectorIP7ProcessED1Ev - 0xc0108430 0x27 TaskManager/Task.ns.o - 0xc0108430 Vector<Process*>::~Vector() + 0xc010cc4e 0x27 TaskManager/Task.ns.o + 0xc010cc4e Vector<Process*>::~Vector() -.text._Znaj 0xc0108457 0x1b load address 0x00108457 - .text._Znaj 0xc0108457 0x1b VTManager/VirtualTerminal.class.o - 0xc0108457 operator new[](unsigned int) - -.text._ZN5wcharaSEj - 0xc0108472 0x10 load address 0x00108472 - .text._ZN5wcharaSEj - 0xc0108472 0x10 VTManager/VirtualTerminal.class.o - 0xc0108472 wchar::operator=(unsigned int) +.text._Znaj 0xc010cc75 0x1b load address 0x0010cc75 + .text._Znaj 0xc010cc75 0x1b VTManager/VirtualTerminal.class.o + 0xc010cc75 operator new[](unsigned int) .text._ZN3chrC1Ev - 0xc0108482 0x16 load address 0x00108482 + 0xc010cc90 0x16 load address 0x0010cc90 .text._ZN3chrC1Ev - 0xc0108482 0x16 VTManager/VirtualTerminal.class.o - 0xc0108482 chr::chr() + 0xc010cc90 0x16 VTManager/VirtualTerminal.class.o + 0xc010cc90 chr::chr() + +.text._ZN6VectorIN3Kbd10keypress_tEEC1Ev + 0xc010cca6 0x18 load address 0x0010cca6 + .text._ZN6VectorIN3Kbd10keypress_tEEC1Ev + 0xc010cca6 0x18 VTManager/VirtualTerminal.class.o + 0xc010cca6 Vector<Kbd::keypress_t>::Vector() + +.text._ZN6VectorIN3Kbd10keypress_tEED1Ev + 0xc010ccbe 0x27 load address 0x0010ccbe + .text._ZN6VectorIN3Kbd10keypress_tEED1Ev + 0xc010ccbe 0x27 VTManager/VirtualTerminal.class.o + 0xc010ccbe Vector<Kbd::keypress_t>::~Vector() + +.text._ZN6VectorIN3Kbd10keypress_tEE4pushES1_ + 0xc010cce6 0x99 load address 0x0010cce6 + .text._ZN6VectorIN3Kbd10keypress_tEE4pushES1_ + 0xc010cce6 0x99 VTManager/VirtualTerminal-kbd.class.o + 0xc010cce6 Vector<Kbd::keypress_t>::push(Kbd::keypress_t) + +.text._ZN6VectorIN3Kbd10keypress_tEE5emptyEv + 0xc010cd80 0x10 load address 0x0010cd80 + .text._ZN6VectorIN3Kbd10keypress_tEE5emptyEv + 0xc010cd80 0x10 VTManager/VirtualTerminal-kbd.class.o + 0xc010cd80 Vector<Kbd::keypress_t>::empty() + +.text._ZN6VectorIN3Kbd10keypress_tEEixEj + 0xc010cd90 0x12 load address 0x0010cd90 + .text._ZN6VectorIN3Kbd10keypress_tEEixEj + 0xc010cd90 0x12 VTManager/VirtualTerminal-kbd.class.o + 0xc010cd90 Vector<Kbd::keypress_t>::operator[](unsigned int) + +.text._ZN6VectorIN3Kbd10keypress_tEE4sizeEv + 0xc010cda2 0xb load address 0x0010cda2 + .text._ZN6VectorIN3Kbd10keypress_tEE4sizeEv + 0xc010cda2 0xb VTManager/VirtualTerminal-kbd.class.o + 0xc010cda2 Vector<Kbd::keypress_t>::size() + +.text._ZN3Kbd10keypress_tD1Ev + 0xc010cdae 0x5 load address 0x0010cdae + .text._ZN3Kbd10keypress_tD1Ev + 0xc010cdae 0x5 VTManager/VirtualTerminal-kbd.class.o + 0xc010cdae Kbd::keypress_t::~keypress_t() + +.text._ZN6VectorIN3Kbd10keypress_tEE3popEv + 0xc010cdb4 0x86 load address 0x0010cdb4 + .text._ZN6VectorIN3Kbd10keypress_tEE3popEv + 0xc010cdb4 0x86 VTManager/VirtualTerminal-kbd.class.o + 0xc010cdb4 Vector<Kbd::keypress_t>::pop() .text._ZN6VectorIP15VirtualTerminalEC1Ev - 0xc0108498 0x18 load address 0x00108498 + 0xc010ce3a 0x18 load address 0x0010ce3a .text._ZN6VectorIP15VirtualTerminalEC1Ev - 0xc0108498 0x18 VTManager/VT.ns.o - 0xc0108498 Vector<VirtualTerminal*>::Vector() + 0xc010ce3a 0x18 VTManager/VT.ns.o + 0xc010ce3a Vector<VirtualTerminal*>::Vector() .text._ZN6VectorIP15VirtualTerminalE4pushES1_ - 0xc01084b0 0x91 load address 0x001084b0 + 0xc010ce52 0x91 load address 0x0010ce52 .text._ZN6VectorIP15VirtualTerminalE4pushES1_ - 0xc01084b0 0x91 VTManager/VT.ns.o - 0xc01084b0 Vector<VirtualTerminal*>::push(VirtualTerminal*) + 0xc010ce52 0x91 VTManager/VT.ns.o + 0xc010ce52 Vector<VirtualTerminal*>::push(VirtualTerminal*) .text._ZN6VectorIP15VirtualTerminalE4sizeEv - 0xc0108542 0xb load address 0x00108542 + 0xc010cee4 0xb load address 0x0010cee4 .text._ZN6VectorIP15VirtualTerminalE4sizeEv - 0xc0108542 0xb VTManager/VT.ns.o - 0xc0108542 Vector<VirtualTerminal*>::size() + 0xc010cee4 0xb VTManager/VT.ns.o + 0xc010cee4 Vector<VirtualTerminal*>::size() .text._ZN6VectorIP15VirtualTerminalEixEj - 0xc010854e 0x12 load address 0x0010854e + 0xc010cef0 0x12 load address 0x0010cef0 .text._ZN6VectorIP15VirtualTerminalEixEj - 0xc010854e 0x12 VTManager/VT.ns.o - 0xc010854e Vector<VirtualTerminal*>::operator[](unsigned int) + 0xc010cef0 0x12 VTManager/VT.ns.o + 0xc010cef0 Vector<VirtualTerminal*>::operator[](unsigned int) .text._ZN6VectorIP15VirtualTerminalE4backEv - 0xc0108560 0x19 load address 0x00108560 + 0xc010cf02 0x19 load address 0x0010cf02 .text._ZN6VectorIP15VirtualTerminalE4backEv - 0xc0108560 0x19 VTManager/VT.ns.o - 0xc0108560 Vector<VirtualTerminal*>::back() + 0xc010cf02 0x19 VTManager/VT.ns.o + 0xc010cf02 Vector<VirtualTerminal*>::back() .text._ZN6VectorIP15VirtualTerminalE3popEv - 0xc010857a 0x6d load address 0x0010857a + 0xc010cf1c 0x6d load address 0x0010cf1c .text._ZN6VectorIP15VirtualTerminalE3popEv - 0xc010857a 0x6d VTManager/VT.ns.o - 0xc010857a Vector<VirtualTerminal*>::pop() + 0xc010cf1c 0x6d VTManager/VT.ns.o + 0xc010cf1c Vector<VirtualTerminal*>::pop() .text._ZN6VectorIP15VirtualTerminalED1Ev - 0xc01085e8 0x27 load address 0x001085e8 + 0xc010cf8a 0x27 load address 0x0010cf8a .text._ZN6VectorIP15VirtualTerminalED1Ev - 0xc01085e8 0x27 VTManager/VT.ns.o - 0xc01085e8 Vector<VirtualTerminal*>::~Vector() + 0xc010cf8a 0x27 VTManager/VT.ns.o + 0xc010cf8a Vector<VirtualTerminal*>::~Vector() .text._ZN5wchareqEj - 0xc0108610 0x10 load address 0x00108610 + 0xc010cfb2 0x10 load address 0x0010cfb2 .text._ZN5wchareqEj - 0xc0108610 0x10 Library/String.class.o - 0xc0108610 wchar::operator==(unsigned int) - -.text._ZN5wcharcvjEv - 0xc0108620 0xa load address 0x00108620 - .text._ZN5wcharcvjEv - 0xc0108620 0xa Library/String.class.o - 0xc0108620 wchar::operator unsigned int() + 0xc010cfb2 0x10 Library/String.class.o + 0xc010cfb2 wchar::operator==(unsigned int) .text._ZN6VectorI6StringEC1Ev - 0xc010862a 0x18 load address 0x0010862a + 0xc010cfc2 0x18 load address 0x0010cfc2 .text._ZN6VectorI6StringEC1Ev - 0xc010862a 0x18 Library/String.class.o - 0xc010862a Vector<String>::Vector() + 0xc010cfc2 0x18 Library/String.class.o + 0xc010cfc2 Vector<String>::Vector() .text._ZN6VectorI6StringE4pushES0_ - 0xc0108642 0x9b load address 0x00108642 + 0xc010cfda 0x9b load address 0x0010cfda .text._ZN6VectorI6StringE4pushES0_ - 0xc0108642 0x9b Library/String.class.o - 0xc0108642 Vector<String>::push(String) + 0xc010cfda 0x9b Library/String.class.o + 0xc010cfda Vector<String>::push(String) .text._ZN6VectorI6StringE4backEv - 0xc01086de 0x19 load address 0x001086de + 0xc010d076 0x19 load address 0x0010d076 .text._ZN6VectorI6StringE4backEv - 0xc01086de 0x19 Library/String.class.o - 0xc01086de Vector<String>::back() + 0xc010d076 0x19 Library/String.class.o + 0xc010d076 Vector<String>::back() + +.text._ZN8KeyboardC2Ev + 0xc010d090 0x1c load address 0x0010d090 + .text._ZN8KeyboardC2Ev + 0xc010d090 0x1c Devices/Keyboard/PS2Keyboard.class.o + 0xc010d090 Keyboard::Keyboard() -.rodata 0xc0109000 0x8f3 load address 0x00109000 +.rodata 0xc010e000 0xb36 load address 0x0010e000 *(.rodata) - .rodata 0xc0109000 0x379 Core/kmain.wtf.o - .rodata 0xc0109379 0x4f Core/Sys.ns.o - .rodata 0xc01093c8 0x5c MemoryManager/PhysMem.ns.o - .rodata 0xc0109424 0x6f MemoryManager/PageAlloc.ns.o - .rodata 0xc0109493 0x3 VTManager/VirtualTerminal.class.o - .rodata 0xc0109496 0x5 Library/String.class.o - .rodata 0xc010949b 0x1be Library/wchar.class.o - *fill* 0xc0109659 0x7 00 - .rodata 0xc0109660 0x240 SyscallManager/IDT.ns.o - .rodata 0xc01098a0 0x30 Devices/Display/VGATextOutput.class.o - .rodata 0xc01098d0 0x23 Devices/Timer.class.o + .rodata 0xc010e000 0x57d Core/kmain.wtf.o + .rodata 0xc010e57d 0x4f Core/Sys.ns.o + .rodata 0xc010e5cc 0x5c MemoryManager/PhysMem.ns.o + .rodata 0xc010e628 0x6f MemoryManager/PageAlloc.ns.o + .rodata 0xc010e697 0x9 DeviceManager/Kbd.ns.o + .rodata 0xc010e6a0 0x3 VTManager/VirtualTerminal.class.o + .rodata 0xc010e6a3 0x9 VTManager/VirtualTerminal-kbd.class.o + .rodata 0xc010e6ac 0x5 Library/String.class.o + .rodata 0xc010e6b1 0x1be Library/wchar.class.o + *fill* 0xc010e86f 0x11 00 + .rodata 0xc010e880 0x240 SyscallManager/IDT.ns.o + .rodata 0xc010eac0 0x30 Devices/Display/VGATextOutput.class.o + .rodata 0xc010eaf0 0x23 Devices/Keyboard/PS2Keyboard.class.o + .rodata 0xc010eb13 0x23 Devices/Timer.class.o .rodata._ZTV7Display - 0xc0109900 0x28 load address 0x00109900 + 0xc010eb40 0x28 load address 0x0010eb40 .rodata._ZTV7Display - 0xc0109900 0x28 Core/kmain.wtf.o - 0xc0109900 vtable for Display + 0xc010eb40 0x28 Core/kmain.wtf.o + 0xc010eb40 vtable for Display .rodata._ZTV6Device - 0xc0109928 0x14 load address 0x00109928 + 0xc010eb68 0x14 load address 0x0010eb68 .rodata._ZTV6Device - 0xc0109928 0x14 Core/kmain.wtf.o - 0xc0109928 vtable for Device + 0xc010eb68 0x14 Core/kmain.wtf.o + 0xc010eb68 vtable for Device .rodata._ZTV13VGATextOutput - 0xc0109940 0x28 load address 0x00109940 + 0xc010eb80 0x28 load address 0x0010eb80 .rodata._ZTV13VGATextOutput - 0xc0109940 0x28 Devices/Display/VGATextOutput.class.o - 0xc0109940 vtable for VGATextOutput + 0xc010eb80 0x28 Devices/Display/VGATextOutput.class.o + 0xc010eb80 vtable for VGATextOutput + +.rodata._ZTV11PS2Keyboard + 0xc010eba8 0x18 load address 0x0010eba8 + .rodata._ZTV11PS2Keyboard + 0xc010eba8 0x18 Devices/Keyboard/PS2Keyboard.class.o + 0xc010eba8 vtable for PS2Keyboard + +.rodata._ZTV8Keyboard + 0xc010ebc0 0x18 load address 0x0010ebc0 + .rodata._ZTV8Keyboard + 0xc010ebc0 0x18 Devices/Keyboard/PS2Keyboard.class.o + 0xc010ebc0 vtable for Keyboard .rodata._ZTV5Timer - 0xc0109968 0x14 load address 0x00109968 + 0xc010ebd8 0x14 load address 0x0010ebd8 .rodata._ZTV5Timer - 0xc0109968 0x14 Devices/Timer.class.o - 0xc0109968 vtable for Timer + 0xc010ebd8 0x14 Devices/Timer.class.o + 0xc010ebd8 vtable for Timer -.rel.dyn 0xc010997c 0x0 load address 0x0010997c - .rel.text 0x00000000 0x0 Core/kmain.wtf.o +.rel.dyn 0xc010ebec 0x0 load address 0x0010ebec + .rel.text 0x00000000 0x0 Core/loader.wtf.o .rel.text._Znwj - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN15VirtualTerminallsE6String - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN15VirtualTerminallsEi - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN15VirtualTerminallsEj - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6DeviceC2Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN7DisplayC2Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN13VGATextOutputC1Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.rodata._ZTV7Display - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.rodata._ZTV6Device - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP6DeviceE4pushES1_ - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP6DeviceEC1ERKS2_ - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP6DeviceED1Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o + .rel.text._ZN3Kbd10keypress_tC1Ev + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP6ThreadED1Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP6ThreadE4pushES1_ - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP6ThreadE5clearEv - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP7ProcessE5clearEv - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP7ProcessE4pushES1_ - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP7ProcessED1Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN3chrC1Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o + .rel.text._ZN6VectorIN3Kbd10keypress_tEED1Ev + 0x00000000 0x0 Core/loader.wtf.o + .rel.text._ZN6VectorIN3Kbd10keypress_tEE4pushES1_ + 0x00000000 0x0 Core/loader.wtf.o + .rel.text._ZN6VectorIN3Kbd10keypress_tEE3popEv + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP15VirtualTerminalE4pushES1_ - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorIP15VirtualTerminalED1Ev - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.text._ZN6VectorI6StringE4pushES0_ - 0x00000000 0x0 Core/kmain.wtf.o + 0x00000000 0x0 Core/loader.wtf.o .rel.rodata._ZTV13VGATextOutput - 0x00000000 0x0 Core/kmain.wtf.o - -.data 0xc010a000 0x38 load address 0x0010a000 - 0xc010a000 start_ctors = . + 0x00000000 0x0 Core/loader.wtf.o + .rel.text._ZN8KeyboardC2Ev + 0x00000000 0x0 Core/loader.wtf.o + .rel.rodata._ZTV8Keyboard + 0x00000000 0x0 Core/loader.wtf.o + +.data 0xc010f000 0x144 load address 0x0010f000 + 0xc010f000 start_ctors = . *(.ctor*) - .ctors 0xc010a000 0x4 DeviceManager/Dev.ns.o - .ctors 0xc010a004 0x4 TaskManager/Task.ns.o - .ctors 0xc010a008 0x4 VTManager/VT.ns.o - .ctors 0xc010a00c 0x4 Library/wchar.class.o - 0xc010a010 end_ctors = . - 0xc010a010 start_dtors = . + .ctors 0xc010f000 0x4 Core/kmain.wtf.o + .ctors 0xc010f004 0x4 DeviceManager/Dev.ns.o + .ctors 0xc010f008 0x4 TaskManager/Task.ns.o + .ctors 0xc010f00c 0x4 VTManager/VT.ns.o + .ctors 0xc010f010 0x4 Library/wchar.class.o + 0xc010f014 end_ctors = . + 0xc010f014 start_dtors = . *(.dtor*) - 0xc010a010 end_dtors = . + 0xc010f014 end_dtors = . *(.data) - .data 0xc010a010 0x24 Core/kmain.wtf.o - 0xc010a030 melonLogoCols - 0xc010a010 melonLogo - 0xc010a02c melonLogoLines - .data 0xc010a034 0x0 Core/cppsupport.wtf.o - .data 0xc010a034 0x0 Core/Sys.ns.o - .data 0xc010a034 0x0 Core/CMem.ns.o - .data 0xc010a034 0x0 MemoryManager/Mem.ns.o - .data 0xc010a034 0x0 MemoryManager/PhysMem.ns.o - .data 0xc010a034 0x0 MemoryManager/GDT.ns.o - .data 0xc010a034 0x0 MemoryManager/PageDirectory.class.o - .data 0xc010a034 0x0 MemoryManager/PageAlloc.ns.o - .data 0xc010a034 0x0 DeviceManager/Disp.ns.o - .data 0xc010a034 0x0 DeviceManager/Dev.ns.o - .data 0xc010a034 0x0 DeviceManager/Time.ns.o - .data 0xc010a034 0x0 TaskManager/Process.class.o - .data 0xc010a034 0x0 TaskManager/Thread.class.o - .data 0xc010a034 0x4 TaskManager/Task.ns.o - 0xc010a034 Task::nextpid - .data 0xc010a038 0x0 VTManager/VirtualTerminal.class.o - .data 0xc010a038 0x0 VTManager/VT.ns.o - .data 0xc010a038 0x0 Library/Bitset.class.o - .data 0xc010a038 0x0 Library/String.class.o - .data 0xc010a038 0x0 Library/wchar.class.o - .data 0xc010a038 0x0 SyscallManager/IDT.ns.o - .data 0xc010a038 0x0 Devices/Display/VGATextOutput.class.o - .data 0xc010a038 0x0 Devices/Timer.class.o - -.bss 0xc010a040 0x4b48 load address 0x0010a040 - 0xc010a040 sbss = . + .data 0xc010f014 0x24 Core/kmain.wtf.o + 0xc010f034 melonLogoCols + 0xc010f014 melonLogo + 0xc010f030 melonLogoLines + .data 0xc010f038 0x0 Core/cppsupport.wtf.o + .data 0xc010f038 0x0 Core/Sys.ns.o + .data 0xc010f038 0x0 Core/CMem.ns.o + .data 0xc010f038 0x0 MemoryManager/Mem.ns.o + .data 0xc010f038 0x0 MemoryManager/PhysMem.ns.o + .data 0xc010f038 0x0 MemoryManager/GDT.ns.o + .data 0xc010f038 0x0 MemoryManager/PageDirectory.class.o + .data 0xc010f038 0x0 MemoryManager/PageAlloc.ns.o + .data 0xc010f038 0x0 DeviceManager/Disp.ns.o + .data 0xc010f038 0x0 DeviceManager/Dev.ns.o + .data 0xc010f038 0x0 DeviceManager/Time.ns.o + *fill* 0xc010f038 0x8 00 + .data 0xc010f040 0x100 DeviceManager/Kbd.ns.o + 0xc010f040 Kbd::ctrlkeys + .data 0xc010f140 0x0 TaskManager/Process.class.o + .data 0xc010f140 0x0 TaskManager/Thread.class.o + .data 0xc010f140 0x4 TaskManager/Task.ns.o + 0xc010f140 Task::nextpid + .data 0xc010f144 0x0 TaskManager/Mutex.class.o + .data 0xc010f144 0x0 VTManager/VirtualTerminal.class.o + .data 0xc010f144 0x0 VTManager/VirtualTerminal-kbd.class.o + .data 0xc010f144 0x0 VTManager/VT.ns.o + .data 0xc010f144 0x0 Library/Bitset.class.o + .data 0xc010f144 0x0 Library/String.class.o + .data 0xc010f144 0x0 Library/wchar.class.o + .data 0xc010f144 0x0 SyscallManager/IDT.ns.o + .data 0xc010f144 0x0 Devices/Display/VGATextOutput.class.o + .data 0xc010f144 0x0 Devices/Keyboard/PS2Keyboard.class.o + .data 0xc010f144 0x0 Devices/Timer.class.o + +.bss 0xc010f160 0x5368 load address 0x0010f160 + 0xc010f160 sbss = . *(COMMON) *(.bss) - .bss 0xc010a040 0x0 Core/kmain.wtf.o - .bss 0xc010a040 0x4000 Core/loader.wtf.o - .bss 0xc010e040 0x4 Core/cppsupport.wtf.o - 0xc010e040 __dso_handle - .bss 0xc010e044 0x0 Core/Sys.ns.o - .bss 0xc010e044 0x0 Core/CMem.ns.o - .bss 0xc010e044 0x1c MemoryManager/Mem.ns.o - 0xc010e058 Mem::heapStart - 0xc010e045 Mem::pagingEnabled - 0xc010e04c Mem::kheapFree - 0xc010e05c Mem::heapEnd - 0xc010e044 Mem::kheapUsable - 0xc010e048 Mem::placementAddress - 0xc010e050 Mem::heapIndex - .bss 0xc010e060 0xc MemoryManager/PhysMem.ns.o - 0xc010e060 kernelPageDirectory - 0xc010e068 PhysMem::frames - 0xc010e064 PhysMem::nframes - *fill* 0xc010e06c 0x14 00 - .bss 0xc010e080 0x2e MemoryManager/GDT.ns.o - 0xc010e0a8 GDT::gdt_ptr - 0xc010e080 GDT::gdt_entries - *fill* 0xc010e0ae 0x2 00 - .bss 0xc010e0b0 0x0 MemoryManager/PageDirectory.class.o - .bss 0xc010e0b0 0x12 MemoryManager/PageAlloc.ns.o - 0xc010e0c0 PageAlloc::usable - 0xc010e0b0 PageAlloc::freePage - 0xc010e0bc PageAlloc::freec - 0xc010e0c1 PageAlloc::locked - *fill* 0xc010e0c2 0x2 00 - .bss 0xc010e0c4 0xc DeviceManager/Disp.ns.o - 0xc010e0c4 Disp::mode - *fill* 0xc010e0d0 0x10 00 - .bss 0xc010e0e0 0x60 DeviceManager/Dev.ns.o - 0xc010e0e0 Dev::devices - 0xc010e100 Dev::irqHandler - .bss 0xc010e140 0x4 DeviceManager/Time.ns.o - 0xc010e140 Time::timer - .bss 0xc010e144 0x0 TaskManager/Process.class.o - .bss 0xc010e144 0x0 TaskManager/Thread.class.o - .bss 0xc010e144 0x20 TaskManager/Task.ns.o - 0xc010e144 Task::processes - 0xc010e154 Task::currentThread - 0xc010e15c Task::idleThread - 0xc010e160 Task::currentThreadId - 0xc010e14c Task::threads - 0xc010e158 Task::currentProcess - .bss 0xc010e164 0x0 VTManager/VirtualTerminal.class.o - .bss 0xc010e164 0x8 VTManager/VT.ns.o - 0xc010e164 VT::mappedVTs - .bss 0xc010e16c 0x0 Library/Bitset.class.o - .bss 0xc010e16c 0x0 Library/String.class.o - *fill* 0xc010e16c 0x14 00 - .bss 0xc010e180 0x200 Library/wchar.class.o - 0xc010e180 wchar::CP437 - .bss 0xc010e380 0x806 SyscallManager/IDT.ns.o - 0xc010e380 IDT::idt_entries - 0xc010eb80 IDT::idt_ptr - *fill* 0xc010eb86 0x2 00 - .bss 0xc010eb88 0x0 Devices/Display/VGATextOutput.class.o - .bss 0xc010eb88 0x0 Devices/Timer.class.o - 0xc010eb88 ebss = . - 0xc010eb88 end = . - 0xc010eb88 _end = . - 0xc010eb88 __end = . -LOAD Core/kmain.wtf.o + .bss 0xc010f160 0x4000 Core/loader.wtf.o + .bss 0xc0113160 0x800 Core/kmain.wtf.o + 0xc0113760 keymapFR_shiftaltgr + 0xc0113160 keymapFR_normal + 0xc0113560 keymapFR_altgr + 0xc0113360 keymapFR_shift + .bss 0xc0113960 0x4 Core/cppsupport.wtf.o + 0xc0113960 __dso_handle + .bss 0xc0113964 0x0 Core/Sys.ns.o + .bss 0xc0113964 0x0 Core/CMem.ns.o + .bss 0xc0113964 0x1c MemoryManager/Mem.ns.o + 0xc0113978 Mem::heapStart + 0xc0113965 Mem::pagingEnabled + 0xc011396c Mem::kheapFree + 0xc011397c Mem::heapEnd + 0xc0113964 Mem::kheapUsable + 0xc0113968 Mem::placementAddress + 0xc0113970 Mem::heapIndex + .bss 0xc0113980 0xc MemoryManager/PhysMem.ns.o + 0xc0113980 kernelPageDirectory + 0xc0113988 PhysMem::frames + 0xc0113984 PhysMem::nframes + *fill* 0xc011398c 0x14 00 + .bss 0xc01139a0 0x2e MemoryManager/GDT.ns.o + 0xc01139c8 GDT::gdt_ptr + 0xc01139a0 GDT::gdt_entries + *fill* 0xc01139ce 0x2 00 + .bss 0xc01139d0 0x0 MemoryManager/PageDirectory.class.o + .bss 0xc01139d0 0x12 MemoryManager/PageAlloc.ns.o + 0xc01139e0 PageAlloc::usable + 0xc01139d0 PageAlloc::freePage + 0xc01139dc PageAlloc::freec + 0xc01139e1 PageAlloc::locked + *fill* 0xc01139e2 0x2 00 + .bss 0xc01139e4 0xc DeviceManager/Disp.ns.o + 0xc01139e4 Disp::mode + *fill* 0xc01139f0 0x10 00 + .bss 0xc0113a00 0x60 DeviceManager/Dev.ns.o + 0xc0113a00 Dev::devices + 0xc0113a20 Dev::irqHandler + .bss 0xc0113a60 0x4 DeviceManager/Time.ns.o + 0xc0113a60 Time::timer + .bss 0xc0113a64 0x18 DeviceManager/Kbd.ns.o + 0xc0113a6c Kbd::keymapAltgr + 0xc0113a74 Kbd::kbdstatus + 0xc0113a78 Kbd::focusedVT + 0xc0113a68 Kbd::keymapShift + 0xc0113a64 Kbd::keymapNormal + 0xc0113a70 Kbd::keymapShiftAltgr + .bss 0xc0113a7c 0x0 TaskManager/Process.class.o + .bss 0xc0113a7c 0x0 TaskManager/Thread.class.o + .bss 0xc0113a7c 0x20 TaskManager/Task.ns.o + 0xc0113a7c Task::processes + 0xc0113a8c Task::currentThread + 0xc0113a94 Task::idleThread + 0xc0113a98 Task::currentThreadId + 0xc0113a84 Task::threads + 0xc0113a90 Task::currentProcess + .bss 0xc0113a9c 0x0 TaskManager/Mutex.class.o + .bss 0xc0113a9c 0x0 VTManager/VirtualTerminal.class.o + .bss 0xc0113a9c 0x0 VTManager/VirtualTerminal-kbd.class.o + .bss 0xc0113a9c 0x8 VTManager/VT.ns.o + 0xc0113a9c VT::mappedVTs + .bss 0xc0113aa4 0x0 Library/Bitset.class.o + .bss 0xc0113aa4 0x0 Library/String.class.o + *fill* 0xc0113aa4 0x1c 00 + .bss 0xc0113ac0 0x200 Library/wchar.class.o + 0xc0113ac0 wchar::CP437 + .bss 0xc0113cc0 0x806 SyscallManager/IDT.ns.o + 0xc0113cc0 IDT::idt_entries + 0xc01144c0 IDT::idt_ptr + *fill* 0xc01144c6 0x2 00 + .bss 0xc01144c8 0x0 Devices/Display/VGATextOutput.class.o + .bss 0xc01144c8 0x0 Devices/Keyboard/PS2Keyboard.class.o + .bss 0xc01144c8 0x0 Devices/Timer.class.o + 0xc01144c8 ebss = . + 0xc01144c8 end = . + 0xc01144c8 _end = . + 0xc01144c8 __end = . LOAD Core/loader.wtf.o +LOAD Core/kmain.wtf.o LOAD Core/cppsupport.wtf.o LOAD Core/Sys.ns.o LOAD Core/CMem.ns.o @@ -983,11 +1164,14 @@ LOAD MemoryManager/PageAlloc.ns.o LOAD DeviceManager/Disp.ns.o LOAD DeviceManager/Dev.ns.o LOAD DeviceManager/Time.ns.o +LOAD DeviceManager/Kbd.ns.o LOAD TaskManager/Process.class.o LOAD TaskManager/Thread.class.o LOAD TaskManager/Task.ns.o LOAD TaskManager/Task.wtf.o +LOAD TaskManager/Mutex.class.o LOAD VTManager/VirtualTerminal.class.o +LOAD VTManager/VirtualTerminal-kbd.class.o LOAD VTManager/VT.ns.o LOAD Library/Bitset.class.o LOAD Library/String.class.o @@ -995,12 +1179,13 @@ LOAD Library/wchar.class.o LOAD SyscallManager/IDT.ns.o LOAD SyscallManager/IDT.wtf.o LOAD Devices/Display/VGATextOutput.class.o +LOAD Devices/Keyboard/PS2Keyboard.class.o LOAD Devices/Timer.class.o OUTPUT(Melon.ke elf32-i386) -.comment 0x00000000 0x21a - .comment 0x00000000 0x12 Core/kmain.wtf.o - .comment 0x00000012 0x1f Core/loader.wtf.o +.comment 0x00000000 0x262 + .comment 0x00000000 0x1f Core/loader.wtf.o + .comment 0x0000001f 0x12 Core/kmain.wtf.o .comment 0x00000031 0x12 Core/cppsupport.wtf.o .comment 0x00000043 0x12 Core/Sys.ns.o .comment 0x00000055 0x12 Core/CMem.ns.o @@ -1013,19 +1198,23 @@ OUTPUT(Melon.ke elf32-i386) .comment 0x000000e0 0x12 DeviceManager/Disp.ns.o .comment 0x000000f2 0x12 DeviceManager/Dev.ns.o .comment 0x00000104 0x12 DeviceManager/Time.ns.o - .comment 0x00000116 0x12 TaskManager/Process.class.o - .comment 0x00000128 0x12 TaskManager/Thread.class.o - .comment 0x0000013a 0x12 TaskManager/Task.ns.o - .comment 0x0000014c 0x1f TaskManager/Task.wtf.o - .comment 0x0000016b 0x12 VTManager/VirtualTerminal.class.o - .comment 0x0000017d 0x12 VTManager/VT.ns.o - .comment 0x0000018f 0x12 Library/Bitset.class.o - .comment 0x000001a1 0x12 Library/String.class.o - .comment 0x000001b3 0x12 Library/wchar.class.o - .comment 0x000001c5 0x12 SyscallManager/IDT.ns.o - .comment 0x000001d7 0x1f SyscallManager/IDT.wtf.o - .comment 0x000001f6 0x12 Devices/Display/VGATextOutput.class.o - .comment 0x00000208 0x12 Devices/Timer.class.o + .comment 0x00000116 0x12 DeviceManager/Kbd.ns.o + .comment 0x00000128 0x12 TaskManager/Process.class.o + .comment 0x0000013a 0x12 TaskManager/Thread.class.o + .comment 0x0000014c 0x12 TaskManager/Task.ns.o + .comment 0x0000015e 0x1f TaskManager/Task.wtf.o + .comment 0x0000017d 0x12 TaskManager/Mutex.class.o + .comment 0x0000018f 0x12 VTManager/VirtualTerminal.class.o + .comment 0x000001a1 0x12 VTManager/VirtualTerminal-kbd.class.o + .comment 0x000001b3 0x12 VTManager/VT.ns.o + .comment 0x000001c5 0x12 Library/Bitset.class.o + .comment 0x000001d7 0x12 Library/String.class.o + .comment 0x000001e9 0x12 Library/wchar.class.o + .comment 0x000001fb 0x12 SyscallManager/IDT.ns.o + .comment 0x0000020d 0x1f SyscallManager/IDT.wtf.o + .comment 0x0000022c 0x12 Devices/Display/VGATextOutput.class.o + .comment 0x0000023e 0x12 Devices/Keyboard/PS2Keyboard.class.o + .comment 0x00000250 0x12 Devices/Timer.class.o .note.GNU-stack 0x00000000 0x0 @@ -1054,14 +1243,20 @@ OUTPUT(Melon.ke elf32-i386) .note.GNU-stack 0x00000000 0x0 DeviceManager/Time.ns.o .note.GNU-stack + 0x00000000 0x0 DeviceManager/Kbd.ns.o + .note.GNU-stack 0x00000000 0x0 TaskManager/Process.class.o .note.GNU-stack 0x00000000 0x0 TaskManager/Thread.class.o .note.GNU-stack 0x00000000 0x0 TaskManager/Task.ns.o .note.GNU-stack + 0x00000000 0x0 TaskManager/Mutex.class.o + .note.GNU-stack 0x00000000 0x0 VTManager/VirtualTerminal.class.o .note.GNU-stack + 0x00000000 0x0 VTManager/VirtualTerminal-kbd.class.o + .note.GNU-stack 0x00000000 0x0 VTManager/VT.ns.o .note.GNU-stack 0x00000000 0x0 Library/Bitset.class.o @@ -1074,4 +1269,6 @@ OUTPUT(Melon.ke elf32-i386) .note.GNU-stack 0x00000000 0x0 Devices/Display/VGATextOutput.class.o .note.GNU-stack + 0x00000000 0x0 Devices/Keyboard/PS2Keyboard.class.o + .note.GNU-stack 0x00000000 0x0 Devices/Timer.class.o |