📄 memory.h
字号:
/*********************************************************************
* Copyright (c) 2011-2012,李士伟
* All rights reserved.
*文 件 名:memory.h
*描 述:内存管理头文件
*当前版本:V1.00
*作 者:李士伟
*创建日期:2011.09.29
**********************************************************************/
#ifndef __MEMORY_H__
#define __MEMORY_H__
#include <kernel\typedef.h>
#ifdef __cplusplus
extern "C" {
#endif
/* 系统内存管理配置 */
#define OS_MEM_SIZE (1536) /* 配置 1536Word = 6k 内存 */
/*********************************************************************
*结构体名:struct osmemfreeblkhead (OSMEMFreeBlkHead)
*描 述:空闲内存块记录头结构体
**********************************************************************/
typedef struct osmemfreeblkhead
{
struct osmemfreeblkhead *BlkNext; /* 下一个空闲内存块指针 */
INT32U BlkSize; /* 内存块大小(bytes) */
struct osmemfreeblkhead *BlkPrev; /* 上一个空闲内存块指针 */
}OSMEMFreeBlkHead;
/*********************************************************************
*结构体名:struct osmemusingblkhead (OSMEMUsingBlkHead)
*描 述:已使用内存块记录头结构
**********************************************************************/
typedef struct osmemusingblkhead
{
INT32U SizeChk; /* 内存块大小校验 */
INT32U Size; /* 内存块大小 */
}OSMEMUsingBlkHead;
/*********************************************************************
*结构体名:struct osmeminf (OSMEMInf)
*描 述:内存信息结构体
**********************************************************************/
typedef struct osmeminf
{
INT32U Usage; /* 内存使用率 */
INT32U TotalSize; /* 内存总大小 */
INT32U FreeSize; /* 空闲内存大小 */
INT32U FreeBlks; /* 空闲内存块数量 */
INT32U UsingBlks; /* 分配使用的内存块数量 */
}OSMEMInf;
extern void OS_InitMem(void);
extern void *malloc(INT32U size);
extern void free(void *ptr);
extern void API_GetMemInf(OSMEMInf *pMemInf);
#ifdef __cplusplus
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -