RAM和ROM使用情况

时间:2017-04-27 06:57:35

标签: c msp430 contiki

我修改了contiki代码以实现攻击解决方案。我想测量修改后的contiki代码的RAM和ROM使用情况。在contiki中计算RAM和ROM使用的标准方法是什么?我在cooja模拟器中使用Tmote天空微粒。

我可以在一篇关于msp430尺寸工具的会议论文中看到,但我没有找到同样的资源。

我使用mspgcc,gedit作为文本编辑器,没有IDE和编译从cooja模拟器启动。

1 个答案:

答案 0 :(得分:2)

使用msp430-size工具。如果您的msp430-gcc编译器附带,则作为msp430 binutils的一部分。

$ make TARGET=z1
 CC        ../../platform/z1/./contiki-z1-platform.c
 CC        ../../cpu/msp430/f2xxx/msp430.c
 CC        ../../cpu/msp430/./watchdog.c
 ...
$ msp430-size hello-world.elf 
  text     data     bss     dec     hex filename
 63364      694   11848   75906   12882 hello-world.elf

$ msp430-size obj_z1/cc2420.o 
 text      data     bss     dec     hex filename
 3014        13       9    3036     bdc obj_z1/cc2420.o

输出显示静态分配的RAM(.data.bss部分)和ROM(.text部分)的大小。 Contiki并没有真正使用动态内存分配,因此这些信息足以确定运行时使用情况(不包括堆栈使用情况,但由于您要求“标准方式”,报告这些数字就足够了,因为这是大多数人所做的事情。论文和研究界的期望)。

如果您想了解有关各个功能和变量的更多详细信息,请使用msp430-objdump -x