Simbolo imposta informazioni di Debug Windows

Traduzione articoli Traduzione articoli
Identificativo articolo: 138258 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo fornisce informazioni dettagliate su come impostare Microsoft Windows NT simbolo Trees, nonchÚ suggerimenti di installazione avanzate e suggerimenti.

Informazioni

Contenuto dell'articolo

  • Informazioni generali
  • Impostazione di strutture di simbolo personalizzato
  • Singolo processore di processore e multipli
  • Personalizzato HAL.dll
  • In simboli al debugger
  • Verifica i simboli
  • Verifica di simbolo avanzate
  • Versioni selezionate

Informazioni generali

File simboli di debug (simboli) sono necessari per eseguire sia kernel e la modalitÓ utente il debug in Windows NT. simboli consentono di fare riferimento a variabili globali e funzionare nomi del file eseguibile caricato in modo.

I simboli vengono prodotti dal linker. Sono eliminati dal prodotto e salvati in un file distinto con (DBG). Il tal modo la file dimensione notevolmente ridotta diminuendo i tempo di caricamento o aumentando pertanto le prestazioni del sistema. Riduce inoltre il numero di dischi floppy di installazione. I simboli rappresentano nomi di funzioni/API e variabili globali.

Il file DBG contiene informazioni sui simboli per ogni file. Possano essere individuati sul CD di installazione in \Support\Debug\[i386 | mips] \Symbols. Sono inoltre sono disponibili nel server di generazione di NT. Il percorso Ŕ \\Ntbuilds\Release\Usa\Build###\[x86 | mips |alpha]\Fre.srv\symbols.

La directory di simboli Ŕ suddiviso in in sette sottodirectory, denominata estensione sottodirectory (si noti che molti i file di simboli in queste directory sono modalitÓ utente):

COM, i simboli per tutti i file che terminano in COM inserito qui
Pannello di controllo, i simboli per tutti i file cpl inserito qui.
DLL - i simboli per tutti i file DLL inserito qui
DRV - i simboli per tutti i file che terminano in .DRV inserito qui
EXE - i simboli per tutti i file exe inserito qui
SCR - i simboli per tutti i file che terminano in .SCR inserito qui
SYS - i simboli per tutti i file che terminano in .SYS inserito qui.

Simboli devono corrispondere le versioni dei file:

Simboli da una build diversa forniscono informazioni errate e inviare agli sviluppatori vengono ombreggiature sprecare molto tempo. Doppio controllo con il cliente quali creare il cliente Ŕ in esecuzione e se il cliente ha tutte le patch installate. La schermata di Stop del Kernel Visualizza il numero di build del kernel.

Generazioni di patch:

Generazioni di patch, ad esempio Service Pack richiedono un insieme speciale di simboli, che Ŕ una combinazione di configurazione di base e i simboli corretti.

Impostazione delle strutture di simbolo personalizzato

Tenere presente che i simboli devono corrispondere i file installati nel computer di un cliente. ╚ spesso necessario creare un insieme di simboli personalizzato solo per un determinato cliente.

Nota : strutture simbolo completamento pu˛ richiedere oltre i 30 MB di spazio su disco.
  1. Creare una sottodirectory per memorizzare il set di simboli cliente. Ad esempio:

    C:\MYSYMBOLS
  2. Iniziare sempre con il numero di versione Windows base. Copiare i file seguenti dal CD di installazione per la versione appropriata:

    XCOPY [UnitÓ CD-ROM] \SUPPORT\DEBUG\I386 C:\MYSYMBOLS/s.
  3. Copiare i simboli per i file binari del Service Pack appropriati di struttura personalizzata. I simboli di Service Pack sono disponibile nel server elencati nella sezione sotto intitolati "simbolo ubicazioni".
  4. Copiare le patch di terze parti, ad esempio Compaq SSD simboli tramite la struttura del simbolo personalizzato. Potrebbe essere necessario ottenere questi simboli dal fornitore. Nota : passaggi 3 e 4 debba essere annullato in base all'ordine che sono stati installati dal cliente. Corrisponde a passaggi del cliente.
  5. Se il server dispone di aggiornamenti rapidi installati, Ŕ necessario ottenere il simbolo corrispondente per tale aggiornamento rapido. Se un file di simboli non viene fornito l'hotfix, Ŕ necessario contattare il servizio supporto tecnico clienti Microsoft per informazioni sulla disponibilitÓ di questi simboli. Copiare il simbolo aggiornato la struttura del simbolo personalizzato. Assicurarsi di inserirlo nella sottocartella corretta (ad esempio, Sys, exe, dll, e cosý via.).

Singolo processore di processore e multipli

Windows NT utilizza un kernel speciale per i sistemi SMP. Durante l'installazione viene rinominato il kernel. ╚ importante anche rinominare il file SYMBOL.DBG per il debug.
Ntoskrnl.exe NTOSKRNL.DBG = processore singolo NTKRNLMP.EXE. NTKRNLMP.DBG = Pi¨ processori

  1. Se si dispone di un sistema multiprocessore, effettuare le seguenti operazioni. Nella struttura simbolo personalizzato in \SYMBOLS\EXE esistono due file di kernel. Ridenominazione NTOSKRNL.DBG per NTOSKRNL.UNI.
  2. Copiare NTKRNLMP.DBG NTOSKRNL.DBG.

Personalizzato HAL.dll

Alcune piattaforme hardware richiedono un driver HAL speciale. Come il file del kernel, l'HAL personalizzato Ŕ stato rinominato durante il processo di installazione. Di seguito Ŕ un elenco di HAL comuni:

File HAL per i computer I386:
              Uncompressed
Filename      Size (bytes) Description
-------------------------------------------------------------------------
HAL.DLL       48,416       Standard HAL for Intel systems
HAL486C.DLL   47,376       HAL for 486 c step processor
HALAPIC.DLL   63,616       Uniprocessor version of HALMPS.DLL
HALAST.DLL    46,416       HAL for AST SMP systems
HALCBUS.DLL   79,776       HAL for Cbus systems
HALMCA.DLL    45,488       HAL for MCA-based systems (PS/2 and others)
HALMPS.DLL    65,696       HAL for most Intel multiprocessor systems
HALNCR.DLL    79,392       HAL for NCR SMP machines
HALOLI.DLL    40,048       HAL for Olivetti SMP machines
HALSP.DLL     52,320       HAL for Compaq Systempro
HALWYSE7.DLL  40,848       HAL for Wyse7 systems

HAL files for DEC Alpha Computers:

              Uncompressed
Filename      Size (bytes) Description
--------------------------------------------------------------------------
HAL0JENS.DLL  56,800       Digital DECpc AXP 150 HAL
HALALCOR.DLL  69,120       Digital AlphaStation 600 Family
HALAVANT.DLL  66,752       Digital AlphaStation 200/400 Family HAL
HALEB64P.DLL  70,528       Digital AlphaPC64 HAL
HALGAMMP.DLL  72,896       Digital AlphaServer 2x00 5/xxx Family HAL
HALMIKAS.DLL  67,040       Digital AlphaServer 1000 Family Uniprocessor
HAL
HALNONME.DLL  65,376       Digital AXPpci 33 HAL
HALQS.DLL     65,088       Digital Multia MultiClient Desktop HAL
HALSABMP.DLL  72,736       Digital AlphaServer 2x00 4/xxx Family HAL

HAL files for MIPS Computers:

              Uncompressed
Filename      Size (bytes) Description
--------------------------------------------------------------------------
HALACR.DLL    43,648       ACER HAL
HALDTI.DLL    68,288       DESKStation Evolution
HALDUOMP.DLL  41,728       Microsoft-designed dual MP HAL
HALFXS.DLL    42,016       MTI with a r4000 or r4400
HALFXSPC.DLL  42,176       MTI with a r4600
HALNECMP.DLL  44,736       NEC dual MP
HALNTP.DLL    116,000      NeTpower FASTseries
HALR98MP.DLL  127,232      NEC 4 processor MP
HALSNI4X.DLL  95,520       Siemens Nixdorf UP and MP
HALTYNE.DLL   68,032       DESKstation Tyne

HAL files for PPC Computers:

              Uncompressed
Filename      Size (bytes) Description
--------------------------------------------------------------------------
HALCARO.DLL   169,504      HAL for IBM-6070
HALEAGLE.DLL  206,208      HAL for Motorola PowerStack and Big Bend
HALFIRE.DLL   136,576      Hal for Powerized_ES,
                                   Powerized_MX, and
                                   Powerized_MX MP
HALPOLO.DLL   169,152      HAL for IBM-6030
HALPPC.DLL    169,184      HAL for IBM-6015
HALWOOD.DLL   95,616       HAL for IBM-6020


Come determinare quale HAL da utilizzare:

Durante l'installazione viene creato un file di registro di testo. Questo file pu˛ segnalare il nome dell'HAL originale.
  1. Passare alla sottodirectory %systemroot%\REPAIR.
  2. Eseguire ATTRIB -R -H -S SETUP.LOG per rendere visibile il file.
  3. Per visualizzare il file in blocco note e cercare HAL.
Nota: Questa stessa tecnica pu˛ essere utile per verificare se viene utilizzato anche un kernel speciale.

Passare a installazione simbolo HAL:
  1. Passare la struttura del simbolo personalizzato in \SYMBOLS\DLL.
  2. Rinominare HAL.DBG HAL.X86.
  3. Copiare "Custom HLL.DBG" HAL.DBG.

In simboli del debugger

Un debugger di Windows, ad esempio I386KD.EXE, Cerca i simboli nei seguenti percorsi:
Variabile di ambiente del sistema _NT_ALT_SYMBOL_PATH
Variabile di ambiente _NT_SYMBOL_PATH del sistema

Questi percorsi vengono impostati tramite le variabili di ambiente di sistema. In genere sono configurati da un file batch di debug utilizzando il comando SET. Il _NT_ALT_SYMBOL_PATH Ŕ facoltativo. Ad esempio:
impostare _NT_SYMBOL_PATH = K:\NT35-SP3\SYMBOLS
impostare _NT_ALT_SYMBOL_PATH = c:\WINNT\SYMBOLS

Nota : la directory di simboli Ŕ la directory direttamente sopra le sottodirectory di estensione (ovvero se il file di simboli del kernel, NTOSKRNL.DBG, si trova in C:\DEBUG\511\I386\SYMBOLS\EXE\NTOSKRNL.DBG. Il _NT_SYMBOL_PATH deve essere impostato su C:\DEBUG\511\I386\SYMBOLS

Come utilizzare percorsi:

Molto buona questi percorsi diversi viene utilizzato per mantenere strutture di simbolo statico per ogni versione di Windows NT. Semplicemente scegliere i percorsi di simboli ogni versione e Service Pack, se necessario. Ad esempio, per un sistema di 1057 con installato SP2 Ŕ possibile utilizzare le seguenti operazioni:
impostare _NT_ALT_SYMBOL_PATH = c:\NT351-SP2\SYMBOLS
impostare _NT_SYMBOL_PATH = K:\NT351-1057\SYMBOLS

Il debugger tenta di utilizzare prima i simboli di Service Pack. [I simboli di Service Pack non sono inclusi i simboli di base della generazione in questo caso, solo i simboli di Service Pack.] Se il debugger non viene trovato un determinato simbolo nella struttura della SP cercato Ŕ nella 1057 simbolo di struttura.

Ordine di ricerca:

I vari percorsi di simboli vengono cercati nell'ordine indicato sopra. Il primo file di simbolo con il nome corretto viene rilevato viene utilizzato. Nell'esempio precedente, _NT_ALT_SYMBOL_PATH = c:\NT351-SP2\SYMBOLS Ŕ la prima ricerca.

Override di variabili di ambiente:

I386KD supporta un'opzione della riga di comando "-y" dove Ŕ possibile specificare un percorso di simboli. Tuttavia, utilizzo di questa opzione sostituisce le variabili di ambiente esistente.

Modificare il percorso in immediato:

╚ possibile modificare il percorso di ricerca di simboli in qualsiasi momento nel debugger eseguendo "! Sympath" comando. Ad esempio:
SYMPATH! C:\SYMBOLS.

Verifica i simboli

! CARICAMENTO:

Una volta che Ŕ stato utilizzato il "kd >"prompt per la prima volta, Ŕ necessario digitare"! RELOAD". In questo modo le informazioni sui simboli essere ricaricato e sincronizzati. Se viene visualizzato il messaggio di errore "PsLoadedModuleList is NULL!", probabilmente gli errato simboli caricati. Assicurarsi che il file sia corretto HAL.DBG e NTOSKRNL.DBG installato per il computer che si sta eseguendo il debug.

! PROCESSO:

Simboli possono essere verificati anche digitando "! PROCESS" Se viene visualizzato l'errore, "Impossibile trovare testina elenco processo", probabilmente gli errato simboli caricati.

KB:

Se l'analisi dello stack sono spazi vuoti nell'elenco dei nomi di funzione, significa che siano i simboli. Mancante funzioni potrebbe anche indicare uno stack danneggiato, ma Ŕ piuttosto raro. Doppio verificare i simboli prima dichiarazione di uno stack danneggiato. Esaminare inoltre gli indirizzi restituiti nello stack. Dovrebbero tutti essere maggiore di 8000000.

! SYMPATH:

Simboli non corretti possono essere corretti da un'altra finestra di comando, copiare i simboli corretti e di eseguire un! Ricarica il debugger oppure specificare il percorso corretto con! SYMPATH symbol_path.

Verifica di simbolo avanzate

In alcuni casi i clienti non sanno quali versioni di driver che hanno installato nel computer. Ad esempio Ŕ installato un aggiornamento rapido (hotfix) per NTFS ma non si conosce il numero di bug. Potrebbe essere necessario determinare manualmente i file DBG sono necessari.

Il modo migliore per verificare assolutamente se destinazione e della dbg corrispondenza Ŕ di per visualizzare il valore della somma di controllo. Questo valore Ŕ memorizzato all'interno dell'intestazione file.

Nota: Per ulteriori informazioni su sistema operativo formato di file cercare MSDN "Portable esecuzione File Format." Intestazione del PE contiene numeri di versione, collegare date\time, e cosý via.

Il piano generale consiste nell'individuare innanzitutto il checksum dei file di clienti e quindi cercare un file dbg che dispone di una somma di controllo corrispondente.

Esistono molti modi per estrarre il chksum dalla destinazione e il dbg. Se si dispone dell'accesso ai file, Ŕ possibile utilizzare le seguenti operazioni. Si suppone che si desidera il file NTOSKRNL.

LINK32:

Questa utilitÓ Ŕ disponibile nella sottodirectory NT genera \MSTOOLS:
-DUMP - LINK32.EXE INTESTAZIONI NTOSKRNL.EXE LINK32.EXE - DUMP - INTESTAZIONI NTOSKRNL.DBG

DUMPBIN:

Questa utilitÓ Ŕ reperibile nella directory bin Visual C:
DUMPBIN.EXE /HEADERS NTOSKRNL.EXE NTOSKRNL.DBG DUMPBIN.EXE /HEADERS

Se si utilizza un debugger in un sistema o un arresto anomalo, Ŕ possibile trovare il checksum del file di destinazione, visualizzare l'intestazione del file nella memoria.
  1. Indirizzo di base driver verrÓ fornito dal! DRIVERS.
  2. gg baseaddr + d8 L1

Versioni selezionate

Se si installano le versioni di debug selezionata dei file di Windows NT Ŕ necessario rendere disposizioni speciali per tali file di simboli dbg. Alcuni hotfix controllato generazioni dispongano delle informazioni sui simboli incorporate in file di destinazione. In questi casi, Ŕ sufficiente creare una copia del file di e nome *.DBG. Inserire il file nella directory sub simbolo normale, ovvero \SYMBOLS\EXE.

Tutte le generazioni controllo rilasciato pubblicamente disporre di file dbg separato esattamente come le versioni di libere. Tuttavia, il dbg per le versioni selezionate e libere sono diversi. Ad esempio, di Microsoft NT DDK contiene una build verificata completa di NT. Contiene inoltre un set per passare con di simboli completato.

Nota : controllo le versioni del kernel di NT sono identiche per i sistemi sia multiprocessore e uniprocessore.

Percorsi di simboli

Prodotto finale:
CD-ROM \SUPPORT\DEBUG\I386\SYMBOLS
\\NTX86X\FREEBINS.XXX

ProprietÓ

Identificativo articolo: 138258 - Ultima modifica: mercoledý 1 novembre 2006 - Revisione: 2.1
Le informazioni in questo articolo si applicano a:
  • Microsoft Windows NT Advanced Server 3.1
  • Microsoft Windows NT Server 3.5
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 3.1
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Advanced Server 3.1
Chiavi:á
kbmt kbusage KB138258 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 138258
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com