"0x48151642"在malloc_debug_leak.cpp中的含义是什么



最近,我正在阅读android的libc-init代码。当我阅读 malloc_debug_leak.cpp 中的代码时,第 70 行和第 263 行,它如下。

#define GUARD               0x48151642 
static uint32_t MEMALIGN_GUARD      = 0xA1A41520;

我知道GUARDMEMALIGN_GUARD的含义,但我真的不明白值的含义,例如static uint32_t MEMALIGN_GUARD = 0x0001可以?或任何其他值。0xA1A41520有一些有用的信息吗?

https://i.stack.imgur.com/9lgzv.png

https://i.stack.imgur.com/ZMM5u.png

我真的不明白价值的含义

这是一个神奇的值,旨在捕获常见的编程错误。有关详细说明,请参阅此维基百科文章。

0x0001会没事吗?

不。它缺乏"不太可能被误认为其他含义的独特独特价值"属性。

当您在某个位置内存中看到值0x1时,该值很可能被许多不同的代码序列放置在那里。另一方面,当您看到 0xA1A41520 ,不太可能(尽管仍然可能)该值是由使用 MEMALIGN_GUARD 的代码以外的代码放置在那里的。

相关内容

  • 没有找到相关文章

最新更新