【发布时间】:2017-10-05 12:00:53
【问题描述】:
我正在开发一个 Contiki 应用程序,但我的 ROM 内存已用完。我想使用Contiki文件系统(CFS)来写一个小文件(32字节长),所以我添加以下代码:
fd_write = cfs_open(filename, CFS_WRITE);
n = cfs_write(fd_write, message, sizeof(message)); //Message size is 32 bytes
cfs_close(fd_write);
问题在于 cfs_write() 将 .text 部分增加了 3210 个字节。我发现这是因为删除 cfs_write() 的代码大小是:
text data bss dec hex filename
23912 114 4710 28736 7040 coffee-example.sky
而 cfs_write() 的代码大小为:
text data bss dec hex filename
27122 114 4710 31946 7cca coffee-example.sky
请注意,cfs_write() 将 .text 部分增加了 3210 个字节。为什么 cfs_write() 增加了 .text 部分这么多?如何减小 .text 部分中 cfs_write() 的大小?
最好的问候,
塞尔吉奥·迪亚兹
【问题讨论】:
标签: memory-management out-of-memory contiki