Changeset ,92
- Timestamp:
- 10/26/2008 08:40:42 AM (2 months ago)
- branch-nick:
- bzr
- Files:
-
- vesper/src/ELF.h (modified) (1 diff)
- vesper/src/ElfParser.cpp (modified) (1 diff)
- vesper/src/ElfParser.h (modified) (1 diff)
- vesper/src/Globals.cpp (modified) (1 diff)
- vesper/src/Globals.h (modified) (1 diff)
- vesper/src/Kernel.cpp (modified) (1 diff)
- vesper/src/Kernel.h (modified) (1 diff)
- vesper/src/arch/x86/MemoryManager-arch.h (modified) (1 diff)
- vesper/src/boot/Multiboot.cpp (modified) (1 diff)
- vesper/src/boot/Multiboot.h (modified) (1 diff)
- vesper/src/boot/loader.s (modified) (1 diff)
- vesper/src/lib/Atomic.h (modified) (1 diff)
- vesper/src/lib/BitArray.h (modified) (1 diff)
- vesper/src/lib/DefaultConsole.cpp (modified) (1 diff)
- vesper/src/lib/DefaultConsole.h (modified) (1 diff)
- vesper/src/lib/Lockable.h (modified) (1 diff)
- vesper/src/lib/Macros.h (modified) (1 diff)
- vesper/src/lib/OrderedArray.h (modified) (1 diff)
- vesper/src/lib/Registers.h (modified) (1 diff)
- vesper/src/lib/Registers.s (modified) (1 diff)
- vesper/src/lib/Types.h (modified) (1 diff)
- vesper/src/lib/asm-x86-div64.h (modified) (1 diff)
- vesper/src/lib/common.h (modified) (1 diff)
- vesper/src/lib/ctype.c (modified) (1 diff)
- vesper/src/lib/ctype.h (modified) (1 diff)
- vesper/src/lib/g++support.cpp (modified) (1 diff)
- vesper/src/lib/ia32.h (modified) (1 diff)
- vesper/src/lib/string.c (modified) (1 diff)
- vesper/src/lib/string.h (modified) (1 diff)
- vesper/src/lib/vsprintf.c (modified) (1 diff)
- vesper/src/lib/x86.h (modified) (1 diff)
- vesper/src/memory/Heap.cpp (modified) (1 diff)
- vesper/src/memory/Heap.h (modified) (1 diff)
- vesper/src/memory/MemoryManager.cpp (modified) (1 diff)
- vesper/src/memory/MemoryManager.h (modified) (1 diff)
- vesper/src/pd/InterruptDescriptorTable.cpp (modified) (1 diff)
- vesper/src/pd/InterruptDescriptorTable.h (modified) (1 diff)
- vesper/src/pd/activate.s (modified) (1 diff)
- vesper/src/pd/gdt.cpp (modified) (1 diff)
- vesper/src/pd/gdt.h (modified) (1 diff)
- vesper/src/pd/process.s (modified) (1 diff)
- vesper/src/schedule/CriticalSection.cpp (modified) (1 diff)
- vesper/src/schedule/InterruptServiceRoutine.cpp (modified) (1 diff)
- vesper/src/schedule/InterruptServiceRoutine.h (modified) (1 diff)
- vesper/src/schedule/PageFaultHandler.cpp (modified) (1 diff)
- vesper/src/schedule/PageFaultHandler.h (modified) (1 diff)
- vesper/src/schedule/Task.cpp (modified) (1 diff)
- vesper/src/schedule/Task.h (modified) (1 diff)
- vesper/src/schedule/Timer.cpp (modified) (1 diff)
- vesper/src/schedule/Timer.h (modified) (1 diff)
- vesper/src/schedule/interrupt.s (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
vesper/src/ELF.h
r84 r92 310 310 } 311 311 312 // kate: indent-width 4; replace-tabs on; 313 // vi:set ts=4:set expandtab=on: vesper/src/ElfParser.cpp
r90 r92 76 76 return NULL; 77 77 } 78 // kate: indent-width 4; replace-tabs on; 79 // vi:set ts=4:set expandtab=on: vesper/src/ElfParser.h
r90 r92 105 105 }; 106 106 107 // kate: indent-width 4; replace-tabs on; 108 // vi:set ts=4:set expandtab=on: vesper/src/Globals.cpp
r90 r92 131 131 while(1) {} 132 132 } 133 // kate: indent-width 4; replace-tabs on; 134 // vi:set ts=4:set expandtab=on: vesper/src/Globals.h
r90 r92 26 26 void operator delete(void *p); 27 27 void operator delete[](void *p); 28 // kate: indent-width 4; replace-tabs on; 29 // vi:set ts=4:set expandtab=on: vesper/src/Kernel.cpp
r90 r92 164 164 void kernel::print_stacktrace(unsigned int n) 165 165 { 166 address_t esp = readStackPointer();167 address_t espBase = esp;168 kconsole.set_color(GREEN);169 kconsole.print("<ESP=%08x>\n", esp);170 for (unsigned int i = 0; i < n; i++)171 {172 kconsole.print("<ESP+%4d> %08x\n", esp - espBase, *(address_t*)esp);173 esp += sizeof(address_t);174 }166 address_t esp = readStackPointer(); 167 address_t espBase = esp; 168 kconsole.set_color(GREEN); 169 kconsole.print("<ESP=%08x>\n", esp); 170 for (unsigned int i = 0; i < n; i++) 171 { 172 kconsole.print("<ESP+%4d> %08x\n", esp - espBase, *(address_t*)esp); 173 esp += sizeof(address_t); 174 } 175 175 } 176 176 177 /* kate: indent-width 4; replace-tabs off; */ 178 // vi: ts=4 177 /* kate: indent-width 4; replace-tabs on; */ 178 /* vi:set ts=4:set expandtab=on: */// kate: indent-width 4; replace-tabs on; 179 // vi:set ts=4:set expandtab=on: vesper/src/Kernel.h
r90 r92 126 126 }; 127 127 128 // kate: indent-width 4; replace-tabs on; 129 // vi:set ts=4:set expandtab=on: vesper/src/arch/x86/MemoryManager-arch.h
r90 r92 269 269 270 270 // # endif // LANG_X86 271 // kate: indent-width 4; replace-tabs on; 272 // vi:set ts=4:set expandtab=on: vesper/src/boot/Multiboot.cpp
r90 r92 41 41 } 42 42 43 // kate: indent-width 4; replace-tabs on; 44 // vi:set ts=4:set expandtab=on: vesper/src/boot/Multiboot.h
r90 r92 161 161 }; 162 162 163 // kate: indent-width 4; replace-tabs on; 164 // vi:set ts=4:set expandtab=on: vesper/src/boot/loader.s
r84 r92 53 53 cli 54 54 jmp $ ; halt machine should kernel return 55 ; kate: indent-width 4; replace-tabs on; 56 ; vi:set ts=4:set expandtab=on: vesper/src/lib/Atomic.h
r90 r92 12 12 static address_t exchange(address_t *lock, address_t new_val); 13 13 }; 14 // kate: indent-width 4; replace-tabs on; 15 // vi:set ts=4:set expandtab=on: vesper/src/lib/BitArray.h
r84 r92 136 136 }; 137 137 138 // kate: indent-width 4; replace-tabs on; 139 // vi:set ts=4:set expandtab=on: vesper/src/lib/DefaultConsole.cpp
r90 r92 193 193 attr = old_attr; 194 194 } 195 // kate: indent-width 4; replace-tabs on; 196 // vi:set ts=4:set expandtab=on: vesper/src/lib/DefaultConsole.h
r90 r92 99 99 return con; 100 100 } 101 // kate: indent-width 4; replace-tabs on; 102 // vi:set ts=4:set expandtab=on: vesper/src/lib/Lockable.h
r90 r92 62 62 }; 63 63 64 // kate: indent-width 4; replace-tabs on; 65 // vi:set ts=4:set expandtab=on: vesper/src/lib/Macros.h
r84 r92 21 21 #define ASSERT(b) ((b) ? (void)0 : panic_assert(#b, __FILE__, __LINE__)) 22 22 #define BUG_ON(b) ASSERT(!(b)) 23 // kate: indent-width 4; replace-tabs on; 24 // vi:set ts=4:set expandtab=on: vesper/src/lib/OrderedArray.h
r84 r92 94 94 }; 95 95 96 // kate: indent-width 4; replace-tabs on; 97 // vi:set ts=4:set expandtab=on: vesper/src/lib/Registers.h
r90 r92 27 27 extern "C" void criticalSection(); 28 28 extern "C" void endCriticalSection(); 29 // kate: indent-width 4; replace-tabs on; 30 // vi:set ts=4:set expandtab=on: vesper/src/lib/Registers.s
r86 r92 71 71 sti 72 72 ret 73 ; kate: indent-width 4; replace-tabs on; 74 ; vi:set ts=4:set expandtab=on: vesper/src/lib/Types.h
r90 r92 15 15 typedef int32_t ptrdiff_t; 16 16 typedef uint32_t address_t; 17 // kate: indent-width 4; replace-tabs on; 18 // vi:set ts=4:set expandtab=on: vesper/src/lib/asm-x86-div64.h
r84 r92 62 62 // #endif /* CONFIG_X86_32 */ 63 63 64 // kate: indent-width 4; replace-tabs on; 65 // vi:set ts=4:set expandtab=on: vesper/src/lib/common.h
r84 r92 69 69 __attribute__ ((format (scanf, 2, 0))); 70 70 71 // kate: indent-width 4; replace-tabs on; 72 // vi:set ts=4:set expandtab=on: vesper/src/lib/ctype.c
r84 r92 41 41 42 42 EXPORT_SYMBOL(_ctype); 43 // kate: indent-width 4; replace-tabs on; 44 // vi:set ts=4:set expandtab=on: vesper/src/lib/ctype.h
r84 r92 57 57 #define toupper(c) __toupper(c) 58 58 59 // kate: indent-width 4; replace-tabs on; 60 // vi:set ts=4:set expandtab=on: vesper/src/lib/g++support.cpp
r84 r92 38 38 { 39 39 } 40 // kate: indent-width 4; replace-tabs on; 41 // vi:set ts=4:set expandtab=on: vesper/src/lib/ia32.h
r84 r92 181 181 #endif 182 182 183 // kate: indent-width 4; replace-tabs on; 184 // vi:set ts=4:set expandtab=on: vesper/src/lib/string.c
r90 r92 593 593 EXPORT_SYMBOL(memchr); 594 594 #endif 595 // kate: indent-width 4; replace-tabs on; 596 // vi:set ts=4:set expandtab=on: vesper/src/lib/string.h
r90 r92 86 86 extern void * memchr(const void *,int,size_t); 87 87 #endif 88 // kate: indent-width 4; replace-tabs on; 89 // vi:set ts=4:set expandtab=on: vesper/src/lib/vsprintf.c
r84 r92 1116 1116 1117 1117 EXPORT_SYMBOL(sscanf); 1118 // kate: indent-width 4; replace-tabs on; 1119 // vi:set ts=4:set expandtab=on: vesper/src/lib/x86.h
r84 r92 191 191 #endif 192 192 193 // kate: indent-width 4; replace-tabs on; 194 // vi:set ts=4:set expandtab=on: vesper/src/memory/Heap.cpp
r90 r92 524 524 #endif 525 525 } 526 // kate: indent-width 4; replace-tabs on; 527 // vi:set ts=4:set expandtab=on: vesper/src/memory/Heap.h
r90 r92 126 126 }; 127 127 128 // kate: indent-width 4; replace-tabs on; 129 // vi:set ts=4:set expandtab=on: vesper/src/memory/MemoryManager.cpp
r90 r92 262 262 } 263 263 } 264 // kate: indent-width 4; replace-tabs on; 265 // vi:set ts=4:set expandtab=on: vesper/src/memory/MemoryManager.h
r90 r92 184 184 #include "MemoryManager-arch.h" 185 185 186 // kate: indent-width 4; replace-tabs on; 187 // vi:set ts=4:set expandtab=on: vesper/src/pd/InterruptDescriptorTable.cpp
r90 r92 87 87 activate_idt((address_t)this); 88 88 } 89 // kate: indent-width 4; replace-tabs on; 90 // vi:set ts=4:set expandtab=on: vesper/src/pd/InterruptDescriptorTable.h
r84 r92 156 156 } 157 157 158 // kate: indent-width 4; replace-tabs on; 159 // vi:set ts=4:set expandtab=on: vesper/src/pd/activate.s
r84 r92 25 25 lidt [eax] ; Load the IDT pointer. 26 26 ret 27 ; kate: indent-width 4; replace-tabs on; 28 ; vi:set ts=4:set expandtab=on: vesper/src/pd/gdt.cpp
r90 r92 30 30 activate_gdt((address_t)this); 31 31 } 32 // kate: indent-width 4; replace-tabs on; 33 // vi:set ts=4:set expandtab=on: vesper/src/pd/gdt.h
r84 r92 106 106 } PACKED; 107 107 108 // kate: indent-width 4; replace-tabs on; 109 // vi:set ts=4:set expandtab=on: vesper/src/pd/process.s
r84 r92 38 38 pop ebx ; Get the original value of EBX back. 39 39 ret 40 ; kate: indent-width 4; replace-tabs on; 41 ; vi:set ts=4:set expandtab=on: vesper/src/schedule/CriticalSection.cpp
r84 r92 30 30 } 31 31 } 32 // kate: indent-width 4; replace-tabs on; 33 // vi:set ts=4:set expandtab=on: vesper/src/schedule/InterruptServiceRoutine.cpp
r90 r92 58 58 outb(0x20, 0x20); 59 59 } 60 // kate: indent-width 4; replace-tabs on; 61 // vi:set ts=4:set expandtab=on: vesper/src/schedule/InterruptServiceRoutine.h
r84 r92 29 29 virtual void run(Registers *) {} 30 30 }; 31 // kate: indent-width 4; replace-tabs on; 32 // vi:set ts=4:set expandtab=on: vesper/src/schedule/PageFaultHandler.cpp
r84 r92 42 42 PANIC("Page fault"); 43 43 } 44 // kate: indent-width 4; replace-tabs on; 45 // vi:set ts=4:set expandtab=on: vesper/src/schedule/PageFaultHandler.h
r84 r92 17 17 virtual void run(Registers *r); 18 18 }; 19 // kate: indent-width 4; replace-tabs on; 20 // vi:set ts=4:set expandtab=on: vesper/src/schedule/Task.cpp
r88 r92 166 166 return id; 167 167 } 168 // kate: indent-width 4; replace-tabs on; 169 // vi:set ts=4:set expandtab=on: vesper/src/schedule/Task.h
r84 r92 35 35 }; 36 36 37 // kate: indent-width 4; replace-tabs on; 38 // vi:set ts=4:set expandtab=on: vesper/src/schedule/Timer.cpp
r84 r92 58 58 // kconsole.debug_log("Constructed timer."); 59 59 } 60 // kate: indent-width 4; replace-tabs on; 61 // vi:set ts=4:set expandtab=on: vesper/src/schedule/Timer.h
r84 r92 16 16 }; 17 17 18 // kate: indent-width 4; replace-tabs on; 19 // vi:set ts=4:set expandtab=on: vesper/src/schedule/interrupt.s
r84 r92 145 145 sti 146 146 iret ; pops 5 things at once: CS, EIP, EFLAGS, SS, and ESP 147 ; kate: indent-width 4; replace-tabs on; 148 ; vi:set ts=4:set expandtab=on:
