论文部分内容阅读
In current situation reliability is a rapidly growing concern in contemporary serverhardware industry, both for server administrator as well as software developers. To improvereliability and dependability, system designers and programmers must consider having thefunctionality to enable the tracing log to detect any kind of server failure problem. To improveoperating system dependability, systems designers and programmers must analyze andunderstand the failure data to find the real culprit. Recent trends on the software industry haveshown that the number of software development projects and their increasing complexity willcontinue to increase the demand for skilled programmers. However, debugging technologyand techniques have not kept pace and valuable programmer resources are being wasted indebugging cycles. Correcting this trend requires innovative approaches and ways to assistingprogrammers during the debugging cycle to make them more productive both time wise andwith respect to how thoroughly the OS and software are debugged and troubleshoot.
Microsoft also provides infrastructure to harvest and analyze error reports from Windowssystems. This infrastructure makes it possible for System engineer to harvest and analyze theirorganizations problem with relatively modest investments.
The main purpose of this dissertation is to research Windows internal architecture andanalyze Windows dump for crash and hang problem to find out the culprit. This dissertationalso introduces lots of useful tips and tricks for debugging Windows kernel memory. In thisdissertation both Windows usermode and kernelmode components are discussed in detail tounderstand Windows internal data structure which is required to troubleshoot memorycorruption and code overwrite problems. This dissertation also covers the research for theMemory and Kernel resource leaking problem on the server.
A diagnostic tool named "Crash and Hang" alos calledC&S is developed during thisdissertation period. The C&S tool is written based on standard Windows driver model. Thistool demonstrates number of common device driver bugs, including accessing freed memory,overrunning buffers, and leak memory which are required for this dissertation work. It alsohas ability to cause server hang in order to show the effects of drivers that dont cancel I/Orequests which is also implemented and analyzed in this dissertation. Finally the dumps whichare generated by C&S tool has been debugged to find the real culprit for server hang andcrash problem.Keywords: Crash, Windows Kernel, Memory leak, Server hang, Memory dump