diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/Kernel/Map.txt | 1596 | ||||
-rwxr-xr-x | Source/Kernel/Melon.ke | bin | 108052 -> 107783 bytes | |||
-rw-r--r-- | Source/Kernel/SyscallManager/IDT.ns.cpp | 7 | ||||
-rw-r--r-- | Source/Kernel/TaskManager/Task.ns.cpp | 2 | ||||
-rw-r--r-- | Source/Kernel/TaskManager/Thread.class.cpp | 2 | ||||
-rw-r--r-- | Source/Kernel/TaskManager/Thread.class.h | 4 | ||||
-rw-r--r-- | Source/Kernel/VTManager/VirtualTerminal.class.cpp | 1 |
7 files changed, 4 insertions, 1608 deletions
diff --git a/Source/Kernel/Map.txt b/Source/Kernel/Map.txt deleted file mode 100644 index ecbde43..0000000 --- a/Source/Kernel/Map.txt +++ /dev/null @@ -1,1596 +0,0 @@ - -Discarded input sections - - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/kmain.wtf.o - .group 0x00000000 0x0 Core/Sys.ns.o - .group 0x00000000 0x0 Core/Sys.ns.o - .group 0x00000000 0x0 Core/Sys.ns.o - .text._Znwj 0x00000000 0x0 Core/Sys.ns.o - .text._ZN15VirtualTerminallsE6String - 0x00000000 0x0 Core/Sys.ns.o - .text._ZN15VirtualTerminallsEi - 0x00000000 0x0 Core/Sys.ns.o - .group 0x00000000 0x0 MemoryManager/PhysMem.ns.o - .group 0x00000000 0x0 MemoryManager/PhysMem.ns.o - .text._Znwj 0x00000000 0x0 MemoryManager/PhysMem.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .group 0x00000000 0x0 DeviceManager/Dev.ns.o - .text._ZnwjPv 0x00000000 0x0 DeviceManager/Dev.ns.o - .text._ZdaPv 0x00000000 0x0 DeviceManager/Dev.ns.o - .text._ZN6VectorIP6DeviceE4sizeEv - 0x00000000 0x0 DeviceManager/Dev.ns.o - .text._ZN6VectorIP6DeviceEixEj - 0x00000000 0x0 DeviceManager/Dev.ns.o - .text._ZN6VectorIP6DeviceED1Ev - 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 - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Process.class.o - .text._ZnwjPv 0x00000000 0x0 TaskManager/Process.class.o - .text._Znwj 0x00000000 0x0 TaskManager/Process.class.o - .text._ZdaPv 0x00000000 0x0 TaskManager/Process.class.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .group 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZnwjPv 0x00000000 0x0 TaskManager/Task.ns.o - .text._Znwj 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZdaPv 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadEC1Ev - 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadEixEj - 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadE4sizeEv - 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadE4pushES1_ - 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadE4backEv - 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadE3popEv - 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadE5emptyEv - 0x00000000 0x0 TaskManager/Task.ns.o - .text._ZN6VectorIP6ThreadED1Ev - 0x00000000 0x0 TaskManager/Task.ns.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 - .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 - .group 0x00000000 0x0 VTManager/VT.ns.o - .group 0x00000000 0x0 VTManager/VT.ns.o - .group 0x00000000 0x0 VTManager/VT.ns.o - .group 0x00000000 0x0 VTManager/VT.ns.o - .group 0x00000000 0x0 VTManager/VT.ns.o - .group 0x00000000 0x0 VTManager/VT.ns.o - .text._ZnwjPv 0x00000000 0x0 VTManager/VT.ns.o - .text._ZdaPv 0x00000000 0x0 VTManager/VT.ns.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .group 0x00000000 0x0 Library/String.class.o - .text._ZnwjPv 0x00000000 0x0 Library/String.class.o - .text._Znaj 0x00000000 0x0 Library/String.class.o - .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 - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 VFS/Part.ns.o - .text._ZnwjPv 0x00000000 0x0 VFS/Part.ns.o - .text._Znwj 0x00000000 0x0 VFS/Part.ns.o - .text._ZdlPv 0x00000000 0x0 VFS/Part.ns.o - .text._ZdaPv 0x00000000 0x0 VFS/Part.ns.o - .text._ZN6VectorIP11BlockDeviceE4sizeEv - 0x00000000 0x0 VFS/Part.ns.o - .text._ZN6VectorIP11BlockDeviceEixEj - 0x00000000 0x0 VFS/Part.ns.o - .text._ZN6VectorIP9PartitionE4sizeEv - 0x00000000 0x0 VFS/Part.ns.o - .text._ZN6VectorIP9PartitionEixEj - 0x00000000 0x0 VFS/Part.ns.o - .group 0x00000000 0x0 SyscallManager/IDT.ns.o - .group 0x00000000 0x0 SyscallManager/IDT.ns.o - .group 0x00000000 0x0 SyscallManager/IDT.ns.o - .group 0x00000000 0x0 SyscallManager/IDT.ns.o - .group 0x00000000 0x0 SyscallManager/IDT.ns.o - .group 0x00000000 0x0 SyscallManager/IDT.ns.o - .text._Znwj 0x00000000 0x0 SyscallManager/IDT.ns.o - .text._ZN15VirtualTerminallsE6String - 0x00000000 0x0 SyscallManager/IDT.ns.o - .text._ZN15VirtualTerminallsEi - 0x00000000 0x0 SyscallManager/IDT.ns.o - .text._ZN15VirtualTerminallsEj - 0x00000000 0x0 SyscallManager/IDT.ns.o - .group 0x00000000 0x0 Devices/Display/VGATextOutput.class.o - .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/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .text._Znwj 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .text._ZdaPv 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .text._ZN6Device9handleIRQE11registers_ti - 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .text._ZN6DeviceC2Ev - 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .text._ZN6VectorIP6DeviceED1Ev - 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .text._ZN6VectorIP6DeviceE4sizeEv - 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .text._ZN6VectorIP6DeviceEixEj - 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .rodata._ZTV6Device - 0x00000000 0x0 Devices/Floppy/FloppyController.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .group 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .text._ZN6Device9handleIRQE11registers_ti - 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .text._ZN6DeviceC2Ev - 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .rodata._ZTV6Device - 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .group 0x00000000 0x0 Devices/Timer.class.o - .group 0x00000000 0x0 Devices/Timer.class.o - .group 0x00000000 0x0 Devices/Timer.class.o - .group 0x00000000 0x0 Devices/Timer.class.o - .text._ZN6Device9handleIRQE11registers_ti - 0x00000000 0x0 Devices/Timer.class.o - .text._ZN6DeviceC2Ev - 0x00000000 0x0 Devices/Timer.class.o - .rodata._ZTV6Device - 0x00000000 0x0 Devices/Timer.class.o - -Memory Configuration - -Name Origin Length Attributes -*default* 0x00000000 0xffffffff - -Linker script and memory map - - 0x00100000 . = 0x100000 - -.setup 0x00100000 0x1e - *(.setup) - .setup 0x00100000 0x1e Core/loader.wtf.o - 0xc010001e . = (. + 0xc0000000) - -.text 0xc0100020 0xf539 load address 0x00100020 - *(.text) - .text 0xc0100020 0x75 Core/loader.wtf.o - 0xc010002c loader - *fill* 0xc0100095 0x3 00 - .text 0xc0100098 0x4dc5 Core/kmain.wtf.o - 0xc0100098 kmain - *fill* 0xc0104e5d 0x3 00 - .text 0xc0104e60 0xf Core/cppsupport.wtf.o - 0xc0104e60 __cxa_pure_virtual - 0xc0104e65 __cxa_atexit - *fill* 0xc0104e6f 0x1 00 - .text 0xc0104e70 0x668 Core/Sys.ns.o - 0xc0104eca Sys::bochs_output(char*, char*, unsigned int) - 0xc0104e8e Sys::inb(unsigned short) - 0xc0104eab Sys::inw(unsigned short) - 0xc0105156 Sys::panic(char*, char*, unsigned int) - 0xc01054bc Sys::reboot() - 0xc0104e70 Sys::outb(unsigned short, unsigned char) - 0xc01050cc Sys::bochs_output_hex(unsigned int) - 0xc0105309 Sys::panic_assert(char*, unsigned int, char*) - 0xc0104fc4 Sys::bochs_output(String, char*, unsigned int) - .text 0xc01054d8 0xd5 Core/CMem.ns.o - 0xc010550e CMem::memset(unsigned char*, unsigned char, int) - 0xc0105545 CMem::memsetw(unsigned short*, unsigned short, int) - 0xc0105580 CMem::strlen(char const*) - 0xc01054d8 CMem::memcpy(unsigned char*, unsigned char const*, int) - *fill* 0xc01055ad 0x3 00 - .text 0xc01055b0 0x8e4 MemoryManager/Mem.ns.o - 0xc0105a70 Mem::contractHeap() - 0xc0105e7e Mem::kheapSize() - 0xc010566a Mem::insertIntoHeapIndex(Mem::heap_header_t*) - 0xc010580e Mem::removeFromHeapIndex(Mem::heap_header_t*) - 0xc01057c5 Mem::removeFromHeapIndex(unsigned int) - 0xc0105835 Mem::createHeap() - 0xc0105943 Mem::expandHeap(unsigned int) - 0xc0105d1c Mem::kfree(void*) - 0xc0105b8d Mem::kalloc(unsigned int, bool) - 0xc0105783 Mem::heapIndexFindEntry(Mem::heap_header_t*) - 0xc01055b0 Mem::kallocInternal(unsigned int, bool) - .text 0xc0105e94 0x35c MemoryManager/PhysMem.ns.o - 0xc01061e6 PhysMem::total() - 0xc0106036 PhysMem::removeTemporaryPages() - 0xc0106171 PhysMem::freeFrame(page_t*) - 0xc01061c0 PhysMem::free() - 0xc010608a PhysMem::allocFrame(page_t*, bool, bool) - 0xc0105e94 PhysMem::initPaging(unsigned int) - .text 0xc01061f0 0x1d MemoryManager/GDT.wtf.o - 0xc01061f0 gdt_flush - *fill* 0xc010620d 0x3 00 - .text 0xc0106210 0x193 MemoryManager/GDT.ns.o - 0xc010629f GDT::init() - 0xc0106210 GDT::setGate(int, unsigned int, unsigned int, unsigned char, unsigned char) - *fill* 0xc01063a3 0x1 00 - .text 0xc01063a4 0x8f1 MemoryManager/PageDirectory.class.o - 0xc0106ae4 PageDirectory::getPage(unsigned int, bool) - 0xc0106468 PageDirectory::PageDirectory(PageDirectory*) - 0xc01063a4 PageDirectory::PageDirectory() - 0xc0106a5e PageDirectory::~PageDirectory() - 0xc01069d8 PageDirectory::~PageDirectory() - 0xc0106c34 PageDirectory::freeFrame(unsigned int) - 0xc0106720 PageDirectory::PageDirectory(PageDirectory*) - 0xc0106406 PageDirectory::PageDirectory() - 0xc0106be2 PageDirectory::allocFrame(unsigned int, bool, bool) - 0xc0106c6e PageDirectory::switchTo() - *fill* 0xc0106c95 0x3 00 - .text 0xc0106c98 0x239 MemoryManager/PageAlloc.ns.o - 0xc0106eb5 PageAlloc::free(void*) - 0xc0106cec PageAlloc::alloc(unsigned int*) - 0xc0106c98 PageAlloc::init() - *fill* 0xc0106ed1 0x3 00 - .text 0xc0106ed4 0x161 DeviceManager/Disp.ns.o - 0xc0106ede Disp::textRows() - 0xc0106fc1 Disp::clear() - 0xc0106ed4 Disp::textCols() - 0xc0106fdf Disp::setDisplay(Display*) - 0xc0106f60 Disp::moveCursor(unsigned short, unsigned short) - 0xc0106ee8 Disp::putChar(unsigned short, unsigned short, wchar, unsigned char) - *fill* 0xc0107035 0x3 00 - .text 0xc0107038 0x37d DeviceManager/Dev.ns.o - 0xc01070e9 Dev::registerDevice(Device*) - 0xc010710f Dev::unregisterDevice(Device*) - 0xc0107191 Dev::requestIRQ(Device*, int) - 0xc01071bd Dev::findDevices(String) - 0xc0107038 Dev::handleIRQ(registers_t, int) - *fill* 0xc01073b5 0x3 00 - .text 0xc01073b8 0x37 DeviceManager/Time.ns.o - 0xc01073b8 Time::setTimer(Timer*) - 0xc01073da Time::time() - 0xc01073c5 Time::uptime() - *fill* 0xc01073ef 0x1 00 - .text 0xc01073f0 0x6f6 DeviceManager/Kbd.ns.o - 0xc010752a Kbd::keyPress(unsigned char) - 0xc0107494 Kbd::updateLeds() - 0xc010746f Kbd::setKeymap(wchar*, wchar*, wchar*, wchar*) - 0xc010785b Kbd::keyRelease(unsigned char) - 0xc0107462 Kbd::setFocus(VirtualTerminal*) - 0xc01073f0 Kbd::process(Kbd::keypress_t) - *fill* 0xc0107ae6 0x2 00 - .text 0xc0107ae8 0x518 TaskManager/Process.class.o - 0xc0107e86 Process::exit() - 0xc0107ae8 Process::Process() - 0xc0107c0e Process::Process(String, unsigned int) - 0xc0107ff2 Process::setVirtualTerminal(VirtualTerminal*) - 0xc0107dfe Process::stackAlloc() - 0xc0107fe6 Process::getVirtualTerminal() - 0xc0107f0c Process::threadFinishes(Thread*, unsigned int) - 0xc0107db0 Process::~Process() - 0xc0107b0c Process::Process() - 0xc0107b30 Process::createKernel(String, VirtualTerminal*) - 0xc0107d62 Process::~Process() - 0xc0107cb8 Process::Process(String, unsigned int) - 0xc0107ee4 Process::registerThread(Thread*) - 0xc0107fda Process::getPagedir() - .text 0xc0108000 0x45d TaskManager/Thread.class.o - 0xc0108150 Thread::Thread(Process*, unsigned int (*)()) - 0xc010801e Thread::Thread() - 0xc0108250 Thread::setup(unsigned int (*)(), unsigned int) - 0xc01081d0 Thread::~Thread() - 0xc0108024 Thread::Thread(unsigned int (*)(), bool) - 0xc010839e Thread::sleep(unsigned int) - 0xc0108018 Thread::Thread() - 0xc01083c2 Thread::waitIRQ(unsigned char) - 0xc01080ba Thread::Thread(unsigned int (*)(), bool) - 0xc0108350 Thread::setState(unsigned int, unsigned int, unsigned int) - 0xc0108370 Thread::getEsp() - 0xc010837c Thread::getEbp() - 0xc0108394 Thread::getProcess() - 0xc0108388 Thread::getEip() - 0xc01082cc Thread::finish(unsigned int) - 0xc0108406 Thread::runnable() - 0xc0108210 Thread::~Thread() - 0xc0108190 Thread::Thread(Process*, unsigned int (*)()) - 0xc0108000 runThread(Thread*, unsigned int (*)()) - *fill* 0xc010845d 0x3 00 - .text 0xc0108460 0x578 TaskManager/Task.ns.o - 0xc01086db Task::IRQwakeup(unsigned char) - 0xc01086be Task::triggerSwitch() - 0xc01087e5 Task::getKernelProcess() - 0xc01088ab Task::registerProcess(Process*) - 0xc01086c5 Task::nextPid() - 0xc01088d1 Task::unregisterProcess(Process*) - 0xc0108829 Task::unregisterThread(Thread*) - 0xc0108803 Task::registerThread(Thread*) - 0xc0108460 Task::initialize(String, VirtualTerminal*) - 0xc010850f Task::nextThread() - 0xc0108757 Task::allocKernelPageTable(unsigned int, page_table_t*, unsigned int) - 0xc01085c4 Task::doSwitch() - *fill* 0xc01089d8 0x8 00 - .text 0xc01089e0 0x48 TaskManager/Task.wtf.o - 0xc01089e0 read_eip - 0xc01089e3 idle_task - 0xc01089ea copy_page_physical - .text 0xc0108a28 0x99 TaskManager/Mutex.class.o - 0xc0108a40 Mutex::Mutex(bool) - 0xc0108aaa Mutex::unlock() - 0xc0108a58 Mutex::lock() - 0xc0108a7a Mutex::waitLock() - 0xc0108ab6 Mutex::locked() - 0xc0108a28 Mutex::Mutex(bool) - *fill* 0xc0108ac1 0x3 00 - .text 0xc0108ac4 0xe27 VTManager/VirtualTerminal.class.o - 0xc0108e8c VirtualTerminal::map(int, int) - 0xc01091aa VirtualTerminal::put(wchar, bool) - 0xc0109594 VirtualTerminal::hexDump(unsigned char*, unsigned int) - 0xc0108f06 VirtualTerminal::unmap() - 0xc0109172 VirtualTerminal::setCursorLine(unsigned int) - 0xc0108cf8 VirtualTerminal::setColor(unsigned char, unsigned char) - 0xc0108c74 VirtualTerminal::~VirtualTerminal() - 0xc010918e VirtualTerminal::setCursorCol(unsigned int) - 0xc0108b9c VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) - 0xc0109110 VirtualTerminal::updateCursor() - 0xc0109380 VirtualTerminal::writeDec(int, bool) - 0xc0108cb6 VirtualTerminal::~VirtualTerminal() - 0xc0108f20 VirtualTerminal::redraw() - 0xc01094b8 VirtualTerminal::writeHex(unsigned int, bool) - 0xc0108ff8 VirtualTerminal::scroll() - 0xc0108ac4 VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) - 0xc0109314 VirtualTerminal::write(String, bool) - 0xc0108d46 VirtualTerminal::putChar(unsigned int, unsigned int, wchar) - 0xc0108e10 VirtualTerminal::clear() - 0xc010914c VirtualTerminal::moveCursor(unsigned int, unsigned int) - *fill* 0xc01098eb 0x1 00 - .text 0xc01098ec 0x595 VTManager/VirtualTerminal-kbd.class.o - 0xc0109a42 VirtualTerminal::getKeypress(bool, bool) - 0xc0109cb4 VirtualTerminal::readLine(bool) - 0xc01098ec VirtualTerminal::keyPress(Kbd::keypress_t) - *fill* 0xc0109e81 0x3 00 - .text 0xc0109e84 0x156 VTManager/VT.ns.o - 0xc0109eaa VT::unmap(VirtualTerminal*) - 0xc0109f31 VT::redrawScreen() - 0xc0109e84 VT::map(VirtualTerminal*) - *fill* 0xc0109fda 0x2 00 - .text 0xc0109fdc 0x2f1 Library/Bitset.class.o - 0xc010a2c2 Bitset::usedBits() - 0xc0109fdc Bitset::Bitset() - 0xc010a1e4 Bitset::testBit(unsigned int) - 0xc010a0aa Bitset::~Bitset() - 0xc010a17c Bitset::clearBit(unsigned int) - 0xc010a0c0 Bitset::init(unsigned int, unsigned int*) - 0xc0109fe8 Bitset::Bitset(unsigned int) - 0xc0109fe2 Bitset::Bitset() - 0xc010a01c Bitset::Bitset(unsigned int) - 0xc010a116 Bitset::setBit(unsigned int) - 0xc010a094 Bitset::~Bitset() - 0xc010a072 Bitset::Bitset(unsigned int, unsigned int*) - 0xc010a050 Bitset::Bitset(unsigned int, unsigned int*) - 0xc010a22c Bitset::firstFreeBit() - *fill* 0xc010a2cd 0x3 00 - .text 0xc010a2d0 0x123c Library/String.class.o - 0xc010a2d0 String::hex(unsigned int) - 0xc010ac62 String::operator==(char*) - 0xc010afa8 String::operator+=(wchar) - 0xc010b156 String::toInt() - 0xc010a8b0 String::String(String const&) - 0xc010a5be String::String() - 0xc010a5d6 String::String() - 0xc010b2ec String::size() - 0xc010a3de String::number(int) - 0xc010abe0 String::operator==(String&) - 0xc010b0d6 String::operator+(char*) - 0xc010a9ae String::~String() - 0xc010a7da String::String(String const&) - 0xc010a986 String::~String() - 0xc010a9d6 String::operator=(String const&) - 0xc010a5ee String::String(char*) - 0xc010ad22 String::operator+=(String&) - 0xc010b2da String::operator[](int) - 0xc010b33a String::split(wchar) - 0xc010b2f8 String::clear() - 0xc010b32a String::empty() - 0xc010b21e String::toInt16() - 0xc010b42e String::substr(int, int) - 0xc010a6e4 String::String(char*) - 0xc010ae50 String::operator+=(char*) - 0xc010b116 String::operator+(wchar) - 0xc010aacc String::operator=(char*) - 0xc010b096 String::operator+(String&) - .text 0xc010b50c 0xd47 Library/wchar.class.o - 0xc010b51a wchar::wchar() - 0xc010b586 wchar::wchar(char*) - 0xc010b50c wchar::wchar() - 0xc010b56c wchar::wchar(char*) - 0xc010b650 wchar::affectAscii(char) - 0xc010b5a0 wchar::utf8len(char*) - 0xc010b668 wchar::affectUtf8(char*) - 0xc010b528 wchar::wchar(char) - 0xc010b54a wchar::wchar(char) - 0xc010b830 wchar::toAscii() - *fill* 0xc010c253 0x1 00 - .text 0xc010c254 0x22c VFS/Partition.class.o - 0xc010c2aa Partition::Partition(BlockDevice*, unsigned char, unsigned long long, unsigned long long) - 0xc010c254 Partition::Partition(BlockDevice*, unsigned char, unsigned long long, unsigned long long) - 0xc010c462 Partition::getBlockSize() - 0xc010c456 Partition::getPartNumber() - 0xc010c430 Partition::getDevice() - 0xc010c398 Partition::writeBlocks(unsigned long long, unsigned int, unsigned char*) - 0xc010c448 Partition::getBlockCount() - 0xc010c43a Partition::getStartBlock() - 0xc010c300 Partition::readBlocks(unsigned long long, unsigned int, unsigned char*) - .text 0xc010c480 0x33d VFS/Part.ns.o - 0xc010c6e4 Part::getDeviceID(BlockDevice*) - 0xc010c480 Part::readPartitionTable(BlockDevice*) - 0xc010c4f8 Part::registerDevice(BlockDevice*) - 0xc010c599 Part::unregisterDevice(BlockDevice*) - *fill* 0xc010c7bd 0x3 00 - .text 0xc010c7c0 0xdae SyscallManager/IDT.ns.o - 0xc010d246 IDT::handleException(registers_t, int) - 0xc010c9ff IDT::init() - 0xc010c998 IDT::setGate(unsigned char, unsigned int, unsigned short, unsigned char) - 0xc010c7c0 interrupt_handler - *fill* 0xc010d56e 0x2 00 - .text 0xc010d570 0x222 SyscallManager/IDT.wtf.o - 0xc010d5a0 isr4 - 0xc010d67a isr27 - 0xc010d5f2 isr13 - 0xc010d724 irq12 - 0xc010d648 isr22 - 0xc010d602 isr15 - 0xc010d710 irq10 - 0xc010d738 irq14 - 0xc010d5d0 isr9 - 0xc010d6fc irq8 - 0xc010d652 isr23 - 0xc010d68e isr29 - 0xc010d760 int66 - 0xc010d6a2 isr31 - 0xc010d63e isr21 - 0xc010d71a irq11 - 0xc010d684 isr28 - 0xc010d5c8 isr8 - 0xc010d6de irq5 - 0xc010d634 isr20 - 0xc010d5fa isr14 - 0xc010d5aa isr5 - 0xc010d6e8 irq6 - 0xc010d6b6 irq1 - 0xc010d582 isr1 - 0xc010d706 irq9 - 0xc010d670 isr26 - 0xc010d5e2 isr11 - 0xc010d72e irq13 - 0xc010d5ea isr12 - 0xc010d578 isr0 - 0xc010d6c0 irq2 - 0xc010d65c isr24 - 0xc010d60c isr16 - 0xc010d596 isr3 - 0xc010d756 int65 - 0xc010d5b4 isr6 - 0xc010d6f2 irq7 - 0xc010d620 isr18 - 0xc010d6ac irq0 - 0xc010d5da isr10 - 0xc010d616 isr17 - 0xc010d58c isr2 - 0xc010d74c int64 - 0xc010d62a isr19 - 0xc010d570 idt_flush - 0xc010d698 isr30 - 0xc010d742 irq15 - 0xc010d5be isr7 - 0xc010d666 isr25 - 0xc010d6d4 irq4 - 0xc010d6ca irq3 - *fill* 0xc010d792 0x2 00 - .text 0xc010d794 0x185 Devices/Display/VGATextOutput.class.o - 0xc010d7bc VGATextOutput::getName() - 0xc010d7e4 VGATextOutput::textCols() - 0xc010d8e2 VGATextOutput::clear() - 0xc010d794 VGATextOutput::getClass() - 0xc010d85c VGATextOutput::moveCursor(unsigned short, unsigned short) - 0xc010d7f8 VGATextOutput::putChar(unsigned short, unsigned short, wchar, unsigned char) - 0xc010d7ee VGATextOutput::textRows() - *fill* 0xc010d919 0x3 00 - .text 0xc010d91c 0x204 Devices/Keyboard/PS2Keyboard.class.o - 0xc010d98c PS2Keyboard::PS2Keyboard() - 0xc010da4c PS2Keyboard::handleIRQ(registers_t, int) - 0xc010da24 PS2Keyboard::getName() - 0xc010dad6 PS2Keyboard::updateLeds(unsigned int) - 0xc010d91c PS2Keyboard::PS2Keyboard() - 0xc010d9fc PS2Keyboard::getClass() - .text 0xc010db20 0x8b0 Devices/Floppy/FloppyController.class.o - 0xc010dc9c FloppyController::dmaRelease() - 0xc010ddf2 FloppyController::FloppyController(unsigned int, unsigned char) - 0xc010e1ec FloppyController::writeCmd(unsigned char) - 0xc010e1a4 FloppyController::setActiveDrive(unsigned char) - 0xc010dcb0 floppyMotorTimer() - 0xc010db20 FloppyController::dmaInit(unsigned char, unsigned int) - 0xc010e0ec FloppyController::setDOR() - 0xc010e1d6 FloppyController::setNoActiveDrive() - 0xc010e002 FloppyController::getClass() - 0xc010e26e FloppyController::readData() - 0xc010dd84 FloppyController::FloppyController(unsigned int, unsigned char) - 0xc010e02a FloppyController::getName() - 0xc010de60 FloppyController::detect() - 0xc010e0aa FloppyController::checkInterrupt(int*, int*) - 0xc010e2dc FloppyController::reset() - .text 0xc010e3d0 0xf6e Devices/Floppy/FloppyDrive.class.o - 0xc010f2cc FloppyDrive::writeBlocks(unsigned long long, unsigned int, unsigned char*) - 0xc010e8ae FloppyDrive::setMotorState(bool) - 0xc010e4d2 FloppyDrive::FloppyDrive(FloppyController*, unsigned char, unsigned char) - 0xc010f02a FloppyDrive::readBlocks(unsigned long long, unsigned int, unsigned char*) - 0xc010e694 FloppyDrive::setup() - 0xc010e5d4 FloppyDrive::getClass() - 0xc010e5fc FloppyDrive::getName() - 0xc010f00e FloppyDrive::blocks() - 0xc010e3d0 FloppyDrive::FloppyDrive(FloppyController*, unsigned char, unsigned char) - 0xc010eb10 FloppyDrive::doTrack(unsigned int, unsigned char) - 0xc010e760 FloppyDrive::calibrate() - 0xc010ef6a FloppyDrive::readOnly() - 0xc010e958 FloppyDrive::killMotor() - 0xc010f2f0 FloppyDrive::chs2lba(unsigned int, unsigned int, unsigned int) - 0xc010f2e6 FloppyDrive::blockSize() - 0xc010e97a FloppyDrive::seek(unsigned int, int) - *fill* 0xc010f33e 0x2 00 - .text 0xc010f340 0x219 Devices/Timer.class.o - 0xc010f458 Timer::setFrequency(unsigned char) - 0xc010f340 Timer::Timer(unsigned char) - 0xc010f408 Timer::getClass() - 0xc010f430 Timer::getName() - 0xc010f4dc Timer::time() - 0xc010f516 Timer::handleIRQ(registers_t, int) - 0xc010f4d0 Timer::uptime() - 0xc010f3a4 Timer::Timer(unsigned char) - -.text._Znwj 0xc010f559 0x1b load address 0x0010f559 - .text._Znwj 0xc010f559 0x1b Core/kmain.wtf.o - 0xc010f559 operator new(unsigned int) - -.text._ZdaPv 0xc010f574 0x13 load address 0x0010f574 - .text._ZdaPv 0xc010f574 0x13 Core/kmain.wtf.o - 0xc010f574 operator delete[](void*) - -.text._ZN6Device9handleIRQE11registers_ti - 0xc010f588 0x5 load address 0x0010f588 - .text._ZN6Device9handleIRQE11registers_ti - 0xc010f588 0x5 Core/kmain.wtf.o - 0xc010f588 Device::handleIRQ(registers_t, int) - -.text._ZN15VirtualTerminallsE6String - 0xc010f58e 0x42 load address 0x0010f58e - .text._ZN15VirtualTerminallsE6String - 0xc010f58e 0x42 Core/kmain.wtf.o - 0xc010f58e VirtualTerminal::operator<<(String) - -.text._ZN15VirtualTerminallsEi - 0xc010f5d0 0x25 load address 0x0010f5d0 - .text._ZN15VirtualTerminallsEi - 0xc010f5d0 0x25 Core/kmain.wtf.o - 0xc010f5d0 VirtualTerminal::operator<<(int) - -.text._ZN15VirtualTerminallsEj - 0xc010f5f6 0x25 load address 0x0010f5f6 - .text._ZN15VirtualTerminallsEj - 0xc010f5f6 0x25 Core/kmain.wtf.o - 0xc010f5f6 VirtualTerminal::operator<<(unsigned int) - -.text._ZN6DeviceC2Ev - 0xc010f61c 0xe load address 0x0010f61c - .text._ZN6DeviceC2Ev - 0xc010f61c 0xe Core/kmain.wtf.o - 0xc010f61c Device::Device() - -.text._ZN7DisplayC2Ev - 0xc010f62a 0x1c load address 0x0010f62a - .text._ZN7DisplayC2Ev - 0xc010f62a 0x1c Core/kmain.wtf.o - 0xc010f62a Display::Display() - -.text._ZN13VGATextOutputC1Ev - 0xc010f646 0x1c load address 0x0010f646 - .text._ZN13VGATextOutputC1Ev - 0xc010f646 0x1c Core/kmain.wtf.o - 0xc010f646 VGATextOutput::VGATextOutput() - -.text._ZN6VectorIP6DeviceED1Ev - 0xc010f662 0x27 load address 0x0010f662 - .text._ZN6VectorIP6DeviceED1Ev - 0xc010f662 0x27 Core/kmain.wtf.o - 0xc010f662 Vector<Device*>::~Vector() - -.text._ZN6VectorIP6DeviceE4sizeEv - 0xc010f68a 0xb load address 0x0010f68a - .text._ZN6VectorIP6DeviceE4sizeEv - 0xc010f68a 0xb Core/kmain.wtf.o - 0xc010f68a Vector<Device*>::size() - -.text._ZN6VectorIP6DeviceEixEj - 0xc010f696 0x12 load address 0x0010f696 - .text._ZN6VectorIP6DeviceEixEj - 0xc010f696 0x12 Core/kmain.wtf.o - 0xc010f696 Vector<Device*>::operator[](unsigned int) - -.text._ZN6VectorIP11BlockDeviceE4sizeEv - 0xc010f6a8 0xb load address 0x0010f6a8 - .text._ZN6VectorIP11BlockDeviceE4sizeEv - 0xc010f6a8 0xb Core/kmain.wtf.o - 0xc010f6a8 Vector<BlockDevice*>::size() - -.text._ZN6VectorIP11BlockDeviceEixEj - 0xc010f6b4 0x12 load address 0x0010f6b4 - .text._ZN6VectorIP11BlockDeviceEixEj - 0xc010f6b4 0x12 Core/kmain.wtf.o - 0xc010f6b4 Vector<BlockDevice*>::operator[](unsigned int) - -.text._ZN6VectorIP9PartitionE4sizeEv - 0xc010f6c6 0xb load address 0x0010f6c6 - .text._ZN6VectorIP9PartitionE4sizeEv - 0xc010f6c6 0xb Core/kmain.wtf.o - 0xc010f6c6 Vector<Partition*>::size() - -.text._ZN6VectorIP9PartitionEixEj - 0xc010f6d2 0x12 load address 0x0010f6d2 - .text._ZN6VectorIP9PartitionEixEj - 0xc010f6d2 0x12 Core/kmain.wtf.o - 0xc010f6d2 Vector<Partition*>::operator[](unsigned int) - -.text._ZnwjPv 0xc010f6e4 0x8 load address 0x0010f6e4 - .text._ZnwjPv 0xc010f6e4 0x8 MemoryManager/PhysMem.ns.o - 0xc010f6e4 operator new(unsigned int, void*) - -.text._ZN6VectorIP6DeviceEC1Ev - 0xc010f6ec 0x18 load address 0x0010f6ec - .text._ZN6VectorIP6DeviceEC1Ev - 0xc010f6ec 0x18 DeviceManager/Dev.ns.o - 0xc010f6ec Vector<Device*>::Vector() - -.text._ZN6VectorIP6DeviceE4pushES1_ - 0xc010f704 0x91 load address 0x0010f704 - .text._ZN6VectorIP6DeviceE4pushES1_ - 0xc010f704 0x91 DeviceManager/Dev.ns.o - 0xc010f704 Vector<Device*>::push(Device*) - -.text._ZN6VectorIP6DeviceE4backEv - 0xc010f796 0x19 load address 0x0010f796 - .text._ZN6VectorIP6DeviceE4backEv - 0xc010f796 0x19 DeviceManager/Dev.ns.o - 0xc010f796 Vector<Device*>::back() - -.text._ZN6VectorIP6DeviceE3popEv - 0xc010f7b0 0x6d load address 0x0010f7b0 - .text._ZN6VectorIP6DeviceE3popEv - 0xc010f7b0 0x6d DeviceManager/Dev.ns.o - 0xc010f7b0 Vector<Device*>::pop() - -.text._ZN6VectorIP6DeviceEC1ERKS2_ - 0xc010f81e 0x7f load address 0x0010f81e - .text._ZN6VectorIP6DeviceEC1ERKS2_ - 0xc010f81e 0x7f DeviceManager/Dev.ns.o - 0xc010f81e Vector<Device*>::Vector(Vector<Device*> const&) - -.text._ZN5wcharaSEj - 0xc010f89e 0x10 load address 0x0010f89e - .text._ZN5wcharaSEj - 0xc010f89e 0x10 DeviceManager/Kbd.ns.o - 0xc010f89e wchar::operator=(unsigned int) - -.text._ZN5wcharcvjEv - 0xc010f8ae 0xa load address 0x0010f8ae - .text._ZN5wcharcvjEv - 0xc010f8ae 0xa DeviceManager/Kbd.ns.o - 0xc010f8ae wchar::operator unsigned int() - -.text._ZN3Kbd10keypress_tC1Ev - 0xc010f8b8 0x33 load address 0x0010f8b8 - .text._ZN3Kbd10keypress_tC1Ev - 0xc010f8b8 0x33 DeviceManager/Kbd.ns.o - 0xc010f8b8 Kbd::keypress_t::keypress_t() - -.text._ZdlPv 0xc010f8eb 0x13 load address 0x0010f8eb - .text._ZdlPv 0xc010f8eb 0x13 TaskManager/Process.class.o - 0xc010f8eb operator delete(void*) - -.text._ZN6VectorIP6ThreadEC1Ev - 0xc010f8fe 0x18 load address 0x0010f8fe - .text._ZN6VectorIP6ThreadEC1Ev - 0xc010f8fe 0x18 TaskManager/Process.class.o - 0xc010f8fe Vector<Thread*>::Vector() - -.text._ZN6VectorIP6ThreadED1Ev - 0xc010f916 0x27 load address 0x0010f916 - .text._ZN6VectorIP6ThreadED1Ev - 0xc010f916 0x27 TaskManager/Process.class.o - 0xc010f916 Vector<Thread*>::~Vector() - -.text._ZN6VectorIP6ThreadE5emptyEv - 0xc010f93e 0x10 load address 0x0010f93e - .text._ZN6VectorIP6ThreadE5emptyEv - 0xc010f93e 0x10 TaskManager/Process.class.o - 0xc010f93e Vector<Thread*>::empty() - -.text._ZN6VectorIP6ThreadE4backEv - 0xc010f94e 0x19 load address 0x0010f94e - .text._ZN6VectorIP6ThreadE4backEv - 0xc010f94e 0x19 TaskManager/Process.class.o - 0xc010f94e Vector<Thread*>::back() - -.text._ZN6VectorIP6ThreadE3popEv - 0xc010f968 0x6d load address 0x0010f968 - .text._ZN6VectorIP6ThreadE3popEv - 0xc010f968 0x6d TaskManager/Process.class.o - 0xc010f968 Vector<Thread*>::pop() - -.text._ZN6VectorIP6ThreadE4pushES1_ - 0xc010f9d6 0x91 load address 0x0010f9d6 - .text._ZN6VectorIP6ThreadE4pushES1_ - 0xc010f9d6 0x91 TaskManager/Process.class.o - 0xc010f9d6 Vector<Thread*>::push(Thread*) - -.text._ZN6VectorIP6ThreadEixEj - 0xc010fa68 0x12 load address 0x0010fa68 - .text._ZN6VectorIP6ThreadEixEj - 0xc010fa68 0x12 TaskManager/Process.class.o - 0xc010fa68 Vector<Thread*>::operator[](unsigned int) - -.text._ZN6VectorIP6ThreadE4sizeEv - 0xc010fa7a 0xb load address 0x0010fa7a - .text._ZN6VectorIP6ThreadE4sizeEv - 0xc010fa7a 0xb TaskManager/Process.class.o - 0xc010fa7a Vector<Thread*>::size() - -.text._ZN6Thread10irqHappensEh - 0xc010fa86 0x38 load address 0x0010fa86 - .text._ZN6Thread10irqHappensEh - 0xc010fa86 0x38 TaskManager/Task.ns.o - 0xc010fa86 Thread::irqHappens(unsigned char) - -.text._ZN6VectorIP7ProcessEC1Ev - 0xc010fabe 0x18 load address 0x0010fabe - .text._ZN6VectorIP7ProcessEC1Ev - 0xc010fabe 0x18 TaskManager/Task.ns.o - 0xc010fabe Vector<Process*>::Vector() - -.text._ZN6VectorIP6ThreadE5clearEv - 0xc010fad6 0x3a load address 0x0010fad6 - .text._ZN6VectorIP6ThreadE5clearEv - 0xc010fad6 0x3a TaskManager/Task.ns.o - 0xc010fad6 Vector<Thread*>::clear() - -.text._ZN6VectorIP7ProcessE5clearEv - 0xc010fb10 0x3a load address 0x0010fb10 - .text._ZN6VectorIP7ProcessE5clearEv - 0xc010fb10 0x3a TaskManager/Task.ns.o - 0xc010fb10 Vector<Process*>::clear() - -.text._ZN6VectorIP7ProcessE4sizeEv - 0xc010fb4a 0xb load address 0x0010fb4a - .text._ZN6VectorIP7ProcessE4sizeEv - 0xc010fb4a 0xb TaskManager/Task.ns.o - 0xc010fb4a Vector<Process*>::size() - -.text._ZN6VectorIP7ProcessEixEj - 0xc010fb56 0x12 load address 0x0010fb56 - .text._ZN6VectorIP7ProcessEixEj - 0xc010fb56 0x12 TaskManager/Task.ns.o - 0xc010fb56 Vector<Process*>::operator[](unsigned int) - -.text._ZN6VectorIP7ProcessE4pushES1_ - 0xc010fb68 0x91 load address 0x0010fb68 - .text._ZN6VectorIP7ProcessE4pushES1_ - 0xc010fb68 0x91 TaskManager/Task.ns.o - 0xc010fb68 Vector<Process*>::push(Process*) - -.text._ZN6VectorIP7ProcessE4backEv - 0xc010fbfa 0x19 load address 0x0010fbfa - .text._ZN6VectorIP7ProcessE4backEv - 0xc010fbfa 0x19 TaskManager/Task.ns.o - 0xc010fbfa Vector<Process*>::back() - -.text._ZN6VectorIP7ProcessE3popEv - 0xc010fc14 0x6d load address 0x0010fc14 - .text._ZN6VectorIP7ProcessE3popEv - 0xc010fc14 0x6d TaskManager/Task.ns.o - 0xc010fc14 Vector<Process*>::pop() - -.text._ZN6VectorIP7ProcessE5emptyEv - 0xc010fc82 0x10 load address 0x0010fc82 - .text._ZN6VectorIP7ProcessE5emptyEv - 0xc010fc82 0x10 TaskManager/Task.ns.o - 0xc010fc82 Vector<Process*>::empty() - -.text._ZN6VectorIP7ProcessED1Ev - 0xc010fc92 0x27 load address 0x0010fc92 - .text._ZN6VectorIP7ProcessED1Ev - 0xc010fc92 0x27 TaskManager/Task.ns.o - 0xc010fc92 Vector<Process*>::~Vector() - -.text._Znaj 0xc010fcb9 0x1b load address 0x0010fcb9 - .text._Znaj 0xc010fcb9 0x1b VTManager/VirtualTerminal.class.o - 0xc010fcb9 operator new[](unsigned int) - -.text._ZN3chrC1Ev - 0xc010fcd4 0x16 load address 0x0010fcd4 - .text._ZN3chrC1Ev - 0xc010fcd4 0x16 VTManager/VirtualTerminal.class.o - 0xc010fcd4 chr::chr() - -.text._ZN6VectorIN3Kbd10keypress_tEEC1Ev - 0xc010fcea 0x18 load address 0x0010fcea - .text._ZN6VectorIN3Kbd10keypress_tEEC1Ev - 0xc010fcea 0x18 VTManager/VirtualTerminal.class.o - 0xc010fcea Vector<Kbd::keypress_t>::Vector() - -.text._ZN6VectorIN3Kbd10keypress_tEED1Ev - 0xc010fd02 0x27 load address 0x0010fd02 - .text._ZN6VectorIN3Kbd10keypress_tEED1Ev - 0xc010fd02 0x27 VTManager/VirtualTerminal.class.o - 0xc010fd02 Vector<Kbd::keypress_t>::~Vector() - -.text._ZN6VectorIN3Kbd10keypress_tEE4pushES1_ - 0xc010fd2a 0xaf load address 0x0010fd2a - .text._ZN6VectorIN3Kbd10keypress_tEE4pushES1_ - 0xc010fd2a 0xaf VTManager/VirtualTerminal-kbd.class.o - 0xc010fd2a Vector<Kbd::keypress_t>::push(Kbd::keypress_t) - -.text._ZN6VectorIN3Kbd10keypress_tEE5emptyEv - 0xc010fdda 0x10 load address 0x0010fdda - .text._ZN6VectorIN3Kbd10keypress_tEE5emptyEv - 0xc010fdda 0x10 VTManager/VirtualTerminal-kbd.class.o - 0xc010fdda Vector<Kbd::keypress_t>::empty() - -.text._ZN6VectorIN3Kbd10keypress_tEEixEj - 0xc010fdea 0x19 load address 0x0010fdea - .text._ZN6VectorIN3Kbd10keypress_tEEixEj - 0xc010fdea 0x19 VTManager/VirtualTerminal-kbd.class.o - 0xc010fdea Vector<Kbd::keypress_t>::operator[](unsigned int) - -.text._ZN6VectorIN3Kbd10keypress_tEE4sizeEv - 0xc010fe04 0xb load address 0x0010fe04 - .text._ZN6VectorIN3Kbd10keypress_tEE4sizeEv - 0xc010fe04 0xb VTManager/VirtualTerminal-kbd.class.o - 0xc010fe04 Vector<Kbd::keypress_t>::size() - -.text._ZN3Kbd10keypress_tD1Ev - 0xc010fe10 0x5 load address 0x0010fe10 - .text._ZN3Kbd10keypress_tD1Ev - 0xc010fe10 0x5 VTManager/VirtualTerminal-kbd.class.o - 0xc010fe10 Kbd::keypress_t::~keypress_t() - -.text._ZN6VectorIN3Kbd10keypress_tEE3popEv - 0xc010fe16 0x98 load address 0x0010fe16 - .text._ZN6VectorIN3Kbd10keypress_tEE3popEv - 0xc010fe16 0x98 VTManager/VirtualTerminal-kbd.class.o - 0xc010fe16 Vector<Kbd::keypress_t>::pop() - -.text._ZN6VectorIP15VirtualTerminalEC1Ev - 0xc010feae 0x18 load address 0x0010feae - .text._ZN6VectorIP15VirtualTerminalEC1Ev - 0xc010feae 0x18 VTManager/VT.ns.o - 0xc010feae Vector<VirtualTerminal*>::Vector() - -.text._ZN6VectorIP15VirtualTerminalE4pushES1_ - 0xc010fec6 0x91 load address 0x0010fec6 - .text._ZN6VectorIP15VirtualTerminalE4pushES1_ - 0xc010fec6 0x91 VTManager/VT.ns.o - 0xc010fec6 Vector<VirtualTerminal*>::push(VirtualTerminal*) - -.text._ZN6VectorIP15VirtualTerminalE4sizeEv - 0xc010ff58 0xb load address 0x0010ff58 - .text._ZN6VectorIP15VirtualTerminalE4sizeEv - 0xc010ff58 0xb VTManager/VT.ns.o - 0xc010ff58 Vector<VirtualTerminal*>::size() - -.text._ZN6VectorIP15VirtualTerminalEixEj - 0xc010ff64 0x12 load address 0x0010ff64 - .text._ZN6VectorIP15VirtualTerminalEixEj - 0xc010ff64 0x12 VTManager/VT.ns.o - 0xc010ff64 Vector<VirtualTerminal*>::operator[](unsigned int) - -.text._ZN6VectorIP15VirtualTerminalE4backEv - 0xc010ff76 0x19 load address 0x0010ff76 - .text._ZN6VectorIP15VirtualTerminalE4backEv - 0xc010ff76 0x19 VTManager/VT.ns.o - 0xc010ff76 Vector<VirtualTerminal*>::back() - -.text._ZN6VectorIP15VirtualTerminalE3popEv - 0xc010ff90 0x6d load address 0x0010ff90 - .text._ZN6VectorIP15VirtualTerminalE3popEv - 0xc010ff90 0x6d VTManager/VT.ns.o - 0xc010ff90 Vector<VirtualTerminal*>::pop() - -.text._ZN6VectorIP15VirtualTerminalED1Ev - 0xc010fffe 0x27 load address 0x0010fffe - .text._ZN6VectorIP15VirtualTerminalED1Ev - 0xc010fffe 0x27 VTManager/VT.ns.o - 0xc010fffe Vector<VirtualTerminal*>::~Vector() - -.text._ZN5wchareqEj - 0xc0110026 0x10 load address 0x00110026 - .text._ZN5wchareqEj - 0xc0110026 0x10 Library/String.class.o - 0xc0110026 wchar::operator==(unsigned int) - -.text._ZN6VectorI6StringEC1Ev - 0xc0110036 0x18 load address 0x00110036 - .text._ZN6VectorI6StringEC1Ev - 0xc0110036 0x18 Library/String.class.o - 0xc0110036 Vector<String>::Vector() - -.text._ZN6VectorI6StringE4pushES0_ - 0xc011004e 0x9b load address 0x0011004e - .text._ZN6VectorI6StringE4pushES0_ - 0xc011004e 0x9b Library/String.class.o - 0xc011004e Vector<String>::push(String) - -.text._ZN6VectorI6StringE4backEv - 0xc01100ea 0x19 load address 0x001100ea - .text._ZN6VectorI6StringE4backEv - 0xc01100ea 0x19 Library/String.class.o - 0xc01100ea Vector<String>::back() - -.text._ZN6VectorIP11BlockDeviceEC1Ev - 0xc0110104 0x18 load address 0x00110104 - .text._ZN6VectorIP11BlockDeviceEC1Ev - 0xc0110104 0x18 VFS/Part.ns.o - 0xc0110104 Vector<BlockDevice*>::Vector() - -.text._ZN6VectorIP9PartitionEC1Ev - 0xc011011c 0x18 load address 0x0011011c - .text._ZN6VectorIP9PartitionEC1Ev - 0xc011011c 0x18 VFS/Part.ns.o - 0xc011011c Vector<Partition*>::Vector() - -.text._ZN6VectorIP9PartitionE4pushES1_ - 0xc0110134 0x91 load address 0x00110134 - .text._ZN6VectorIP9PartitionE4pushES1_ - 0xc0110134 0x91 VFS/Part.ns.o - 0xc0110134 Vector<Partition*>::push(Partition*) - -.text._ZN6VectorIP11BlockDeviceE4pushES1_ - 0xc01101c6 0x91 load address 0x001101c6 - .text._ZN6VectorIP11BlockDeviceE4pushES1_ - 0xc01101c6 0x91 VFS/Part.ns.o - 0xc01101c6 Vector<BlockDevice*>::push(BlockDevice*) - -.text._ZN6VectorIP9PartitionE4backEv - 0xc0110258 0x19 load address 0x00110258 - .text._ZN6VectorIP9PartitionE4backEv - 0xc0110258 0x19 VFS/Part.ns.o - 0xc0110258 Vector<Partition*>::back() - -.text._ZN6VectorIP9PartitionE3popEv - 0xc0110272 0x6d load address 0x00110272 - .text._ZN6VectorIP9PartitionE3popEv - 0xc0110272 0x6d VFS/Part.ns.o - 0xc0110272 Vector<Partition*>::pop() - -.text._ZN6VectorIP11BlockDeviceE5emptyEv - 0xc01102e0 0x10 load address 0x001102e0 - .text._ZN6VectorIP11BlockDeviceE5emptyEv - 0xc01102e0 0x10 VFS/Part.ns.o - 0xc01102e0 Vector<BlockDevice*>::empty() - -.text._ZN6VectorIP11BlockDeviceE4backEv - 0xc01102f0 0x19 load address 0x001102f0 - .text._ZN6VectorIP11BlockDeviceE4backEv - 0xc01102f0 0x19 VFS/Part.ns.o - 0xc01102f0 Vector<BlockDevice*>::back() - -.text._ZN6VectorIP11BlockDeviceE3popEv - 0xc011030a 0x6d load address 0x0011030a - .text._ZN6VectorIP11BlockDeviceE3popEv - 0xc011030a 0x6d VFS/Part.ns.o - 0xc011030a Vector<BlockDevice*>::pop() - -.text._ZN6VectorIP11BlockDeviceED1Ev - 0xc0110378 0x27 load address 0x00110378 - .text._ZN6VectorIP11BlockDeviceED1Ev - 0xc0110378 0x27 VFS/Part.ns.o - 0xc0110378 Vector<BlockDevice*>::~Vector() - -.text._ZN6VectorIP9PartitionED1Ev - 0xc01103a0 0x27 load address 0x001103a0 - .text._ZN6VectorIP9PartitionED1Ev - 0xc01103a0 0x27 VFS/Part.ns.o - 0xc01103a0 Vector<Partition*>::~Vector() - -.text._ZN6Thread14enterInterruptEv - 0xc01103c8 0xc load address 0x001103c8 - .text._ZN6Thread14enterInterruptEv - 0xc01103c8 0xc SyscallManager/IDT.ns.o - 0xc01103c8 Thread::enterInterrupt() - -.text._ZN6Thread13exitInterruptEv - 0xc01103d4 0xc load address 0x001103d4 - .text._ZN6Thread13exitInterruptEv - 0xc01103d4 0xc SyscallManager/IDT.ns.o - 0xc01103d4 Thread::exitInterrupt() - -.text._ZN8KeyboardC2Ev - 0xc01103e0 0x1c load address 0x001103e0 - .text._ZN8KeyboardC2Ev - 0xc01103e0 0x1c Devices/Keyboard/PS2Keyboard.class.o - 0xc01103e0 Keyboard::Keyboard() - -.text._ZN11BlockDevice8chsToLBAEjjj - 0xc01103fc 0xf load address 0x001103fc - .text._ZN11BlockDevice8chsToLBAEjjj - 0xc01103fc 0xf Devices/Floppy/FloppyDrive.class.o - 0xc01103fc BlockDevice::chsToLBA(unsigned int, unsigned int, unsigned int) - -.text._ZN11BlockDeviceC2Ev - 0xc011040c 0x1c load address 0x0011040c - .text._ZN11BlockDeviceC2Ev - 0xc011040c 0x1c Devices/Floppy/FloppyDrive.class.o - 0xc011040c BlockDevice::BlockDevice() - -.rodata 0xc0111000 0xe67 load address 0x00111000 - *(.rodata) - .rodata 0xc0111000 0x782 Core/kmain.wtf.o - .rodata 0xc0111782 0x4f Core/Sys.ns.o - .rodata 0xc01117d1 0x5c MemoryManager/PhysMem.ns.o - *fill* 0xc011182d 0x3 00 - .rodata 0xc0111830 0x6f MemoryManager/PageAlloc.ns.o - .rodata 0xc011189f 0x9 DeviceManager/Kbd.ns.o - .rodata 0xc01118a8 0x63 TaskManager/Thread.class.o - .rodata 0xc011190b 0x19 VTManager/VirtualTerminal.class.o - .rodata 0xc0111924 0x9 VTManager/VirtualTerminal-kbd.class.o - .rodata 0xc011192d 0x5 Library/String.class.o - .rodata 0xc0111932 0x1be Library/wchar.class.o - *fill* 0xc0111af0 0x10 00 - .rodata 0xc0111b00 0x240 SyscallManager/IDT.ns.o - .rodata 0xc0111d40 0x30 Devices/Display/VGATextOutput.class.o - .rodata 0xc0111d70 0x23 Devices/Keyboard/PS2Keyboard.class.o - .rodata 0xc0111d93 0x39 Devices/Floppy/FloppyController.class.o - .rodata 0xc0111dcc 0x78 Devices/Floppy/FloppyDrive.class.o - .rodata 0xc0111e44 0x23 Devices/Timer.class.o - -.rodata._ZTV7Display - 0xc0111e80 0x28 load address 0x00111e80 - .rodata._ZTV7Display - 0xc0111e80 0x28 Core/kmain.wtf.o - 0xc0111e80 vtable for Display - -.rodata._ZTV6Device - 0xc0111ea8 0x14 load address 0x00111ea8 - .rodata._ZTV6Device - 0xc0111ea8 0x14 Core/kmain.wtf.o - 0xc0111ea8 vtable for Device - -.rodata._ZTV13VGATextOutput - 0xc0111ec0 0x28 load address 0x00111ec0 - .rodata._ZTV13VGATextOutput - 0xc0111ec0 0x28 Devices/Display/VGATextOutput.class.o - 0xc0111ec0 vtable for VGATextOutput - -.rodata._ZTV11PS2Keyboard - 0xc0111ee8 0x18 load address 0x00111ee8 - .rodata._ZTV11PS2Keyboard - 0xc0111ee8 0x18 Devices/Keyboard/PS2Keyboard.class.o - 0xc0111ee8 vtable for PS2Keyboard - -.rodata._ZTV8Keyboard - 0xc0111f00 0x18 load address 0x00111f00 - .rodata._ZTV8Keyboard - 0xc0111f00 0x18 Devices/Keyboard/PS2Keyboard.class.o - 0xc0111f00 vtable for Keyboard - -.rodata._ZTV16FloppyController - 0xc0111f18 0x14 load address 0x00111f18 - .rodata._ZTV16FloppyController - 0xc0111f18 0x14 Devices/Floppy/FloppyController.class.o - 0xc0111f18 vtable for FloppyController - -.rodata._ZTV11FloppyDrive - 0xc0111f40 0x2c load address 0x00111f40 - .rodata._ZTV11FloppyDrive - 0xc0111f40 0x2c Devices/Floppy/FloppyDrive.class.o - 0xc0111f40 vtable for FloppyDrive - -.rodata._ZTV11BlockDevice - 0xc0111f80 0x2c load address 0x00111f80 - .rodata._ZTV11BlockDevice - 0xc0111f80 0x2c Devices/Floppy/FloppyDrive.class.o - 0xc0111f80 vtable for BlockDevice - -.rodata._ZTV5Timer - 0xc0111fb0 0x14 load address 0x00111fb0 - .rodata._ZTV5Timer - 0xc0111fb0 0x14 Devices/Timer.class.o - 0xc0111fb0 vtable for Timer - -.rel.dyn 0xc0111fc4 0x0 load address 0x00111fc4 - .rel.text 0x00000000 0x0 Core/loader.wtf.o - .rel.text._Znwj - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZdaPv - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN15VirtualTerminallsE6String - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN15VirtualTerminallsEi - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN15VirtualTerminallsEj - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6DeviceC2Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN7DisplayC2Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN13VGATextOutputC1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP6DeviceED1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.rodata._ZTV7Display - 0x00000000 0x0 Core/loader.wtf.o - .rel.rodata._ZTV6Device - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP6DeviceE4pushES1_ - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP6DeviceEC1ERKS2_ - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN3Kbd10keypress_tC1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP6ThreadED1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP6ThreadE4pushES1_ - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP6ThreadE5clearEv - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP7ProcessE5clearEv - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP7ProcessE4pushES1_ - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP7ProcessED1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN3chrC1Ev - 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/loader.wtf.o - .rel.text._ZN6VectorIP15VirtualTerminalED1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorI6StringE4pushES0_ - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP9PartitionE4pushES1_ - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP11BlockDeviceE4pushES1_ - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP11BlockDeviceED1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN6VectorIP9PartitionED1Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.rodata._ZTV13VGATextOutput - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN8KeyboardC2Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.rodata._ZTV8Keyboard - 0x00000000 0x0 Core/loader.wtf.o - .rel.rodata._ZTV16FloppyController - 0x00000000 0x0 Core/loader.wtf.o - .rel.text._ZN11BlockDeviceC2Ev - 0x00000000 0x0 Core/loader.wtf.o - .rel.rodata._ZTV11FloppyDrive - 0x00000000 0x0 Core/loader.wtf.o - .rel.rodata._ZTV11BlockDevice - 0x00000000 0x0 Core/loader.wtf.o - -.data 0xc0112000 0x144 load address 0x00112000 - 0xc0112000 start_ctors = . - *(.ctor*) - .ctors 0xc0112000 0x4 Core/kmain.wtf.o - .ctors 0xc0112004 0x4 DeviceManager/Dev.ns.o - .ctors 0xc0112008 0x4 TaskManager/Task.ns.o - .ctors 0xc011200c 0x4 VTManager/VT.ns.o - .ctors 0xc0112010 0x4 Library/wchar.class.o - .ctors 0xc0112014 0x4 VFS/Part.ns.o - .ctors 0xc0112018 0x4 Devices/Floppy/FloppyController.class.o - 0xc011201c end_ctors = . - 0xc011201c start_dtors = . - *(.dtor*) - 0xc011201c end_dtors = . - *(.data) - .data 0xc011201c 0x24 Core/kmain.wtf.o - 0xc011203c melonLogoCols - 0xc011201c melonLogo - 0xc0112038 melonLogoLines - .data 0xc0112040 0x0 Core/cppsupport.wtf.o - .data 0xc0112040 0x0 Core/Sys.ns.o - .data 0xc0112040 0x0 Core/CMem.ns.o - .data 0xc0112040 0x0 MemoryManager/Mem.ns.o - .data 0xc0112040 0x0 MemoryManager/PhysMem.ns.o - .data 0xc0112040 0x0 MemoryManager/GDT.ns.o - .data 0xc0112040 0x0 MemoryManager/PageDirectory.class.o - .data 0xc0112040 0x0 MemoryManager/PageAlloc.ns.o - .data 0xc0112040 0x0 DeviceManager/Disp.ns.o - .data 0xc0112040 0x0 DeviceManager/Dev.ns.o - .data 0xc0112040 0x0 DeviceManager/Time.ns.o - .data 0xc0112040 0x100 DeviceManager/Kbd.ns.o - 0xc0112040 Kbd::ctrlkeys - .data 0xc0112140 0x0 TaskManager/Process.class.o - .data 0xc0112140 0x0 TaskManager/Thread.class.o - .data 0xc0112140 0x4 TaskManager/Task.ns.o - 0xc0112140 Task::nextpid - .data 0xc0112144 0x0 TaskManager/Mutex.class.o - .data 0xc0112144 0x0 VTManager/VirtualTerminal.class.o - .data 0xc0112144 0x0 VTManager/VirtualTerminal-kbd.class.o - .data 0xc0112144 0x0 VTManager/VT.ns.o - .data 0xc0112144 0x0 Library/Bitset.class.o - .data 0xc0112144 0x0 Library/String.class.o - .data 0xc0112144 0x0 Library/wchar.class.o - .data 0xc0112144 0x0 VFS/Partition.class.o - .data 0xc0112144 0x0 VFS/Part.ns.o - .data 0xc0112144 0x0 SyscallManager/IDT.ns.o - .data 0xc0112144 0x0 Devices/Display/VGATextOutput.class.o - .data 0xc0112144 0x0 Devices/Keyboard/PS2Keyboard.class.o - .data 0xc0112144 0x0 Devices/Floppy/FloppyController.class.o - .data 0xc0112144 0x0 Devices/Floppy/FloppyDrive.class.o - .data 0xc0112144 0x0 Devices/Timer.class.o - -.bss 0xc0118000 0x14800 load address 0x00118000 - 0xc0118000 sbss = . - *(COMMON) - *(.bss) - .bss 0xc0118000 0x4000 Core/loader.wtf.o - .bss 0xc011c000 0x800 Core/kmain.wtf.o - 0xc011c600 keymapFR_shiftaltgr - 0xc011c000 keymapFR_normal - 0xc011c400 keymapFR_altgr - 0xc011c200 keymapFR_shift - .bss 0xc011c800 0x4 Core/cppsupport.wtf.o - 0xc011c800 __dso_handle - .bss 0xc011c804 0x0 Core/Sys.ns.o - .bss 0xc011c804 0x0 Core/CMem.ns.o - .bss 0xc011c804 0x1c MemoryManager/Mem.ns.o - 0xc011c818 Mem::heapStart - 0xc011c805 Mem::pagingEnabled - 0xc011c80c Mem::kheapFree - 0xc011c81c Mem::heapEnd - 0xc011c804 Mem::kheapUsable - 0xc011c808 Mem::placementAddress - 0xc011c810 Mem::heapIndex - .bss 0xc011c820 0xc MemoryManager/PhysMem.ns.o - 0xc011c820 kernelPageDirectory - 0xc011c828 PhysMem::frames - 0xc011c824 PhysMem::nframes - *fill* 0xc011c82c 0x14 00 - .bss 0xc011c840 0x2e MemoryManager/GDT.ns.o - 0xc011c868 GDT::gdt_ptr - 0xc011c840 GDT::gdt_entries - *fill* 0xc011c86e 0x2 00 - .bss 0xc011c870 0x0 MemoryManager/PageDirectory.class.o - .bss 0xc011c870 0x12 MemoryManager/PageAlloc.ns.o - 0xc011c880 PageAlloc::usable - 0xc011c870 PageAlloc::freePage - 0xc011c87c PageAlloc::freec - 0xc011c881 PageAlloc::locked - *fill* 0xc011c882 0x2 00 - .bss 0xc011c884 0xc DeviceManager/Disp.ns.o - 0xc011c884 Disp::mode - *fill* 0xc011c890 0x10 00 - .bss 0xc011c8a0 0x60 DeviceManager/Dev.ns.o - 0xc011c8a0 Dev::devices - 0xc011c8c0 Dev::irqHandler - .bss 0xc011c900 0x4 DeviceManager/Time.ns.o - 0xc011c900 Time::timer - .bss 0xc011c904 0x18 DeviceManager/Kbd.ns.o - 0xc011c90c Kbd::keymapAltgr - 0xc011c914 Kbd::kbdstatus - 0xc011c918 Kbd::focusedVT - 0xc011c908 Kbd::keymapShift - 0xc011c904 Kbd::keymapNormal - 0xc011c910 Kbd::keymapShiftAltgr - .bss 0xc011c91c 0x0 TaskManager/Process.class.o - .bss 0xc011c91c 0x0 TaskManager/Thread.class.o - .bss 0xc011c91c 0x20 TaskManager/Task.ns.o - 0xc011c91c Task::processes - 0xc011c92c Task::currentThread - 0xc011c934 Task::idleThread - 0xc011c938 Task::currentThreadId - 0xc011c924 Task::threads - 0xc011c930 Task::currentProcess - .bss 0xc011c93c 0x0 TaskManager/Mutex.class.o - .bss 0xc011c93c 0x0 VTManager/VirtualTerminal.class.o - .bss 0xc011c93c 0x0 VTManager/VirtualTerminal-kbd.class.o - .bss 0xc011c93c 0x8 VTManager/VT.ns.o - 0xc011c93c VT::mappedVTs - .bss 0xc011c944 0x0 Library/Bitset.class.o - .bss 0xc011c944 0x0 Library/String.class.o - *fill* 0xc011c944 0x1c 00 - .bss 0xc011c960 0x200 Library/wchar.class.o - 0xc011c960 wchar::CP437 - .bss 0xc011cb60 0x0 VFS/Partition.class.o - .bss 0xc011cb60 0x10 VFS/Part.ns.o - 0xc011cb68 Part::partitions - 0xc011cb60 Part::devices - *fill* 0xc011cb70 0x10 00 - .bss 0xc011cb80 0x806 SyscallManager/IDT.ns.o - 0xc011cb80 IDT::idt_entries - 0xc011d380 IDT::idt_ptr - *fill* 0xc011d386 0x2 00 - .bss 0xc011d388 0x0 Devices/Display/VGATextOutput.class.o - .bss 0xc011d388 0x0 Devices/Keyboard/PS2Keyboard.class.o - *fill* 0xc011d388 0x2c78 00 - .bss 0xc0120000 0xc800 Devices/Floppy/FloppyController.class.o - 0xc0120000 FloppyController::dmaMutex - 0xc0128000 FloppyController::dmabuff - .bss 0xc012c800 0x0 Devices/Floppy/FloppyDrive.class.o - .bss 0xc012c800 0x0 Devices/Timer.class.o - 0xc012c800 ebss = . - 0xc012c800 end = . - 0xc012c800 _end = . - 0xc012c800 __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 -LOAD MemoryManager/Mem.ns.o -LOAD MemoryManager/PhysMem.ns.o -LOAD MemoryManager/GDT.wtf.o -LOAD MemoryManager/GDT.ns.o -LOAD MemoryManager/PageDirectory.class.o -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 -LOAD Library/wchar.class.o -LOAD VFS/Partition.class.o -LOAD VFS/Part.ns.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/Floppy/FloppyController.class.o -LOAD Devices/Floppy/FloppyDrive.class.o -LOAD Devices/Timer.class.o -OUTPUT(Melon.ke elf32-i386) - -.comment 0x00000000 0x2aa - .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 - .comment 0x00000067 0x12 MemoryManager/Mem.ns.o - .comment 0x00000079 0x12 MemoryManager/PhysMem.ns.o - .comment 0x0000008b 0x1f MemoryManager/GDT.wtf.o - .comment 0x000000aa 0x12 MemoryManager/GDT.ns.o - .comment 0x000000bc 0x12 MemoryManager/PageDirectory.class.o - .comment 0x000000ce 0x12 MemoryManager/PageAlloc.ns.o - .comment 0x000000e0 0x12 DeviceManager/Disp.ns.o - .comment 0x000000f2 0x12 DeviceManager/Dev.ns.o - .comment 0x00000104 0x12 DeviceManager/Time.ns.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 VFS/Partition.class.o - .comment 0x0000020d 0x12 VFS/Part.ns.o - .comment 0x0000021f 0x12 SyscallManager/IDT.ns.o - .comment 0x00000231 0x1f SyscallManager/IDT.wtf.o - .comment 0x00000250 0x12 Devices/Display/VGATextOutput.class.o - .comment 0x00000262 0x12 Devices/Keyboard/PS2Keyboard.class.o - .comment 0x00000274 0x12 Devices/Floppy/FloppyController.class.o - .comment 0x00000286 0x12 Devices/Floppy/FloppyDrive.class.o - .comment 0x00000298 0x12 Devices/Timer.class.o - -.note.GNU-stack - 0x00000000 0x0 - .note.GNU-stack - 0x00000000 0x0 Core/kmain.wtf.o - .note.GNU-stack - 0x00000000 0x0 Core/cppsupport.wtf.o - .note.GNU-stack - 0x00000000 0x0 Core/Sys.ns.o - .note.GNU-stack - 0x00000000 0x0 Core/CMem.ns.o - .note.GNU-stack - 0x00000000 0x0 MemoryManager/Mem.ns.o - .note.GNU-stack - 0x00000000 0x0 MemoryManager/PhysMem.ns.o - .note.GNU-stack - 0x00000000 0x0 MemoryManager/GDT.ns.o - .note.GNU-stack - 0x00000000 0x0 MemoryManager/PageDirectory.class.o - .note.GNU-stack - 0x00000000 0x0 MemoryManager/PageAlloc.ns.o - .note.GNU-stack - 0x00000000 0x0 DeviceManager/Disp.ns.o - .note.GNU-stack - 0x00000000 0x0 DeviceManager/Dev.ns.o - .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 - .note.GNU-stack - 0x00000000 0x0 Library/String.class.o - .note.GNU-stack - 0x00000000 0x0 Library/wchar.class.o - .note.GNU-stack - 0x00000000 0x0 VFS/Partition.class.o - .note.GNU-stack - 0x00000000 0x0 VFS/Part.ns.o - .note.GNU-stack - 0x00000000 0x0 SyscallManager/IDT.ns.o - .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/Floppy/FloppyController.class.o - .note.GNU-stack - 0x00000000 0x0 Devices/Floppy/FloppyDrive.class.o - .note.GNU-stack - 0x00000000 0x0 Devices/Timer.class.o diff --git a/Source/Kernel/Melon.ke b/Source/Kernel/Melon.ke Binary files differindex efd3603..6a1adae 100755 --- a/Source/Kernel/Melon.ke +++ b/Source/Kernel/Melon.ke diff --git a/Source/Kernel/SyscallManager/IDT.ns.cpp b/Source/Kernel/SyscallManager/IDT.ns.cpp index 0684255..96b2e2a 100644 --- a/Source/Kernel/SyscallManager/IDT.ns.cpp +++ b/Source/Kernel/SyscallManager/IDT.ns.cpp @@ -61,7 +61,6 @@ extern "C" void int66(); //IRQ to signal that thread ended extern "C" void idt_flush(u32int); extern "C" void interrupt_handler(registers_t regs) { - Task::currentThread->enterInterrupt(); //Do that so that whatever is called here can use waitIRQ bool doSwitch = (regs.int_no == 32 or regs.int_no >= 65); //SYSCALLS >= 65 are task-managing-related if (regs.int_no < 32) { IDT::handleException(regs, regs.int_no); @@ -76,7 +75,6 @@ extern "C" void interrupt_handler(registers_t regs) { Task::currentThread->finish(regs.eax); } if (doSwitch) Task::doSwitch(); - Task::currentThread->exitInterrupt(); } namespace IDT { @@ -185,8 +183,9 @@ void handleException(registers_t regs, int no) { //TODO :: make exception handli VirtualTerminal *vt = new VirtualTerminal(5, 50, 0, 15); vt->map(); - *vt << "\n Unhandled exception " << (s32int)no << " at " << (u32int)regs.cs << ":" << - (u32int)regs.eip << "\n :: " << exceptions[no]; + *vt << "\n Unhandled exception " << (s32int)no << " at "; + vt->writeHex(regs.cs); *vt <<":"; vt->writeHex(regs.eip); + *vt << "\n :: " << exceptions[no]; if (no == 14) { //Page fault int present = !(regs.err_code & 0x1); diff --git a/Source/Kernel/TaskManager/Task.ns.cpp b/Source/Kernel/TaskManager/Task.ns.cpp index 8a26133..3ee21de 100644 --- a/Source/Kernel/TaskManager/Task.ns.cpp +++ b/Source/Kernel/TaskManager/Task.ns.cpp @@ -77,7 +77,7 @@ void doSwitch() { } void triggerSwitch() { - asm volatile("int $64"); + asm volatile("int $65"); } u32int nextPid() { diff --git a/Source/Kernel/TaskManager/Thread.class.cpp b/Source/Kernel/TaskManager/Thread.class.cpp index b5bb4e6..ae399f4 100644 --- a/Source/Kernel/TaskManager/Thread.class.cpp +++ b/Source/Kernel/TaskManager/Thread.class.cpp @@ -91,8 +91,6 @@ void Thread::sleep(u32int msecs) { } void Thread::waitIRQ(u8int irq) { - if (!m_isKernel and !m_isRunningAnInterrupt) return; - m_state = T_IRQWAIT; waitfor.m_irq = irq; diff --git a/Source/Kernel/TaskManager/Thread.class.h b/Source/Kernel/TaskManager/Thread.class.h index 63e5272..f8ab3ff 100644 --- a/Source/Kernel/TaskManager/Thread.class.h +++ b/Source/Kernel/TaskManager/Thread.class.h @@ -23,7 +23,6 @@ class Thread { u8int m_irq; //An IRQ number } waitfor; - bool m_isRunningAnInterrupt; bool m_isKernel; //Says if stack is in kernel pagedir, and if thread should run in ring 0 u32int m_kernelStackFrame; //Used for allocating and freeing a frame used as a stack @@ -41,9 +40,6 @@ class Thread { u32int getEip(); Process* getProcess(); - inline void enterInterrupt() { m_isRunningAnInterrupt = true; } - inline void exitInterrupt() { m_isRunningAnInterrupt = false; } - void sleep(u32int msecs); void waitIRQ(u8int irq); bool runnable(); //Called by scheduler diff --git a/Source/Kernel/VTManager/VirtualTerminal.class.cpp b/Source/Kernel/VTManager/VirtualTerminal.class.cpp index 4c0df95..f5cec5f 100644 --- a/Source/Kernel/VTManager/VirtualTerminal.class.cpp +++ b/Source/Kernel/VTManager/VirtualTerminal.class.cpp @@ -158,7 +158,6 @@ void VirtualTerminal::writeDec(s32int i, bool updatecsr) { } void VirtualTerminal::writeHex(u32int i, bool updatecsr) { - if (m_cols < 60) return; write("0x", false); char hexdigits[] = "0123456789ABCDEF"; for (u32int j = 0; j < 8; j++) { |