sys_mem.c

来自「abstract rtos」· C语言 代码 · 共 82 行

C
82
字号
#include "syscfg.h"#ifdef __cplusplusextern "C"{#endif #include "sys/sys_pub.h"#include "aos.h"VOID* sys_mem_alloc( U32 nBytes  ){    return (VOID*)malloc( nBytes );}VOID sys_mem_free( VOID*ptr ){    free( ptr );}U32 sys_page_get( VOID**ppvStart, U32 *pulPageNum ){    U32 ulCfgSize, ulSartAddr;    AOS_ASSERT(CONFIG_MEM_SIZE > 2*MEM_PAGE_SIZE );      ulCfgSize = CONFIG_MEM_SIZE;#ifdef _EIA2000V3    if( (U32)sysPhysMemTop() > 0x800000 )    {        ulCfgSize += 0x800000;    }#endif    #if( CONFIG_BOARD_GMPU == TRUE )    ulSartAddr = (U32)sysMemTop();        #else    ulSartAddr = (U32)sys_mem_alloc(ulCfgSize);    if( (U32)NULL == ulSartAddr )    {         *pulPageNum = 0;         return AOS_FAIL;    }        #endif        *pulPageNum = ulCfgSize/MEM_PAGE_SIZE;        if( ulSartAddr & (MEM_PAGE_SIZE-1) )    {        ulSartAddr >>= MEM_PAGE_ORDER;        ulSartAddr++;        ulSartAddr <<= MEM_PAGE_ORDER;        (*pulPageNum)--;        (*pulPageNum)--;    }	*ppvStart = (VOID*)ulSartAddr;    return AOS_SUCC;}#ifdef __cplusplus}#endif 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?