memcheck

About 1 min

memcheck

命令功能

检查动态申请的内存块是否完整,是否存在内存越界造成节点损坏。

命令格式

memcheck

参数说明

无。

使用指南

  • 当内存池所有节点完整时,输出"system memcheck over, all passed!"。
  • 当内存池存在节点不完整时,输出被损坏节点的内存块信息。

使用实例

举例:

  • 输入memcheck
  • 输入memcheck出现内存越界

输出说明

示例 1 当前没有内存越界

OHOS # memcheck
system memcheck over, all passed!
1
2

示例 2 出现内存越界

[L0S DLnkCheckMenl 349, memory check
stFreeNodeInfo.pstPrev:0x7e0d31f3 is out of legal mem range[0x80ba5f40, 0х83d00000]
cur node: 0x81f2ce0c
pre node: 0x81f28a98
pre node was allocated by task:sofia
uwEхcTуpe = 0х2
puмExcBuffAddr pc = 0x803ad7a4
puwExcBuffAddr lr = 0x803ad7a4
puwExcBuffAddr sp = 0х80cb7de0
puwExcBuffAddr fp = 0x80cb7dec
*******backtrace begin*******
traceback 0 -- lr = 0х8037cb84
traceback 0 -- fp = 0х80cb7e1c
traceback 1 -- lr = 0х8037033c
traceback 1 -- fp = 0х80cb7e24
traceback 2 -- lr = 0x8000d108
traceback 2 -- fp = 0х80cb7e94
traceback 3 -- lr = 0х8037c7ac
traceback 3 -- fp = 0х80cb7ea4
traceback 4 -- lr = 0x803ad9e8
traceback 4 -- fp = 9x11111111
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21