.vmm (Display VMM Commands)

.vmm
 

Displays a menu of subcommands. Pressing a single key causes the corresponding command to be carried out.

Service Comments
[A] System time Displays the current system time.
[B] Display Critical Section info  
[C] Display blocked thread information
[D] Reset dyna-link profile counts
[E] I/O port trap information Displays information about I/O emulation handling. The first section displays general information about the hash table used to dispatch trapped I/O instructions. The second section lists each I/O port trapped, number of times trapped, percentage of total number if I/O traps, current trapping state, hash function result, table index, offset from ideal table index, and handler routine name. This information is useful for determining which ports are trapped frequently and thus need to be tuned for speed.
[F] Reset I/O profile counts Reset the trap counts on all I/O ports. Useful for isolating the profile information to a particular section of execution, such as reading from a floppy drive, etc.
[G] Turn procedure call trace logging on/off Toggles the state of call tracing. When on, each debugging code created by the BeginProc macro performs a Queue_Out of the routine name each time it is entered. Thus when ".S" is invoked to dump a fault log, the log will be interspersed with messages stating each routine name as it is called and who called it, so it is possible to get a complete execution log.
[H] V86 interrupt hook information Displays the V86 interrupt table; showing the current vector assignment and which VMM/device driver routines have hooked the interrupt, if any. This command gives a look at which interrupts are looked at by the different device drivers, etc.
[I] PM interrupt hook information This command is similar to G, but show the logical PM interrupt table. It shows current vector assignments and routine names that are hooked into the interrupt chains.
[J] Reset PM and V86 interrupt profile counts  
[K] Display event lists This command displays the list of current global events, and then of list of local events for each VM.
[L] Display device list This command displays the list of loaded devices along with the information from each Device Descriptor Block. Type .VMM L={DDB}, where DDB is the name of the VxD, to list an explicit module.
[M] Display V86 break points This command displays a list of all V86 break points that are currently allocated. This list shows that CS:IP of the break point, the Ring 0 callback address/label and the reference data.
[N] Display PM break points This command displays a list of all PM break points that are currently allocated. This list shows that CS:IP of the break point, the Ring 0 callback address/label and the reference data.
[O] Display interrupt profile Profiles the activity (counts) of V86 Ints, PM Ints and VMM Ints
[P] Reset interrupt profile counts  
[Q] Display GP fault profile Profiles General Protection Fault activity
[R] Reset GP fault profile counts  
[S] Toggle verbose device call trace Turn on verbose device tracing to displays the name of each VxD before it is called, and OK when the VxD returns.
[T] Dyna-link service profile information Displays a list of all services (in VMM and all devices) that shows the number of times the service has been called, the service number, routine address, and routine name. This information is a pseudo profile of which services are used frequently and thus should be tuned for speed.
[U] Fault Hook information Displays all V86 fault hooks, PM fault hooks and VMM fault hooks.
[V] Display time out queues Displays all the time out queues including the Async time out queue and Global time out queue.
[W] PM CLI/STI trace info  
[X] DPMI info