2019/03/06
Visual C++ 디버깅 메모리 상태
0xcccccccc (3435973836)
할당된 Stack 메모리를 초기화 하지 않을 경우 채워지는 값
해당 값은 어셈블리 __asm int 3(break)와 동일하여 이 영역을 접근하면 break point에 적중된다.
When the code is compiled with the /GZ option, uninitialized variables are automatically assigned to this value (at byte level).
0xcdcdcdcd (3452816845)
할당된 Heap 메모리를 초기화 하지 않을 경우 채워지는 값
Clean Memory: Allocated memory via malloc or new but never written by the application.
0xdddddddd (3722304989)
0xfeeefeee (4277075694)
Free 된 Heap 메모리에 채워지는 값
Dead Memory: Memory that has been released with delete or free. It is used to detect writing through dangling pointers.
0xfdfdfdfd (4261281277)
할당된 Heap 메모리의 경계(전,후)에 채워지는 값
Fence Memory: Also known as "no mans land." This is used to wrap the allocated memory (like surrounding it with fences) and is used to detect indexing arrays out of bounds.
0xABABABAB (2880154539)
HeapAlloc으로 메모리 할당 후 가드 바이트에 채워진 값
(Allocated Block?): Memory allocated by LocalAlloc().
0xBAADF00D (3131961357)
LocalAlloc(LMEM_FIXED)으로 메모리를 할당한 후 초기화하지 않음
Bad Food: Memory allocated by LocalAlloc() with LMEM_FIXED, but not yet written to.
https://www.codeguru.com/cpp/w-p/win32/tutorials/article.php/c9535/Inside-CRT-Debug-Heap-Management.htm
할당된 Stack 메모리를 초기화 하지 않을 경우 채워지는 값
해당 값은 어셈블리 __asm int 3(break)와 동일하여 이 영역을 접근하면 break point에 적중된다.
When the code is compiled with the /GZ option, uninitialized variables are automatically assigned to this value (at byte level).
0xcdcdcdcd (3452816845)
할당된 Heap 메모리를 초기화 하지 않을 경우 채워지는 값
Clean Memory: Allocated memory via malloc or new but never written by the application.
0xdddddddd (3722304989)
0xfeeefeee (4277075694)
Free 된 Heap 메모리에 채워지는 값
Dead Memory: Memory that has been released with delete or free. It is used to detect writing through dangling pointers.
0xfdfdfdfd (4261281277)
할당된 Heap 메모리의 경계(전,후)에 채워지는 값
Fence Memory: Also known as "no mans land." This is used to wrap the allocated memory (like surrounding it with fences) and is used to detect indexing arrays out of bounds.
0xABABABAB (2880154539)
HeapAlloc으로 메모리 할당 후 가드 바이트에 채워진 값
(Allocated Block?): Memory allocated by LocalAlloc().
0xBAADF00D (3131961357)
LocalAlloc(LMEM_FIXED)으로 메모리를 할당한 후 초기화하지 않음
Bad Food: Memory allocated by LocalAlloc() with LMEM_FIXED, but not yet written to.
https://www.codeguru.com/cpp/w-p/win32/tutorials/article.php/c9535/Inside-CRT-Debug-Heap-Management.htm
Labels:
Debugging
,
Memory
,
Visual C++
Subscribe to:
Post Comments
(
Atom
)
No comments :
Post a Comment