lm (elenco moduli caricati)
Il comando lm visualizza i moduli caricati specificati. L'output include lo stato e il percorso del modulo.
lm Options [a Address] [m Pattern | M Pattern]
Parametri
Opzioni
Qualsiasi combinazione delle opzioni seguenti:
D
Visualizza l'output usando Il linguaggio di markup del debugger.
o
Visualizza solo i moduli caricati.
l
Visualizza solo i moduli i cui dati sui simboli sono stati caricati.
v
Determina che la visualizzazione sia dettagliata. La visualizzazione include il nome del file di simboli, il nome del file di immagine, le informazioni sul checksum, le informazioni sulla versione, gli indicatori di data, i timestamp e le informazioni su se il modulo è codice gestito (CLR). Queste informazioni non vengono visualizzate se le intestazioni pertinenti mancano o vengono visualizzate in pagina.
u
(solo modalità kernel) Visualizza solo le informazioni sui simboli in modalità utente.
k
(solo modalità kernel) Visualizza solo le informazioni sui simboli in modalità kernel.
h
Visualizza solo i moduli che presentano un problema di simboli. Questi simboli includono moduli che non dispongono di simboli e moduli il cui stato del simbolo è C, T, #, M o Export. Per altre informazioni su queste notazioni, vedere Abbreviazioni dello stato dei simboli.
c
Visualizza i dati checksum.
1m
Riduce l'output in modo che nulla sia incluso tranne i nomi dei moduli. Questa opzione è utile se si usa il token foreach per inviare l'output del comando all'input di un altro comando.
sm
Ordina la visualizzazione in base al nome del modulo anziché all'indirizzo iniziale.
È inoltre possibile includere solo una delle opzioni seguenti. Se non si include alcuna di queste opzioni, la visualizzazione include il nome del file di simboli.
i
Visualizza il nome del file di immagine.
f
Visualizza il percorso dell'immagine completa. Questo percorso corrisponde sempre al percorso visualizzato nella notifica di caricamento iniziale, a meno che non sia stato rilasciato un comando .reload -s . Quando si usa f, le informazioni sul tipo di simbolo non vengono visualizzate.
n
Visualizza il nome dell'immagine. Quando si usa n, le informazioni sul tipo di simbolo non vengono visualizzate.
p
Visualizza il nome dell'immagine mappata. Quando si usa p, le informazioni sul tipo di simbolo non vengono visualizzate.
t
Visualizza i timestamp dei file. Quando si usa t, le informazioni sul tipo di simbolo non vengono visualizzate.
indirizzo
Specifica un indirizzo contenuto in questo modulo. Viene visualizzato solo il modulo che contiene questo indirizzo. Se Address contiene un'espressione, deve essere racchiusa tra parentesi.
m Pattern
Specifica un modello che il nome del modulo deve corrispondere. Il modello può contenere un'ampia gamma di caratteri jolly e identificatori. Per altre informazioni sulla sintassi di queste informazioni, vedere Sintassi con caratteri jolly stringa.
Nella maggior parte dei casi, il nome del modulo è il nome del file senza l'estensione del nome file. Ad esempio, se si desidera visualizzare informazioni sul driver Flpydisk.sys, usare il comando lm mflpydisk, non lm mflpydisk.sys. In alcuni casi, il nome del modulo differisce in modo significativo dal nome del file.
Modello M
Specifica un modello che deve corrispondere al percorso dell'immagine. Il modello può contenere un'ampia gamma di caratteri jolly e identificatori. Per altre informazioni sulla sintassi di queste informazioni, vedere Sintassi con caratteri jolly stringa.
Ambiente
Elemento | Descrizione |
---|---|
Modalità | Modalità utente, modalità kernel |
Targets | Dump live, arresto anomalo |
Piattaforme | Tutti |
Commenti
Il comando lm elenca tutti i moduli e lo stato dei simboli per ogni modulo.
Windows gestisce un elenco di moduli non caricato per i processi in modalità utente. Quando si esegue il debug di un processo in modalità utente o di un file dump, il comando lm mostra anche questi moduli scaricati.
I moduli visualizzati dipendono dalla modalità di debug, ad esempio la modalità utente o kernel e il contesto specifico che si sta esaminando. Per altre informazioni sul contesto del processo e altre impostazioni di contesto, vedere Modifica dei contestie controllo dei processi e dei thread.
Questo comando mostra diverse colonne o campi, ognuno con un titolo diverso. Alcuni di questi titoli hanno significati specifici:
il nome del modulo è in genere il nome del file senza l'estensione del nome file. In alcuni casi, il nome del modulo differisce in modo significativo dal nome del file.
Il tipo di simbolo segue immediatamente il nome del modulo. Questa colonna non è etichettata. Per altre informazioni sui vari valori di stato, vedere Abbreviazioni dello stato dei simboli. Se sono stati caricati simboli, il nome del file di simbolo segue questa colonna.
Il primo indirizzo nel modulo viene visualizzato come inizio. Il primo indirizzo dopo la fine del modulo viene visualizzato come fine. Ad esempio, se start è "faab4000" e end è "faab8000", il modulo si estende da 0xFAAB4000 a 0xFAAB7FFF, inclusivo.
solo lmv : la colonna percorso immagine mostra il nome del file eseguibile, inclusa l'estensione del nome file. In genere, il percorso completo è incluso in modalità utente, ma non in modalità kernel.
solo lmv: il valore del file di immagine del simbolo caricato corrisponde al nome dell'immagine, a meno che non siano presenti simboli di Microsoft CodeView.
solo lmv: il valore del file di immagine di memoria mappato non viene in genere usato. Se il debugger esegue il mapping di un file di immagine,ad esempio durante il debug minidump, questo valore è il nome dell'immagine mappata.
Nell'esempio di codice seguente viene illustrato il comando lm usando le opzioni m e s*, quindi vengono visualizzati solo i moduli che iniziano con "s".
kd> lm m s*
start end module name
f9f73000 f9f7fd80 sysaudio (deferred)
fa04b000 fa09b400 srv (deferred)
faab7000 faac8500 sr (deferred)
facac000 facbae00 serial (deferred)
fb008000 fb00ba80 serenum e:\mysymbols\SereEnum.pdb\.......
fb24f000 fb250000 swenum (deferred)
Unloaded modules:
f9f53000 f9f61000 swmidi.sys
fb0ae000 fb0b0000 splitter.sys
fb040000 fb043000 Sfloppy.SYS
Esempio
I due esempi seguenti mostrano il comando lm una volta senza opzioni e una volta con l'opzione sm. Confrontare l'ordine di ordinamento nei due esempi.
Esempio 1:
0:000> lm
start end module name
01000000 0100d000 stst (deferred)
77c10000 77c68000 msvcrt (deferred)
77dd0000 77e6b000 ADVAPI32 (deferred)
77e70000 77f01000 RPCRT4 (deferred)
7c800000 7c8f4000 kernel32 (deferred)
7c900000 7c9b0000 ntdll (private pdb symbols) c:\db20sym\ntdll.pdb
Esempio 2:
0:000> lm sm
start end module name
77dd0000 77e6b000 ADVAPI32 (deferred)
7c800000 7c8f4000 kernel32 (deferred)
77c10000 77c68000 msvcrt (deferred)
7c900000 7c9b0000 ntdll (private pdb symbols) c:\db20sym\ntdll.pdb
77e70000 77f01000 RPCRT4 (deferred)
01000000 0100d000 stst (deferred)