RISC 处理器程序的内存占用



如何测试为 RISC 和 CISC 处理器编写的内存占用程序?

哪一个需要更多的内存,为什么?

所以,我这样做的方式是通过实验。我会为这两种类型的架构编译二进制文件,然后使用 gcc 工具来查看内存占用量。对于以下示例,我将比较x86_64和RISCV架构。我会使用的第一种方法是大小工具,它分解 elf 的各个部分并报告大小。

 # riscv64-unknown-elf-size Test.elf

这将输出类似这样的内容

   text    data     bss     dec     hex filename
 XXXXXX     XXX XXXXXXX XXXXXXX  XXXXXX Test.elf

然后将其与x86版本进行比较:

 # size Test.exe

这将输出类似这样的内容

   text    data     bss     dec     hex filename
 XXXXXX     XXX XXXXXXX XXXXXXX  XXXXXX Test.exe

另一种方法是将您的 elf 转换为直接二进制文件,该二进制文件将逐位放入内存中(对于更复杂的内存架构可能并非如此,但我们将假设一个简单的情况,其中所有内容都从 RAM 存储和执行(。这方面的工具是objcopy。

 # riscv64-unknown-elf-objcopy -O binary Test.elf Test.elf.bin
 # objcopy -O binary Test.exe Test.exe.bin

然后检查生成的两个 bin 文件的大小。

相关内容

  • 没有找到相关文章

最新更新