日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

内存检测工具Dr. Memory的使用

發布時間:2023/11/27 生活经验 76 豆豆
生活随笔 收集整理的這篇文章主要介紹了 内存检测工具Dr. Memory的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Dr. Memory是一個內存調試工具,它是一個開源免費的內存檢測工具,它能夠及時發現內存相關的編程錯誤,比如未初始化訪問、內存非法訪問、數組越界讀/寫、以及內存泄露等。它可以在Linux、Windows、Mac OS和Android操作系統上使用。關于Dr. Memory的更多說明可以參考其主頁:http://drmemory.org/

???????? 下面簡單說下其在Windows7上的使用過程:

1.??????從https://github.com/DynamoRIO/drmemory/wiki/Downloads上下載最新版本1.10.1的壓縮包DrMemory-Windows-1.10.1-3.zip (若官網下不下來可以從http://download.csdn.net/detail/fengbingchun/9545410下載),解壓縮;

2.??????新建DrMemory控制臺工程,測試代碼如下:

#include <iostream>void test1(); // 內存泄露
void test2(); // 非法訪問
void test3(); // 未初始化讀
void test4(); // Heap 操作參數錯誤(Invalid Heap Argument)int main()
{// reference: http://www.ibm.com/developerworks/cn/linux/1309_liuming_drmemory/test4();std::cout << "ok" << std::endl;return 0;
}void test1()
{char *ptr;for (int i = 0; i<100; i++) {ptr = (char*)malloc(i);if (i % 2) free(ptr);}
}void test2()
{char *x = (char*)malloc(8);char c = *(x + 8); // buffer overlowfree(x);c = *x; // read free memory
}typedef struct T_ {char a;char b;
}T;void test3()
{T a, b;char x;a.a = 'a';a.b = 'b';b.a = x; // error C4700:使用了未初始化的局部變量x,若使vs2013能夠正常編譯,需將配置屬性中的C/C++ SDL檢查關閉if (b.a == 10)memcpy(&b, &a, sizeof(T));
}void test4()
{char * ptr = NULL;ptr = new char;free(ptr);free(ptr); //
}

3.??????將DrMemory解壓縮后存放到E:\GitCode\DrMemory-Windows-1.10.1-3 下,通過命令提示符打開bin/drmemory.exe或bin64/drmemory.exe,然后輸入命令如下圖所示,目前DrMemory僅能檢測32位程序,調用64位程序檢測不出任何問題,如圖1中紅框所示。執行完后會在E:\GitCode\DrMemory-Windows-1.10.1-3\drmemory\logs\DrMemory-DrMemoryTest[dbg_x64_vc12].exe.972.000目錄下生成相應的results.txt文本文件,里面記錄了更多的細節。


4.??????test1()的執行結果如下圖:


test2()的執行結果如下圖:


test3()的執行結果如下圖:


test4()的執行結果如下圖:


GitHub:https://github.com/fengbingchun/Messy_Test

總結

以上是生活随笔為你收集整理的内存检测工具Dr. Memory的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

歡迎分享!

轉載請說明來源于"生活随笔",并保留原作者的名字。

本文地址:内存检测工具Dr. Memory的使用