1e41f4b71Sopenharmony_ci# memcheck
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## 命令功能
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ci检查动态申请的内存块是否完整,是否存在内存越界造成节点损坏。
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci
9e41f4b71Sopenharmony_ci## 命令格式
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_cimemcheck
12e41f4b71Sopenharmony_ci
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci## 参数说明
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci## 使用指南
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ci- 当内存池所有节点完整时,输出"system memcheck over, all passed!"。
22e41f4b71Sopenharmony_ci
23e41f4b71Sopenharmony_ci- 当内存池存在节点不完整时,输出被损坏节点的内存块信息。
24e41f4b71Sopenharmony_ci
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci## 使用实例
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ci举例:
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ci- 输入memcheck
31e41f4b71Sopenharmony_ci
32e41f4b71Sopenharmony_ci- 输入memcheck出现内存越界
33e41f4b71Sopenharmony_ci
34e41f4b71Sopenharmony_ci
35e41f4b71Sopenharmony_ci## 输出说明
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci**示例1** 当前没有内存越界
38e41f4b71Sopenharmony_ci
39e41f4b71Sopenharmony_ci```
40e41f4b71Sopenharmony_ciOHOS # memcheck
41e41f4b71Sopenharmony_cisystem memcheck over, all passed!
42e41f4b71Sopenharmony_ci```
43e41f4b71Sopenharmony_ci
44e41f4b71Sopenharmony_ci**示例2** 出现内存越界
45e41f4b71Sopenharmony_ci
46e41f4b71Sopenharmony_ci```
47e41f4b71Sopenharmony_ci[L0S DLnkCheckMenl 349, memory check
48e41f4b71Sopenharmony_cistFreeNodeInfo.pstPrev:0x7e0d31f3 is out of legal mem range[0x80ba5f40, 0х83d00000]
49e41f4b71Sopenharmony_cicur node: 0x81f2ce0c
50e41f4b71Sopenharmony_cipre node: 0x81f28a98
51e41f4b71Sopenharmony_cipre node was allocated by task:sofia
52e41f4b71Sopenharmony_ciuwEхcTуpe = 0х2
53e41f4b71Sopenharmony_cipuмExcBuffAddr pc = 0x803ad7a4
54e41f4b71Sopenharmony_cipuwExcBuffAddr lr = 0x803ad7a4
55e41f4b71Sopenharmony_cipuwExcBuffAddr sp = 0х80cb7de0
56e41f4b71Sopenharmony_cipuwExcBuffAddr fp = 0x80cb7dec
57e41f4b71Sopenharmony_ci***backtrace begin***
58e41f4b71Sopenharmony_citraceback 0 -- lr = 0х8037cb84
59e41f4b71Sopenharmony_citraceback 0 -- fp = 0х80cb7e1c
60e41f4b71Sopenharmony_citraceback 1 -- lr = 0х8037033c
61e41f4b71Sopenharmony_citraceback 1 -- fp = 0х80cb7e24
62e41f4b71Sopenharmony_citraceback 2 -- lr = 0x8000d108
63e41f4b71Sopenharmony_citraceback 2 -- fp = 0х80cb7e94
64e41f4b71Sopenharmony_citraceback 3 -- lr = 0х8037c7ac
65e41f4b71Sopenharmony_citraceback 3 -- fp = 0х80cb7ea4
66e41f4b71Sopenharmony_citraceback 4 -- lr = 0x803ad9e8
67e41f4b71Sopenharmony_citraceback 4 -- fp = 9x11111111
68e41f4b71Sopenharmony_ci```
69