/* kmultiboot.h * Kernel Multiboot * * Data needed for multiboot compatibility. */ #ifndef KMULTIBOOT_H #define KMULTIBOOT_H #include typedef struct multiboot_mmap_entry { uint32_t entry_size; //size of this struct entry uint64_t addr; //physical location of memory uint64_t mem_size; //size of the memory block uint32_t type; } __attribute__((packed)) mb_mmap_entry_t; typedef struct mb_info_s { uint32_t flags; uint32_t mem_lower; uint32_t mem_upper; uint32_t boot_device; uint32_t cmdline; uint32_t mods_count; uint32_t mods_addr; uint32_t syms[4]; uint32_t mmap_length; uint32_t mmap_addr; } mb_info_t; extern uint8_t _kernel_start; extern uint8_t _kernel_end; #endif