Commenting is nice
authorJohn Hodge <[email protected]>
Tue, 17 Aug 2010 01:37:53 +0000 (09:37 +0800)
committerJohn Hodge <[email protected]>
Tue, 17 Aug 2010 01:37:53 +0000 (09:37 +0800)
Kernel/arch/x86/desctab.asm
Kernel/heap.c
Kernel/include/heap.h

index 4223e6f..f6cc14e 100644 (file)
@@ -54,6 +54,8 @@ Desctab_Install:
 .pl0code:
 
        ; Set up IDT
+       ; Helper Macros
+       ; - Set an IDT entry to an ISR
 %macro SETISR  1
        mov eax, Isr%1
        mov     WORD [gIDT + %1*8], ax
@@ -64,23 +66,28 @@ Desctab_Install:
        or ax, 0x8000
        mov     WORD [gIDT + %1*8 + 4], ax
 %endmacro
+       ; Enable user calling of an ISR
 %macro SET_USER        1
        or WORD [gIDT + %1*8 + 4], 0x6000
 %endmacro
+       ; Set an ISR as a trap (leaves interrupts enabled when invoked)
 %macro SET_TRAP        1
        or WORD [gIDT + %1*8 + 4], 0x0100
 %endmacro
 
+       ; Error handlers
        %assign i       0
        %rep 32
        SETISR  i
        %assign i i+1
        %endrep
        
+       ; User Syscall
        SETISR  0xAC
        SET_USER        0xAC
        SET_TRAP        0xAC    ; Interruptable
        
+       ; MP ISRs
        %if USE_MP
        SETISR  0xEE    ; 0xEE Timer
        SETISR  0xEF    ; 0xEF Spurious Interrupt
index 1e7ed46..5e6ccfe 100644 (file)
@@ -137,8 +137,6 @@ void *malloc(size_t Bytes)
        // Get required size
        Bytes = (Bytes + sizeof(tHeapHead) + sizeof(tHeapFoot) + BLOCK_SIZE-1) & ~(BLOCK_SIZE-1);
        
-       //if(glHeap)
-       //      Debug("glHeap = %i", glHeap);
        // Lock Heap
        LOCK(&glHeap);
        
index 8765a96..1b883eb 100644 (file)
@@ -14,7 +14,7 @@ typedef struct {
 typedef struct {
        Uint    Magic;
        tHeapHead       *Head;
-       tHeapHead       NextHead[];     // Array to make it act like a pointer, but have no size and refer to the next block
+       tHeapHead       NextHead[];     // Array to make it act like an element, but have no size and refer to the next block
 } tHeapFoot;
 
 #endif

UCC git Repository :: git.ucc.asn.au