OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3905|回复: 3

关于长文件名的缓冲区

[复制链接]

94

主题

260

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2013-10-23
在线时间
48 小时
发表于 2014-10-22 20:55:27 | 显示全部楼层 |阅读模式
5金钱
 #define    _USE_LFN     3            /* 0 to 3 */

#define    _MAX_LFN   255         /* Maximum LFN length to handle (12 to 255) */

/* The _USE_LFN option switches the LFN support.

/

/   0: Disable LFN feature. _MAX_LFN and _LFN_UNICODE have no effect.

/   1: Enable LFN with static working buffer on the BSS. Always NOT reentrant.

/   2: Enable LFN with dynamic working buffer on the STACK.

/   3: Enable LFN with dynamic working buffer on the HEAP.
以上是文件系统ffconf.h里面关于长文件名的注释,#define _USE_LFN  3以后按照注释是说使能长文件名并且长文件名的缓冲区在堆(HEAP)里面,原子的代码使用的是mymalloc()这个函数分配缓冲区给长文件名的。
那么我的问题就是:原子的mymalloc()函数分配的内存归根究底是__align(4) u8 mem1base[MEM1_MAX_SIZE]这个数组的一部分。而这个数组是一个全局变量,全局变量应该是放在静态存储区而不是堆(HEAP)里面的。那不就和/   3: Enable LFN with dynamic working buffer on the HEAP.这句话不符了吗?
小白问题有点多,还请原子哥多多见谅!

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-10-22 23:10:33 | 显示全部楼层
你所谓的HEAP区,在哪里,是多少?能告诉我么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

94

主题

260

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2013-10-23
在线时间
48 小时
 楼主| 发表于 2014-10-22 23:55:37 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我只知道用C自带的malloc函数申请的是在JEAP里面,局部变量在栈里面,全局变量在静态存储区,我也不是很了解这些的关系
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-10-23 00:14:26 | 显示全部楼层
回复【3楼】骑着蜗牛追梦想:
---------------------------------
那你再了解清楚点。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-30 06:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表