在 C 语言中很容易得到函数的起始地址,但不能得到它的大小。因此,我目前正在目标文件上执行“nm”,以便找到我的函数,然后找到下一个函数的起始地址。我需要执行“nm”,因为编译器可以(在我的情况下实际上可以)重新排序函数,因此源顺序可以与对象顺序不同。
我想知道是否还有其他方法可以做到这一点。例如,指示编译器保留目标文件中的源代码顺序等。也许有一些 ELF 魔法?
我的编译器是 GCC、CLANG 和 Sun Studio。平台:Solaris 及其衍生产品、MacOSX、FreeBSD。未来要拓展。
c compiler-construction elf compiler-optimization object-files
我很想知道SD卡是否提供类似于"SMART"信息的东西,比如硬盘和SSD.
我有兴趣检查Raspberry PI中SD卡的健康信息,以便进行预防性更换.我的写入需求非常高,对设备的物理访问很复杂,需要事先进行规划.
如果有信息,我可能会为此编写设备驱动程序.