⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vxdmon.htm

📁 这里面包含了很多的工具, 其中有DbgView这个非常方便的工具, 如进行VC编时, 在程序中加一句OutputDebugString("debug info"), 就可输出信息到DbgView这个工
💻 HTM
📖 第 1 页 / 共 2 页
字号:
                              the performance of VxD services. <i>VxDMon </i>is 
                              a system monitoring tool that allows you to profile 
                              Windows 95 VxD performance and behavior. <i>VxDMon</i>'s 
                              functionality is built on VxD service hooking. By 
                              using service hooking, VxDMon is able to monitor 
                              and time, via the Pentium's rdtsc (ReaD Time Stamp 
                              Counter) instruction, any and all VxD services including 
                              those of VxDs built into Windows and those added 
                              by a developer. In addition, VxDMon keeps track 
                              of VxD service call histories so that it can display 
                              useful information such as the list of all services 
                              that were called by a particular service during 
                              a monitoring session. This combination of VxD performance 
                              and call history information provides a never-before-seen 
                              look into the behavior of Windows.</td>
                          </tr>
                          <tr> 
                            <td colspan="3" height="40" valign="middle"><span class='sectionheader'>Installation 
                              and Use</span></td>
                          </tr>
                          <tr> 
                            <td valign="TOP" colspan="3"> <i>VxDMon </i>was designed 
                              for Pentium processors and requires that VXDMON.EXE 
                              be in the same directory as VXDMON.VXD. It will 
                              run on a 386 or 486 processor, but performance information 
                              will not be available since only the Pentium has 
                              a cycle counter. VXDMON.VXD is a dynamic VxD, meaning 
                              that no changes to system.ini or the registry are 
                              necessary. The typical way VxDMON is used is demonstrated 
                              in the following steps: 
                              <ol>
                                <li>Select services to be monitored </li>
                                <li>Collect performance and control-flow information</li>
                                <li>View the gathered statistics </li>
                              </ol>
                              <p>When <i>VxDMon </i>is started it checks to see 
                                if a hook profile exists in a file in the current 
                                directory called profile.dat. If a profile exists, 
                                <i>VxDMon </i>will ask if you desire that the 
                                services listed in the profile should be hooked. 
                                If no profile exists, the main window will open 
                                without a prompt. To create a hook profile the 
                                <b>Options|Select</b> Services menu item must 
                                be selected, which will open a tree-view containing 
                                all the services listed in a file called services.dat. 
                                When a service is clicked upon in this view, it 
                                will toggle between a selected state, indicated 
                                with a green icon, and an unselected state, indicated 
                                with a red icon. Yellow icons are used to identify 
                                VxDs that have some, but not all, of their services 
                                selected for monitoring. After a profile has been 
                                created, <i>VxDMon </i>must be told to begin monitoring 
                                the services selected. Choose the <b>Options|Hook</b> 
                                Now menu item in the selection window. A profile 
                                can be saved by choosing <b>Options|Save</b> Hook 
                                List.</p>
                              <p>Monitoring begins as soon as the services are 
                                hooked, and the statistics gathered by <i>VxDMon</i>'s 
                                VxD can be imported into the user interface by 
                                choosing <b>Options|Update Statistics</b> in the 
                                main window. The latest statistics are read from 
                                the VxD by selecting <b>Options|Update</b>, and 
                                reset to zero by selecting <b>Options|Reset</b>. 
                                Depending on the value of the <b>Preferences|Zero 
                                Statistics on Update</b> selection, <b>Options|Update</b> 
                                either accumulates the counts (off), or gives 
                                the counts since the previous Update (on).</p>
                              <p>Control-flow information can be seen by double 
                                clicking on a service in the main window, or by 
                                highlighting a service and choosing <b>Options|Show 
                                Ancestors</b> or <b>Options|Show Descendants</b>. 
                                A services ancestors are all services that preceeded 
                                the service in the control-flow. The immediate 
                                ancestors of a service include all the services 
                                that directly called it. Correspondingly, the 
                                descendants of a service are those services that 
                                followed it in the control-flow. The immediate 
                                descendants are those services that were directly 
                                called by the service. When ancestor or descendant 
                                information is selected, a new sub-window is opened 
                                that displays the control-flow hierarchy as a 
                                tree-view. The same ancestor/descendant selection 
                                facilities are available in the sub-window so 
                                that other services can have control-flow windows 
                                opened for them. Finally, both the main window 
                                and the control-flow windows have save capabilities 
                                that dump the windows contents in formatted ASCII 
                                to a file.</p>
                              <p><i>VxDMon </i>includes full on-line help that 
                                describes these steps in detail. It also tells 
                                you how you can add information about your own 
                                VxD to <i>VxDMon</i>'s database in order that 
                                <i>VxDMon </i>can monitor your own VxD services.<br>
                                <br>
                                <img src="../../images/screenshots/vxdshot1.gif" width="549" height="295"><br>
                                <br>
                                <img src="../../images/screenshots/vxdshot2.gif" width="299" height="169"> 
                                <br>
                                <br>
                                This is a screenshot of <i>VxDMon</i>'s statistics 
                                for a sample of typical Win95 activity, and a 
                                call-graph showing VxD services that invoke a 
                                particular VMM service.<font face="arial"></font> 
                            </td>
                          </tr>
                          <tr> 
                            <td colspan="3" height="40" valign="middle"><span class='sectionheader'>Source 
                              Code </span></td>
                          </tr>
                          <tr> 
                            <td valign="TOP" colspan="3"> <i>VxDMon </i>comes 
                              with full source code. Unlike many of our other 
                              Windows 95 VxD's, <i>VxDMon </i>is written in assembly 
                              language so you can build it with the Windows 95 
                              DDK. The <i>VxDMon </i>GUI was built with Visual 
                              C++ 2.x.</td>
                          </tr>
                          <tr> 
                            <td colspan="3" height="40" valign="middle" align="center">
                              <p>&nbsp;</p>
                              <p>&nbsp;</p>
                              <p><a href="../../files/vxdmon.zip"><b>Download VxDMon 
                                (62KB)</b></a></p>
                              <p><a href="../../files/vxdsrc.zip"><b>Download VxDMon 
                                Plus Source (316KB)</b></a><br>
                                <br>
                                <a href="#top"><b>Back to Top</b></a> </p>
                              </td>
                          </tr>
                        </table>
                      </td>
                    </tr>
                  </table>
                </TD>
              </TR>
            </TABLE>
            <!-- #EndEditable --></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
</body>
<!-- #EndTemplate --></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -