This is an archived page. It's not actively maintained.
この記事は、「Windows の限界に挑む」シリーズの 5 回目の投稿です。この一連の記事では、物理メモリ、仮想メモリ、プロセス、スレッドなど、Windows で管理できるリソースの数量とサイズの上限について扱ってきました。 Windows の限界に挑む: 物理メモリ Windows の限界に挑む: 仮想メモリ Windows の限界に挑む: ページ プールと非ページ プール Windows の限界に挑む: プロセスとスレッド 今回は、ハンドルの実装の限界を探り、解説します。ハンドルは、アプリケーションが操作する基本的なオペレーティング システムのオブジェクト (ファイル、レジストリ キー、同期プリミティブ、共有メモリなど) の開かれているインスタンスを表すデータ構造です。1 つのプロセスが作成できるハンドルの数については、2 つの制限があります。システムで設定されているプロセスごとのハン
VC++ のライブラリにはメモリリークの検出機能があります。関数ひとつ呼んでおくだけでアプリケーション終了時にメモリの解放漏れを出力ウィンドウに表示してくれるという便利なものなのですが、実際にこれを使うまでの過程に罠が多いのでメモしておきます。長すぎて我ながらわけがわからないので、興味のある方は最後の参考サイトだけ読んだらいいと思います。 使い方 普通に使う分には簡単です。 stdafx.h の末尾*1に : #if _DEBUG #define _CRTDBG_MAP_ALLOC #include <crtdbg.h> #define new new(_NORMAL_BLOCK, __FILE__, __LINE__) #endif と記述し、main 関数 (MFC であれば CWinApp::InitInstanceとか) 内部で ::_CrtSetDbgFlag(_CRTDBG_L
This information is surprisingly scarce on the Internet. I should have realized earlier that the world has simply moved on to more modern languages than those who tax us to deal with mundane things like memory leaks. Anyway, for those who’re still stuck, this should be your savior. This is almost as good as Valgrind on nix Minimal example #include <crtdbg.h> void leak() { ::operator new(1000); new
This is something I am pretty excited to tell you about. But first, some motivation. In managed applications, there’s a huge number of tools and ways to inspect the manage heap contents. You can use a memory profiler to see references between objects and inspect individual objects. You can use WinDbg with the SOS extension to dump all objects of a particular type and execute additional scripts and
Introduction Memory leak is a time consuming bug often created by C++ developers. Detection of memory leaks is often tedious. Things get worst if the code is not written by you, or if the code base is quite huge. Though there are tools available in the market that will help you in memory leak detection, most of these tools are not free. I found Windbg as a freeware powerful tool to solve memory le
すべての Microsoft 製品 Global Microsoft 365 Teams Copilot Windows Surface Xbox セール 法人向け サポート ソフトウェア Windows アプリ AI OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox Live Gold Xbox とゲーム PC ゲーム Windows ゲーム 映画とテレビ番組 法人向け Microsoft Cloud Microsoft Security Azure Dynamics 365 一般法人向け Microsoft 365 Microsoft Industry Microsoft Power Platform W
読み直してみると、読みたくなくなる記事だなwwww なので端的に… 1. Global Flagsを使って設定 2. WinDbgを実行 3. !heap -stat -h 0 4. プロセス実行 5. !heap -stat -h 0 6. 1.と3.の結果を比較 7.!heap -flt s サイズ 8.!heap -p -a アドレス この8手順を踏めば、メモリリークの(おそらく)原因の場所が突き止められます。 さて読みにくい本編です。 外部DLLを使っているので、.NETでおきているのか、外部DLLでおきているのかさっぱり解らなかったが このツールを使ってみると、なんとなーくみえてきた。 で、その使い方と注意事項をまとめてみました。 使ったツール: WinDbg Global Flags ダウンロードファイル:(2012年5月現在) winsdk_web.exe URL:http:
ANOOB BACKER Technical Blog about C, C++, Java, C#, SharePoint, Algorithms, Shell Script Tips, Tricks, Tweaks and Hacks Windbg is a tool from the house of MS. It come handy when debugging in a production enviornment as it is light weight. I have been using Windbg for the last few weeks and I would like to share some tips. Let us start of with memory leak analysis! Download Location: Debugging Tool
id: 706 所有者: msakamoto-sf 作成日: 2010-07-13 23:53:23 カテゴリ: WinDBG Windows プログラミング [ Prev ] [ Next ] [ 技術 ] WinDBG参考図書: "AWD"公式HP : Welcome to Advanced Windows Debugging, windows debugging portal, ... http://advancedwindowsdebugging.com/ Windowsデバッグの極意 http://ascii.asciimw.jp/books/books/detail/978-4-04-867608-3.shtml ※"AWD"サンプルコードのシンボルパスについて 本書中で紹介されているURLは2011年1月の時点でアクセス不能になっている。 http://www.advance
CrashMe is a simple application that implements several common debug situations and scenarios. As such it is a great help for both; your first steps with WinDbg or if you ever need to reproduce a particular crash within a test environment. Take a look at the screen-shot bellow or simply download it to get a hint of what we are talking about. Note: If you have an interesting situation that CrashMe
今回は、マイクロソフトのエンジニアが出演する人気のビデオ、Defrag Toolsの29回目で紹介されていた”WinDbg – ETW Logging”の内容を紹介します。 本ビデオでは、カーネルダンプから、まだディスクに吐き出されていないETW (=Event Tracing for Windows) ログを抽出する方法が紹介されていました。 以下、その内容の紹介です。 【内容】 ETWのログは、定期的にディスクに吐き出されています。ですので、ETWログがまだディスクに吐き出されていない状態でBSoD(= Blue Screen of Death)が発生すると、ディスクに吐き出されないままとなってしまい、通常の方法ではそのログを確認することができません。 ただし、今回紹介する方法を利用すると、カーネルダンプからETWのログを抽出し、確認することができます。 以下、具体的な手順です。 【手
Using WinDbg for Exploit Development Notes The following are some notes that I found useful when using windbg for exploit development. Setting up the symbols! 0:001> .sympath SRV*http://msdl.microsoft.com/download/symbols Symbol search path is: SRV*http://msdl.microsoft.com/download/symbols Expanded Symbol search path is: srv*http://msdl.microsoft.com/download/symbols 0:011> .reload Reloading curr
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く