mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-09-22 03:09:16 +08:00
[Kernel] move module tolibc/libdl.
This commit is contained in:
@@ -1021,59 +1021,6 @@ struct rt_device_graphic_ops
|
||||
/*@}*/
|
||||
#endif
|
||||
|
||||
#ifdef RT_USING_MODULE
|
||||
/**
|
||||
* @addtogroup Module
|
||||
*/
|
||||
|
||||
/*@{*/
|
||||
|
||||
/*
|
||||
* module system
|
||||
*/
|
||||
|
||||
#define RT_MODULE_FLAG_WITHENTRY 0x00 /**< with entry point */
|
||||
#define RT_MODULE_FLAG_WITHOUTENTRY 0x01 /**< without entry point */
|
||||
|
||||
/**
|
||||
* Application Module structure
|
||||
*/
|
||||
struct rt_module
|
||||
{
|
||||
struct rt_object parent; /**< inherit from object */
|
||||
|
||||
rt_uint32_t vstart_addr; /**< VMA base address for the
|
||||
first LOAD segment. */
|
||||
rt_uint8_t *module_space; /**< module memory space */
|
||||
|
||||
void *module_entry; /**< the entry address of module */
|
||||
rt_thread_t module_thread; /**< the main thread of module */
|
||||
|
||||
rt_uint8_t *module_cmd_line; /**< module command line */
|
||||
rt_uint32_t module_cmd_size; /**< the size of module command line */
|
||||
|
||||
#ifdef RT_USING_SLAB
|
||||
/* module memory allocator */
|
||||
void *mem_list; /**< module's free memory list */
|
||||
void *page_array; /**< module's using pages */
|
||||
rt_uint32_t page_cnt; /**< module's using pages count */
|
||||
#endif
|
||||
|
||||
rt_uint16_t nref; /**< reference count */
|
||||
|
||||
rt_uint16_t nsym; /**< number of symbol in the module */
|
||||
struct rt_module_symtab *symtab; /**< module symbol table */
|
||||
|
||||
rt_uint32_t user_data; /**< arch data in the module */
|
||||
|
||||
void (*module_init)(void);
|
||||
void (*module_cleanup)(void);
|
||||
};
|
||||
typedef struct rt_module *rt_module_t;
|
||||
|
||||
/*@}*/
|
||||
#endif
|
||||
|
||||
/* definitions for libc */
|
||||
#include "rtlibc.h"
|
||||
|
||||
|
||||
@@ -442,44 +442,6 @@ rt_err_t rt_device_control(rt_device_t dev, int cmd, void *arg);
|
||||
/**@}*/
|
||||
#endif
|
||||
|
||||
#ifdef RT_USING_MODULE
|
||||
/**
|
||||
* @addtogroup Module
|
||||
*/
|
||||
|
||||
/**@{*/
|
||||
|
||||
/*
|
||||
* module interface
|
||||
*/
|
||||
rt_module_t rt_module_load(const char *name, void *module_ptr);
|
||||
rt_err_t rt_module_unload(rt_module_t module);
|
||||
#ifdef RT_USING_DFS
|
||||
rt_module_t rt_module_open(const char *filename);
|
||||
rt_module_t rt_module_exec_cmd(const char *path, const char *cmd_line, int size);
|
||||
#endif
|
||||
void *rt_module_malloc(rt_size_t size);
|
||||
void *rt_module_realloc(void *ptr, rt_size_t size);
|
||||
void rt_module_free(rt_module_t module, void *addr);
|
||||
rt_module_t rt_module_self(void);
|
||||
rt_module_t rt_module_find(const char *name);
|
||||
|
||||
#ifdef RT_USING_HOOK
|
||||
void rt_module_load_sethook(void (*hook)(rt_module_t module));
|
||||
void rt_module_unload_sethook(void (*hook)(rt_module_t module));
|
||||
#endif
|
||||
|
||||
void rt_module_init_object_container(struct rt_module *module);
|
||||
rt_err_t rt_module_destroy(rt_module_t module);
|
||||
|
||||
/*
|
||||
* application module system initialization
|
||||
*/
|
||||
int rt_system_module_init(void);
|
||||
|
||||
/**@}*/
|
||||
#endif
|
||||
|
||||
/*
|
||||
* interrupt service
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user