First, let's talk about it.WindowsNecessary knowledge for development. Our goal is to write and runWindowsOnCodeSo we needWindowsI know something about it, so that we know what to do, what is right, and what is wrong when we encounter problems with the code we write, the following lists some basic knowledge.
1.The relationship between processes and threads, as well as synchronization and thread pool technologies.
2.What is user mode, what is kernel mode, and what isWindows session/terminal.
3.What is virtual memory, why is there Memory leakage, and how to capture Memory leakage.
4.What is an object, what is a handle, and how to monitor the leakage of handles and objects.
5.What is registry, andComWhat is the relationship,. NetHow is it built, and what is the principle of interoperability.
Next we will talk about tools. Good tools can often get twice the result with half the effort. It is very important to use the right tools.
Procexp.exe: All with this toolCallstack, DLL, Handle, The call relationship is clear at a glance.
Procmon.exe: This tool can help you monitor almost all types of files.
Wireshark:Packet Capture analysis is convenient in case of network problems.
Performance:CaptureMemory leak,It is useful to analyze issues related to user and kernel states.
Windbg/SOS: When you need debugging, the customer environment does not allow you to useVisual StudioYou can see everything you want to see through them.