2025-06-27 00:32:57 +08:00
|
|
|
|
#ifndef OS_MEM_H__
|
|
|
|
|
#define OS_MEM_H__
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
extern "C" {
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include "stm32f4xx.h"
|
2025-06-28 22:15:49 +08:00
|
|
|
|
#include "stddef.h"
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef NULL
|
|
|
|
|
#define NULL 0
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
//<2F>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
struct _m_mallco_dev
|
|
|
|
|
{
|
2025-07-05 19:47:28 +08:00
|
|
|
|
u8 *membase; //<2F>ڴ<EFBFBD><DAB4><EFBFBD>
|
|
|
|
|
u16 *memmap; //<2F>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>
|
|
|
|
|
u8 memrdy; //<2F>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
void mymemset(void *s,u8 c,u32 count); //<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>
|
|
|
|
|
void mymemcpy(void *des,void *src,u32 n);//<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
int mem_perused(void); //<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>
|
|
|
|
|
int exmem_perused(void); //<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
int ccm_perused(void) ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
2025-07-05 19:47:28 +08:00
|
|
|
|
//<2F>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ú<EFBFBD><C3BA><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
//<2F>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void mymem_init (void);
|
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
void myfree(void *ptr); //<2F>ڴ<EFBFBD><DAB4>ͷ<EFBFBD>
|
|
|
|
|
void *mymalloc(size_t size); //<2F>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
void *myrealloc(void *ptr,u32 size);//<2F><><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD>ڴ<EFBFBD>
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ沢<DAB4><E6B2A2><EFBFBD><EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void *mycalloc (u32 size);
|
2025-07-05 19:47:28 +08:00
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2>ڴ<EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void *mymalloc_fast(u32 size) ;
|
|
|
|
|
|
|
|
|
|
void *mymalloc_exm(u32 size) ;
|
|
|
|
|
|
2025-07-05 19:47:28 +08:00
|
|
|
|
//<2F>ͷ<EFBFBD>CCM<43>ڴ<EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void myfree_ccm(void *ptr) ;
|
2025-07-05 19:47:28 +08:00
|
|
|
|
//<2F><><EFBFBD><EFBFBD>CCM<43>ڴ<EFBFBD>
|
2025-06-27 00:32:57 +08:00
|
|
|
|
void *mymalloc_ccm(u32 size) ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|