Files
MentOS/mentos/inc/sys/module.h
T
2021-10-04 11:44:02 +02:00

29 lines
881 B
C

/// MentOS, The Mentoring Operating system project
/// @file module.h
/// @brief
/// @copyright (c) 2014-2021 This file is distributed under the MIT License.
/// See LICENSE.md for details.
#pragma once
#include "multiboot.h"
#include "stdint.h"
/// The maximum number of modules.
#define MAX_MODULES 10
extern multiboot_module_t modules[MAX_MODULES];
/// @brief Ininitialize the modules.
/// @param header Multiboot info used to initialize the modules.
/// @return 1 on success, 0 on error.
int init_modules(multiboot_info_t *header);
/// @brief Relocates modules to virtual mapped low memory, to allow physical
/// unmapping of the first part of the ram.
/// @return 1 on success, 0 on failure.
int relocate_modules();
/// @brief Returns the address where the modules end.
/// @return Address after the modules.
uintptr_t get_address_after_modules();