KimisOS/src/kernel/system/modules.c

22 lines
756 B
C

#include "modules.h"
#include "../shared/kstdlib.h"
#include "elf.h"
#include "../shared/memory.h"
#define MODULE_NAME "MLOADER"
void init_modules(kernel_info_t *kernel_info){
mlog(MODULE_NAME, "Initializing Boot-Time Modules\n", MLOG_PRINT);
kernel_module_t *module = kernel_info->loaded_modules;
while(module){
if(!module->ptr){
continue;
}
// printf("Module Type: %x, Module Size (Bytes): %x, Ptr: %x\n", module->type, module->size, module->ptr);
load_elf(module->ptr, 0);
mlog(MODULE_NAME, "Loaded module of type %x\n", MLOG_PRINT, module->type);
module = module->link;
// module->type |= 0x8000;//set present flag in type
module->type |= MODULE_PRESENT;
}
}