Added kernel ELF address to load context.

master
q3k 2013-07-10 14:52:41 +02:00
parent 024ab3a3fd
commit 347e5d9974
3 changed files with 6 additions and 1 deletions

View File

@ -24,6 +24,9 @@ struct S_LOAD_CONTEXT {
// Multiboot
u8 MultibootUsed : 1;
u64 MultibootHeader;
// Kernel ELF
void *KernelELF;
} __attribute__((packed));
typedef struct S_LOAD_CONTEXT T_LOAD_CONTEXT;

View File

@ -57,7 +57,6 @@ void system_parse_load_context(T_LOAD_CONTEXT *LoadContext)
g_SystemInfo.KernelSize = LoadContext->KernelPhysicalEnd - LoadContext->KernelPhysicalStart;
g_SystemInfo.KernelVirtualStart = SYSTEM_KERNEL_VIRTUAL;
ASSERT(SYSTEM_KERNEL_VIRTUAL == (u64)&_start);
ASSERT((SYSTEM_KERNEL_VIRTUAL + g_SystemInfo.KernelSize) == (u64)&_end);
// Bootloader name from Multiboot header
if ((Flags >> 9) & 1)

View File

@ -18,6 +18,9 @@ struct S_LOAD_CONTEXT {
// Multiboot
u8 MultibootUsed : 1;
u64 MultibootHeader;
// Kernel ELF
u64 KernelELF;
} __attribute__((packed));
typedef struct S_LOAD_CONTEXT T_LOAD_CONTEXT;