MTK解决内存不足的一些方法
时间:10-02
整理:3721RD
点击:
SMS_PHONE_ENTRY = 200
PHB_PHONE_ENTRY = 500
1. 方法一:减小电话本的数量。现在手机可以支持的电话本数量很大,最多都有750条,如果减到500条或者250条,可以节省一些空间,具体减小的多少根据当前mtk方案来定。
2.方法二:减少短信条数。现在普遍的方案都是支持200条短信,如果把短信数量减少到100条,可以节省18K左右的RAM空间。
具体修改方法如下:
打开nvram_common_def.h 文件,搜索以下代码,修改红色标记部分
/**
* SMSAL short messages
*/
#define NVRAM_EF_SMSAL_SMS_SIZE 184
#if defined(LOW_COST_SUPPORT)
#define NVRAM_EF_SMSAL_SMS_TOTAL (10 * NVRAM_DUAL_RECORD)
#else
#define NVRAM_EF_SMSAL_SMS_TOTAL (200 * NVRAM_DUAL_RECORD)
#endif /* LOW_COST_SUPPORT */
3.方法三:减小debug时所占用的空间,需要修改custom_config.c 文件中的两个参数:
global_MEM_SIZE 290改为270
global_MEM_SIZE 100改为80
这个方法可以节省40K的RAM空间
具体修改方法如下:
搜索以下代码,修改红色标记部分:
/* SysGen Template Type : GPRS Generic */
#if (defined(__WIFI_SUPPORT__) || defined(__VOIP__)) && defined(OBIGO_Q05A)
#define GLOBAL_MEM_SIZE ( 370*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 110*1024)
#elif defined(__WIFI_SUPPORT__) || defined(__VOIP__)
#define GLOBAL_MEM_SIZE ( 340*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 110*1024)
#elif defined(OBIGO_Q05A)
#define GLOBAL_MEM_SIZE ( 320*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 100*1024)
#else /* (__WIFI_SUPPORT__ || __VOIP__) && OBIGO_Q05A */
#define GLOBAL_MEM_SIZE ( 290*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 100*1024)
#endif /* (__WIFI_SUPPORT__ || __VOIP__) && OBIGO_Q05A */
方法一和方法二需要重新NEW一遍,方法三只需要REMAKE一下。
4.
#ifdef __SF_MP4_SUPPORT__
kal_uint8 MED_SF_MP4_BUF[864*1024];
#endif
PHB_PHONE_ENTRY = 500
1. 方法一:减小电话本的数量。现在手机可以支持的电话本数量很大,最多都有750条,如果减到500条或者250条,可以节省一些空间,具体减小的多少根据当前mtk方案来定。
2.方法二:减少短信条数。现在普遍的方案都是支持200条短信,如果把短信数量减少到100条,可以节省18K左右的RAM空间。
具体修改方法如下:
打开nvram_common_def.h 文件,搜索以下代码,修改红色标记部分
/**
* SMSAL short messages
*/
#define NVRAM_EF_SMSAL_SMS_SIZE 184
#if defined(LOW_COST_SUPPORT)
#define NVRAM_EF_SMSAL_SMS_TOTAL (10 * NVRAM_DUAL_RECORD)
#else
#define NVRAM_EF_SMSAL_SMS_TOTAL (200 * NVRAM_DUAL_RECORD)
#endif /* LOW_COST_SUPPORT */
3.方法三:减小debug时所占用的空间,需要修改custom_config.c 文件中的两个参数:
global_MEM_SIZE 290改为270
global_MEM_SIZE 100改为80
这个方法可以节省40K的RAM空间
具体修改方法如下:
搜索以下代码,修改红色标记部分:
/* SysGen Template Type : GPRS Generic */
#if (defined(__WIFI_SUPPORT__) || defined(__VOIP__)) && defined(OBIGO_Q05A)
#define GLOBAL_MEM_SIZE ( 370*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 110*1024)
#elif defined(__WIFI_SUPPORT__) || defined(__VOIP__)
#define GLOBAL_MEM_SIZE ( 340*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 110*1024)
#elif defined(OBIGO_Q05A)
#define GLOBAL_MEM_SIZE ( 320*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 100*1024)
#else /* (__WIFI_SUPPORT__ || __VOIP__) && OBIGO_Q05A */
#define GLOBAL_MEM_SIZE ( 290*1024)
#define GLOBAL_DEBUG_MEM_SIZE ( 100*1024)
#endif /* (__WIFI_SUPPORT__ || __VOIP__) && OBIGO_Q05A */
方法一和方法二需要重新NEW一遍,方法三只需要REMAKE一下。
4.
#ifdef __SF_MP4_SUPPORT__
kal_uint8 MED_SF_MP4_BUF[864*1024];
#endif
谢谢分享哦