home *** CD-ROM | disk | FTP | other *** search
/ The Best of Windows 95.com 1996 September / WIN95_09964.iso / toys / krnltoys.exe / CONVMEM.TXT next >
Text File  |  1996-04-20  |  9KB  |  237 lines

  1. Conventional Memory Tracking
  2. ============================
  3.  
  4. CONVMEM.VXD tracks the amount of memory allocated by virtual device
  5. drivers (VxDs) in conventional memory.  Normally, all this memory is
  6. reported against the VMM32 device rather than being broken down.
  7.  
  8. To install CONVMEM.VXD, copy the file into your Windows\System directory,
  9. and add the line
  10.  
  11.     device=convmem.vxd
  12.  
  13. to the [386Enh] section of the system.ini file.  Restart Windows 95,
  14. and then you will find a file called CONVMEM.TXT in your Windows directory.
  15.  
  16. To uninstall CONVMEM.VXD, delete the file CONVMEM.VXD and remove the
  17. above line from your system.ini file.
  18.  
  19. Interpreting the output
  20. =======================
  21.  
  22. The CONVMEM.TXT file consists of a table with the following headers:
  23.  
  24.     Address - The address at which the memory was allocated (hexadecimal)
  25.     Size    - The size of the memory block (hexadecimal)
  26.     Align   - The requested memory alignment
  27.     I       - The letter "I" if the block is instanced, else blank
  28.     Caller  - The virtual device driver that allocated the memory
  29.  
  30. A block of memory will be marked as "-- unused --" if it is not assigned
  31. to any virtual device.  This is normally either due to padding required
  32. to satisfy a device's alignment request, or unused bytes at the end of
  33. a page of memory.
  34.  
  35. Sample Output
  36. =============
  37.  
  38. VMM32 conventional memory usage
  39.  
  40.  Address     Size Align I Caller
  41. -------- -------- ----- - ------
  42. 0001ddd0 00000006  Byte   VMOUSE(02) + 000001A2
  43. 0001ddd6 0000000a         -- unused --
  44. 0001dde0 00000050  Para   V86MMGR(04) + 000001ED
  45. 0001de30 00000022  Para I VTD(02) + 0000022B
  46. 0001de52 0000000e         -- unused --
  47. 0001de60 00000020  Para   VCDFSD(03) + 0000005D
  48. 0001de80 00000034  Byte   VDD(04) + 000003E5
  49. 0001deb4 0000001f  Byte   VMOUSE(02) + 0000042C
  50. 0001ded3 00000007  Byte   VNETBIOS(04) + 0000037B
  51. 0001deda 00000006         -- unused --
  52. 0001dee0 00000008  Para   NWLINK(03) + 00000435
  53. 0001dee8 00000002  Byte   DOSMGR(04) + 0000032E
  54. 0001deea 0000000e  Byte   VSHARE(02) + 000002DB
  55. 0001def8 00000008         -- unused --
  56. 0001df00 00000037  Para   IFSMGR(02) + 00000726
  57. 0001df37 00000008  Byte   APIX(01) + 00000281
  58. 0001df3f 00000001         -- unused --
  59. 0001df40 00000041  Para I NWREDIR(04) + 00000356
  60. 0001df81 0000003e  Byte I SHELL(05) + 00000551
  61. 0001dfbf 00000041         -- unused --
  62. 000d1400 000001e4  Byte I MSMINI(02) + 000000A2
  63. 000d15e4 00000174  Word I DOSMGR(04) + 00000BF0
  64. 000d1758 00000254 Dword I DOSMGR(04) + 00001710
  65. 000d19ac 00000004         -- unused --
  66. 000d19b0 000003c0  Para   VSHARE(02) + 00000220
  67. 000d1d70 00000290         -- unused --
  68. 000d2000 00001000  Page   V86MMGR(04) + 00000CEC
  69. 000d3000 00000133  Para I IFSMGR(02) + 000006FC
  70. 000d3133 0000000d         -- unused --
  71. 000d3140 000002f7  Para   IFSMGR(02) + 0000136C
  72. 000d3437 00000009         -- unused --
  73. 000d3440 000003d4  Para   NWREDIR(04) + 00000309
  74. 000d3814 00000200  Word I VMM(05) + 00007974
  75. 000d3a14 0000007f  Byte   DOSMGR(04) + 00000473
  76. 000d3a93 0000056d         -- unused --
  77.  
  78. Total unused = 0000087f
  79.  
  80. Line-by-line Analysis
  81. =====================
  82.  
  83. The following is a line-by-line analysis of the sample output.
  84. The "Address" and (to a lesser extent) "Size" values may vary
  85. from machine to machine, but the "Caller" will normally remain
  86. consistent.  Of course, not all lines may appear on all machines.
  87. (For example, if your computer does not have a network installed,
  88. then you won't find any of the network-related lines.)
  89.  
  90.  
  91. 0001ddd0 00000006  Byte   VMOUSE(02) + 000001A2
  92.  
  93.     These bytes are used by the mouse driver for compatibility
  94.     with MS-DOS applications which use the Int 33h interface in
  95.     unusual ways.
  96.  
  97.     - One byte for the SLICK editor.
  98.     - One byte for most DOS-extended programs.
  99.     - Four bytes for old BASIC interpreters.
  100.  
  101. 0001dde0 00000050  Para   V86MMGR(04) + 000001ED
  102.  
  103.     These bytes are used as part of memory manager emulation.
  104.  
  105.     - 74 bytes for EMS emulation.
  106.     -  6 bytes for XMS emulation.
  107.  
  108. 0001de30 00000022  Para I VTD(02) + 0000022B
  109.  
  110.     These bytes are used by the Virtual Timer Device as part of its
  111.     timer emulation for MS-DOS programs.
  112.  
  113. 0001de60 00000020  Para   VCDFSD(03) + 0000005D
  114.  
  115.     These bytes are used by CD-ROM File System driver as part of
  116.     its MSCDEX emulation.
  117.  
  118. 0001de80 00000034  Byte   VDD(04) + 000003E5
  119.  
  120.     These bytes are used by the display driver for compatibility
  121.     with MS-DOS applications which use the Int 10h interface in
  122.     unusual ways, particularly those which use the Video
  123.     Electronics Standards Assocation (VESA) interface.
  124.  
  125. 0001deb4 0000001f  Byte   VMOUSE(02) + 0000042C
  126.  
  127.     These bytes are used by the mouse driver for compatibility
  128.     with MS-DOS applications which use the Int 10h interface in
  129.     unusual ways.
  130.  
  131. 0001ded3 00000007  Byte   VNETBIOS(04) + 0000037B
  132.  
  133.     These bytes are used by the network driver for compatibility
  134.     with 16-bit network drivers and MS-DOS applications which use
  135.     network interfaces in unusual ways.
  136.  
  137.     - 2 bytes for compatibility with 16-bit network drivers
  138.     - 5 bytes for unusual users of Int 5Ch
  139.  
  140. 0001dee0 00000008  Para   NWLINK(03) + 00000435
  141.  
  142.     These bytes are used by the network driver for compatibility
  143.     with the IPX MS-DOS network interface and MS-DOS applications
  144.     which use network interfaces in unusual ways.
  145.  
  146.     - 1 byte for compatibility with some applications
  147.     - 7 bytes for compatibility with IPX
  148.  
  149. 0001dee8 00000002  Byte   DOSMGR(04) + 0000032E
  150.  
  151.     These bytes are used for compatibility with certain MS-DOS
  152.     applications which use MS-DOS Int 24h in unusual ways.
  153.  
  154.     - 2 bytes for compatibility with Wing Commander 3
  155.  
  156. 0001deea 0000000e  Byte   VSHARE(02) + 000002DB
  157.  
  158.     These bytes are used by the VSHARE device to provide file
  159.     sharing support to MS-DOS applications.
  160.  
  161. 0001df00 00000037  Para   IFSMGR(02) + 00000726
  162.  
  163.     These bytes are used by the Installable File System Manager
  164.     device to provide device driver services for drives which
  165.     exist only in protected mode.
  166.  
  167. 0001df37 00000008  Byte   APIX(01) + 00000281
  168.  
  169.     These bytes are used to provide emulation of the Common Access
  170.     Method (CAM) interface for Small Computer Systems Interface (SCSI)
  171.     devices.
  172.  
  173. 0001df40 00000041  Para I NWREDIR(04) + 00000356
  174.  
  175.     These bytes are used to provide MS-DOS emulation for the Novell
  176.     NetWare-Compatible network redirector.
  177.  
  178. 0001df81 0000003e  Byte I SHELL(05) + 00000551
  179.  
  180.     These bytes are used by the Windows 95 MS-DOS shell to detect
  181.     when an application has entered or exited a graphics mode.
  182.  
  183. 000d1400 000001e4  Byte I MSMINI(02) + 000000A2
  184.  
  185.     These bytes are used by the mouse driver as part of MOUSE.COM
  186.     emulation.
  187.  
  188. 000d15e4 00000174  Word I DOSMGR(04) + 00000BF0
  189.  
  190.     These bytes are used by the MS-DOS Manager virtual device in
  191.     order to start a program in a new MS-DOS session.
  192.  
  193. 000d1758 00000254 Dword I DOSMGR(04) + 00001710
  194.  
  195.     These bytes are used by the MS-DOS Manager virtual device in
  196.     order to increase the value of FILES= in config.sys.
  197.  
  198. 000d19b0 000003c0  Para   VSHARE(02) + 00000220
  199.  
  200.     These bytes are used by the VSHARE device to provide file
  201.     sharing support to MS-DOS applications which use FCBs.
  202.  
  203. 000d2000 00001000  Page   V86MMGR(04) + 00000CEC
  204.  
  205.     Memory allocated by V86MMGR(04) + 00000CEC is used as part
  206.     of service translation.  The size of this memory is typically
  207.     4096 bytes (1000h), but other VxDs may request that V86MMGR allocate
  208.     more memory for service translation.
  209.  
  210. 000d3000 00000133  Para I IFSMGR(02) + 000006FC
  211.  
  212.     These bytes are used by the Installable File System Manager
  213.     device in order to support long file name operations.
  214.  
  215. 000d3140 000002f7  Para   IFSMGR(02) + 0000136C
  216.  
  217.     These bytes are used by the Installable File System Manager
  218.     device to provide device driver information for drives which
  219.     exist only in protected mode.
  220.  
  221. 000d3440 000003d4  Para   NWREDIR(04) + 00000309
  222.  
  223.     These bytes are used by the network driver for compatibility
  224.     with the Novell NetWare MS-DOS network interface.
  225.  
  226. 000d3814 00000200  Word I VMM(05) + 00007974
  227.  
  228.     These bytes are used when the Virtual Machine Manager needs
  229.     to execute 16-bit code temporarily on behalf of another
  230.     virtual device driver.
  231.  
  232. 000d3a14 0000007f  Byte   DOSMGR(04) + 00000473
  233.  
  234.     These bytes are used by the MS-DOS Manager virtual device in
  235.     order to increase the number of files that can be opened by
  236.     Windows.
  237.