《Windows用户态程序高效排错》的可打印版本。
下载地址:
http://blogs.msdn.com/lixiong/attachment/746339.ashx
请看了这本书之后再评价好坏,觉得书不好绝不要顶,让帖子沉下去。
小备注:图书版比电子版多2章,好书总共4章吧(貌似)
为了方便使用,我把 《Windows用户态程序高效排错》 中涉及到的链接都做成索引放到这里。其中好多链接本来是在我MSN Space blog上的,由于担心教育网用户可能无法访问MSN Blog,所以把相关的MSN Space上的文章也拷贝过来放到了这里。
DataSet and DataTable in ADO.NET 2.0
http://msdn.microsoft.com/msdnmag/issues/05/11/DataPoints/default.aspx
Reflector for .NET
http://www.aisto.com/roeder/dotnet/
SafeHandle: A Reliability Case Study [Brian Grunkemeyer]
http://blogs.msdn.com/bclteam/archive/2005/03/16/396900.aspx
CLR SafeHandle Consideration [grapef]
http://eparg.spaces.msn.com/blog/cns!59BFC22C0E7E1A76!576.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791949.aspx RFC 1925 (RFC1925)
http://www.faqs.org/rfcs/rfc1925.html
http://blog.csdn.net/eparg/archive/2007/09/19/1791954.aspx
Large memory support is available in Windows Server 2003 and in Windows 2000
http://support.microsoft.com/kb/283037/en-us
How to use the /userva switch with the /3GB switch to tune the User-mode space to a value between 2 GB and 3 GB
http://support.microsoft.com/kb/316739/en-us
CLR Profiler for the .NET Framework 2.0
http://www.microsoft.com/downloads/details.aspx?FamilyID=a362781c-3870-43be-8926-862b40aa0cd0&DisplayLang=en
No Code Can Hide from the Profiling API in the .NET Framework 2.0
http://msdn.microsoft.com/msdnmag/issues/05/01/CLRProfiler/default.aspx
CLR Debugging vs. CLR Profiling
http://blogs.msdn.com/jmstall/archive/2004/10/22/246151.aspx
CWnd::PreTranslateMessage
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_mfc_cwnd.3a3a.pretranslatemessage.asp
Why do I get spurious WM_MOUSEMOVE messages?
http://blogs.msdn.com/oldnewthing/archive/2003/10/01/55108.aspx
How to disable the default pop-up menu for CHtmlView in Visual C++
http://support.microsoft.com/?id=236312
Description of a documentation error in the "Assembly.Load Method (Byte[])" topic in the .NET Framework Class Library online documentation
http://support.microsoft.com/kb/915589/en-us
There's an awful lot of overclocking out there
http://blogs.msdn.com/oldnewthing/archive/2005/04/12/407562.aspx
VS2003在push edi的时候AV
http://eparg.spaces.msn.com/Blog/cns!1pnPgEC6RF6WtiSBWIHdc5qQ!379.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791962.aspx
SEH,DEP, Compiler,FS:[0], LOAD_CONFIG and PE format
http://eparg.spaces.msn.com/blog/cns!59BFC22C0E7E1A76!712.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791966.aspx
FIX: Generation 1 garbage collections and generation 2 garbage collections occur much more frequently on computers that have 4 GB or more of physical memory in the .NET Framework 1.1
http://support.microsoft.com/kb/893360/en-us
Underpinnings of the Session State Implementation in ASP.NET
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/ASPNetSessionState.asp
HTTP Status code definition
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Install Debugging Tools for Windows 32-bit Version
http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx
DebugInfo:
http://www.debuginfo.com/
Windows Debuggers: Part 1: A WinDbg Tutorial
http://www.codeproject.com/debug/windbg_part1.asp
Windbg及其相关工具的下载地址:
http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx
What's wrong with you ? char *p
http://www.vchelp.net/itbookreview/view_paper.asp?paper_id=534
Debugging LSASS ... oh what fun, it is to ride..
http://blogs.msdn.com/spatdsg/archive/2005/12/27/507265.aspx
How to debug Windows services
http://support.microsoft.com/?kbid=824344
Symbols and Crash Dumps
http://msdn.microsoft.com/msdnmag/issues/02/06/Bugslayer/
Debug Tutorial Part 4: Writing WINDBG Extensions
http://www.codeproject.com/debug/cdbntsd4.asp
AoGo汇编小站
http://www.aogosoft.com/
Intel Architecture Manual volume 1,2,3
http://www.intel.com/design/pentium4/manuals/index_new.htm
PRB: Application Center Cluster Members Are Automatically Synchronized After Rebooting
http://support.microsoft.com/kb/282278/en-us
strcpy函数的性能
http://eparg.spaces.live.com/blog/cns!59BFC22C0E7E1A76!1498.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791973.aspx
A Crash Course on the Depths of Win32™ Structured Exception Handling
http://www.microsoft.com/msj/0197/Exception/Exception.aspx
RaiseException
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/debug/base/raiseexception.asp
SEH,DEP, Compiler,FS:[0], LOAD_CONFIG and PE format
http://eparg.spaces.msn.com/blog/cns!59BFC22C0E7E1A76!712.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791966.aspx
Description of the Dr. Watson for Windows (Drwtsn32.exe) Tool
http://support.microsoft.com/?id=308538
Specifying the Debugger for Unhandled User Mode Exceptions
http://support.microsoft.com/?id=121434
INFO: Choosing the Debugger That the System Will Spawn
http://support.microsoft.com/?id=103861
How to debug Windows services
http://support.microsoft.com/?kbid=824344
How to use ADPlus to troubleshoot "hangs" and "crashes"
http://support.microsoft.com/kb/286350/EN-US/
为何dr. Watson抓不到dump
http://eparg.spaces.msn.com/blog/cns!59BFC22C0E7E1A76!1213.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791986.aspx
Inside the Windows Vista Kernel: Part 3
http://www.microsoft.com/technet/technetmag/issues/2007/04/vistakernel/default.aspx?loc=en
How To Obtain a Userdump When COM+ Failfasts
http://support.microsoft.com/?id=287643
How to find the faulting stack in a process dump file that COM+ obtains
http://support.microsoft.com/?id=317317
How to debug UnhandleExceptionHandler
http://eparg.spaces.msn.com/blog/cns!59BFC22C0E7E1A76!1208.entry
Debug Tutorial Part 3: The Heap
http://www.codeproject.com/debug/cdbntsd3.asp
How to use Pageheap.exe in Windows XP and Windows 2000
http://support.microsoft.com/kb/286470/en-us
pageheap.exe
http://www.heijoy.com/debugdoc/pageheap.zip
http://blogs.msdn.com/lixiong/attachment/2792912.ashx
The Windows XP Low Fragmentation Heap Algorithm Feature Is Available for Windows 2000
http://support.microsoft.com/?id=816542
.NET Memory usage - A restaurant analogy
http://blogs.msdn.com/tess/archive/2006/09/06/742568.aspx
What are the C and C++ libraries my program would link with?
http://support.microsoft.com/kb/154753/en-us
Frequently asked questions about the Standard C++ library
http://support.microsoft.com/kb/154419/en-us
Memory Leak Detection Enabling
http://msdn2.microsoft.com/en-us/library/e5ewb1h3(VS.80).aspx
The CRT Debug Heap
http://msdn2.microsoft.com/en-us/library/974tc9t1(VS.80).aspx
FIX: OLE Automation BSTR caching will cause memory leak sources in Windows 2000
http://support.microsoft.com/?id=139071
C++ operator new[]和Debug Heap
http://eparg.spaces.live.com/blog/cns!59BFC22C0E7E1A76!1490.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791994.aspx
Application Verifier的下载地址在:
http://www.microsoft.com/technet/prodtechnol/windows/appcompatibility/appverifier.mspx
Using Application Verifier Within Your Software Development Lifecycle
http://msdn2.microsoft.com/en-us/library/aa480483.aspx
IndexOutOfRange Exception问题描述
http://community.sgdotnet.org/forums/1/23223/ShowThread.aspx
Windows 2000 SP4 Checked Build
http://www.microsoft.com/windows2000/downloads/servicepacks/sp4/sp4build/default.mspx
Using GC Efficiently – Part 2
http://blogs.msdn.com/maoni/archive/2004/09/25/234273.aspx
The Performance Benefits of NGen
http://msdn.microsoft.com/msdnmag/issues/06/05/CLRInsideOut/
Garbage Collection: Automatic Memory Management in the Microsoft .NET Framework
http://msdn.microsoft.com/msdnmag/issues/1100/gci/
You may receive an error message, or the computer may stop responding, when you host Web applications that use ASP.NET on a computer that is running Windows Server 2003
http://support.microsoft.com/?id=911716
Drill Into .NET Framework Internals to See How the CLR Creates Runtime Objects
http://msdn.microsoft.com/msdnmag/issues/05/05/JITCompiler/default.aspx
CLR牛人的blog
http://blogs.msdn.com/cbrumme/
Shared Source Common Language Infrastructure 2.0 Release
http://www.microsoft.com/downloads/details.aspx?FamilyId=8C09FD61-3F26-4555-AE17-3121B4F51D4D&displaylang=en
Special threads in CLR
http://blogs.msdn.com/yunjin/archive/2005/07/05/435726.aspx
Things to ignore when debugging an ASP.NET hang
http://blogs.msdn.com/tess/archive/2005/12/20/505862.aspx
Implications of using a helper thread for debugging
http://blogs.msdn.com/jmstall/archive/2004/10/13/241828.aspx
SOS Debugging Extension(SOS.dll)
http://msdn2.microsoft.com/en-us/library/bb190764(vs.80).aspx
Production Debugging for .NET Framework Applications
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/DBGrm.asp
Contention, poor performance, and deadlocks when you make Web service requests from ASP.NET applications
http://support.microsoft.com/?id=821268
If broken it is,fix it you should
http://blogs.msdn.com/tess/
ReleaseCOMObject API
http://msdn2.microsoft.com/en-us/library/system.runtime.interopservices.marshal.releasecomobject.aspx
ReleaseCOMObject
http://blogs.msdn.com/cbrumme/archive/2003/04/16/51355.aspx
Asynchronous operations, pinning
http://blogs.msdn.com/cbrumme/archive/2003/05/06/51385.aspx
OutOfMemoryException and Pinning
http://blogs.msdn.com/yunjin/archive/2004/01/27/63642.aspx
Mixed DLL Loading Problem
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/vcconMixedDLLLoadingProblem.asp
5个著名的CLR Blog
http://blogs.msdn.com/cbrumme
http://www.cnblogs.com/flier
http://blogs.msdn.com/maoni
http://blogs.msdn.com/tess
http://blogs.msdn.com/yunjin
Overview of the Microsoft Configuration Capture Utility (MPS_REPORTS)
http://support.microsoft.com/kb/818742/
http://www.microsoft.com/downloads/details.aspx?FamilyId=CEBF3C7C-7CA5-408F-88B7-F9C79B7306C0&displaylang=en
How To Obtain a Userdump When COM+ Failfasts
http://support.microsoft.com/?id=287643
Description of the Dr. Watson for Windows (Drwtsn32.exe) Tool
http://support.microsoft.com/kb/308538/en-us
INFO: Choosing the Debugger That the System Will Spawn
http://support.microsoft.com/kb/103861/en-us
How To Obtain a Userdump When COM+ Failfasts
http://support.microsoft.com/?id=287643
Event ID 1003 with ASP.NET Deadlock
http://support.microsoft.com/kb/325947/en-us
.NET Crash: Managed Heap Corruption calling unmanaged code
http://blogs.msdn.com/tess/archive/2006/02/09/528591.aspx
Are you aware that you have thrown over 40,000 exceptions in the last 3 hours?
http://blogs.msdn.com/tess/archive/2005/11/30/498297.aspx
VS2003在push edi的时候AV
http://eparg.spaces.msn.com/Blog/cns!1pnPgEC6RF6WtiSBWIHdc5qQ!379.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1791962.aspx
Compiler Security Checks In Depth
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/
vctchcompilersecuritychecksindepth.asp
在家用Windbg杀小强
http://eparg.spaces.live.com/blog/cns!59BFC22C0E7E1A76!1475.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1792009.aspx
How to create a log using System Monitor in Windows
http://support.microsoft.com/?id=248345
How to use the /userva switch with the /3GB switch to tune the User-mode space to a value between 2 GB and 3 GB
http://support.microsoft.com/kb/316739/en-us
博客园Blog程序遇到的奇怪问题:
http://www.cnblogs.com/dudu/archive/2006/08/09/472162.html
分析及解决SQLServer死锁问题。
http://blog.joycode.com/juqiang/archive/2006/12/18/89218.aspx
http://blog.joycode.com/juqiang/archive/2006/12/18/89223.aspx
Improving String Handling Performance in .NET Framework Applications
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/vbnstrcatn.asp
ASP.NET: Strong named assemblies should not be stored in the bin directory
http://blogs.msdn.com/tess/archive/2006/04/13/575361.aspx
The system memory usage and the handle counts increase more than you may expect when your application contains components that are derived from the System.EnterpriseServices. ServicedComponent class
http://support.microsoft.com/kb/312118/en-us
BUG: Multithreaded applications can deadlock because of asynchronous cleanup
http://support.microsoft.com/kb/327443/en-us
FIX: Various Problems When You Call Transactional COM+ Components from ASP.NET
http://support.microsoft.com/kb/318000/en-us
Nine tips for a healthy "in production" ASP.NET application
http://blogs.msdn.com/dougste/archive/2006/04/05/568671.aspx
托管代码和非托管代码效率的对比:
http://www.cnblogs.com/wuchang/archive/2006/12/07/584997.html
真相,看问题的层次:
http://eparg.spaces.live.com/blog/cns!59BFC22C0E7E1A76!2274.entry
http://blog.csdn.net/eparg/archive/2007/09/19/1792013.aspx
.NET Memory usage - A restaurant analogy
http://blogs.msdn.com/tess/archive/2006/09/06/742568.aspx
Umdhtools.exe:如何使用 umdh.exe 来查找内存泄露。
http://support.microsoft.com/kb/268343/zh-cn
IIS Diagnostics Toolkit (x86)
http://www.microsoft.com/downloads/details.aspx?familyid=9BFA49BC-376B-4A54-95AA-73C9156706E7&displaylang=en
The Debug Diagnostic 1.1 tool is now available
http://support.microsoft.com/?id=931370
CLR内存碎片
http://blogs.msdn.com/maoni/archive/2004/12/19/327149.aspx
http://blogs.msdn.com/maoni/archive/2005/10/03/476750.aspx
http://blogs.msdn.com/tess/archive/2005/11/25/496898.aspx
Who is this OutOfMemory guy and why does he make my process crash when I have plenty of memory left?
http://blogs.msdn.com/tess/archive/2005/11/25/496898.aspx
Quick things to check when you experience high memory levels in ASP.NET
http://support.microsoft.com/kb/893660/en-us
PRB: Cannot unload assemblies that you create and load by using script in XSLT
http://support.microsoft.com/kb/316775/en-us
Detect and Plug GDI Leaks in Your Code with Two Powerful Tools for Windows XP
http://msdn.microsoft.com/msdnmag/issues/03/01/GDILeaks/default.aspx
Resource Leaks: Detecting,Locating,and Repairing Your Leaky GDI Code
http://msdn.microsoft.com/msdnmag/issues/01/03/leaks/default.aspx
INFO: Services,Desktops,and Window Stations
http://support.microsoft.com/kb/171890/en-us
PRB: User32.dll or Kernel32.dll fails to initialize
http://support.microsoft.com/kb/184802/en-us
"Out of Memory" error message appears when you have a large number of programs running
http://support.microsoft.com/kb/126962/en-us
A new System log entry is not generated if the desktop heap is exhausted in Microsoft Windows 2000
http://support.microsoft.com/kb/810807/en-us
Desktop Heap Monitor Version 8.1
http://www.microsoft.com/downloads/details.aspx?FamilyID=5CFC9B74-97AA-4510-B4B9-B2DC98C8ED8B&displaylang=en
When you try to connect from TCP ports greater than 5000 you receive the error 'WSAENOBUFS (10055)'
http://support.microsoft.com/kb/196271/en-us
出自作者CSDN博客:
http://blog.csdn.net/eparg/archive/2007/09/19/1792015.aspx
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!