Información de instalación de símbolos de depuración de Windows

Seleccione idioma Seleccione idioma
Id. de artículo: 138258 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Resumen

En este artículo proporciona información detallada acerca de cómo configurar árboles de símbolos de Microsoft Windows NT, así como configuración avanzada de sugerencias y trucos.

Más información

Contenido del artículo

  • Información general
  • Configurar árboles de símbolos personalizada
  • Procesador único de procesador frente a varios
  • Personalizada HAL.dll
  • Utilizar símbolos en el depurador
  • Comprobar los símbolos
  • Comprobación de símbolos avanzada
  • Versiones activadas

Información general

Los archivos de símbolos de depuración (símbolos) son necesarios para núcleo y modo de usuario depuración en símbolos de Windows NT. proporcionan una forma referencia a variables globales y nombres en el ejecutable cargado de funciones.

Los símbolos los genera el vinculador. Son eliminan fuera del producto comercial y guardan en un archivo (.DBG) aparte. Esto reduce considerablemente tamaño del archivo que reduce el tiempo de carga de archivo y, por lo tanto, aumenta el rendimiento del sistema. También reduce el número de discos de instalación. Los símbolos representan nombres de funciones y de API, y las variables globales.

El archivo .DBG contiene información simbólica para cada archivo. Se pueden encontrar en el CD-ROM de instalación \Support\Debug\[i386 | mips] \Symbols. También se pueden encontrar en el servidor de generación de NT. La ubicación es \\Ntbuilds\Release\Usa\Build###\[x86 | mips |alpha]\Fre.srv\symbols.

El directorio de símbolos se divide en siete subdirectorios, llamados subdirectorios de extensión (tenga en cuenta que muchos de los archivos de símbolos en estos directorios son el modo de usuario):

COM - símbolos para todos los archivos que terminan en .com ir aquí
CPL - símbolos de todos los archivos .cpl ir aquí.
DLL - símbolos de todos los archivos .dll ir aquí
DRV - símbolos para todos los archivos que terminan en .DRV ir aquí
EXE - símbolos para todos los archivos que terminan en .exe ir aquí
SCR - símbolos para todos los archivos que termina en .SCR ir aquí
SYS - símbolos de todos los archivos .sys ir aquí.

Símbolos deben coincidir con las versiones de archivo:

Símbolos de una generación diferente proporcionan información errónea y enviar desarrolladores persecución sombras y desperdiciar tiempo considerable. Verificación doble con el cliente lo genere al cliente se está ejecutando y si el cliente tiene las revisiones instalados. La pantalla STOP de núcleo muestra el número de compilación del núcleo.

Patched versiones:

Patched generaciones, como Service Packs requieren un conjunto especial de símbolos, que es una combinación de la generación de base y los símbolos revisados.

Configuración de árboles de símbolos personalizada

Recuerde que símbolos deben coincidir con los archivos instalados en el equipo del cliente. A menudo tiene que crear un conjunto personalizado de símbolos sólo para un cliente determinado.

Nota : árboles de símbolo completo puede tardar más de 30 MB de espacio.
  1. Cree un subdirectorio para almacenar el conjunto de símbolos de cliente. Por ejemplo:

    C:\MYSYMBOLS
  2. Inicie siempre con el número de versión de Windows base. Copie los archivos siguientes desde el CD-ROM de instalación para la versión apropiada:

    XCOPY [Unidad de CD] \SUPPORT\DEBUG\I386 C:\MYSYMBOLS/s.
  3. Copiar símbolos para los archivos binarios del Service Pack adecuados a través de su árbol personalizado. Se pueden encontrar símbolos de Service Pack en los servidores enumerados en la sección siguiente titulada "símbolo ubicación."
  4. Copie las revisiones de terceros, como símbolos SSD de Compaq sobre en el árbol de símbolo personalizado. Quizás tenga que obtener estos símbolos desde el proveedor. Nota : los pasos 3 y 4 que tenga que puede invertir según el orden que fueron instaladas por el cliente. Coincide con los pasos del cliente.
  5. Si el servidor tiene las revisiones instaladas, deberá obtener el símbolo correspondiente para esa revisión. Si un archivo de símbolos no se proporciona con la revisión, deberá póngase en contacto con los servicios de soporte técnico de Microsoft para consultarle la disponibilidad de estos símbolos. Copie el símbolo actualizado a través de su árbol de símbolo personalizado. Asegúrese de que coloca en la subcarpeta correcta (por ejemplo, Sys, dll, exe, etc..).

Procesador único de procesador frente a varios

Windows NT utiliza un núcleo especial para los sistemas SMP. Este núcleo se cambia el nombre durante la instalación. Es importante que también cambie el nombre del archivo SYMBOL.DBG para la depuración.
Ntoskrnl.exe NTOSKRNL.DBG = procesador único NTKRNLMP.EXE. NTKRNLMP.DBG = Varios procesadores

  1. Si tiene un sistema multiprocesador, haga lo siguiente. En el árbol de símbolo personalizado en \SYMBOLS\EXE son hay dos archivos de núcleo. Cambiar el nombre NTOSKRNL.DBG a NTOSKRNL.UNI.
  2. Copie NTKRNLMP.DBG NTOSKRNL.DBG.

Personalizada HAL.dll

Algunas plataformas de hardware requieren un controlador de capa de abstracción de hardware especial. Como el archivo del núcleo, HAL personalizada se cambia el nombre durante el proceso de instalación. Aquí es una lista de HAL comunes:

Archivos HAL para equipos de 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


Cómo determinar qué HAL para utilizar:

Durante la instalación se crea un archivo de registro de texto. Este archivo puede informarle acerca del nombre original de la HAL.
  1. Vaya al subdirectorio %systemroot%\REPAIR.
  2. Ejecute ATTRIB -R -H -S Setup.log para hacer visible el archivo.
  3. Abrir el archivo en el Bloc de notas y busque HAL.
Nota: Esta misma técnica puede resultar útil para comprobar si también se utiliza un núcleo especial.

Vaya al símbolo HAL de instalación:
  1. Vaya a su árbol símbolo personalizado en \SYMBOLS\DLL.
  2. Cambie el nombre HAL.DBG HAL.X86.
  3. Copie "Custom HLL.DBG" HAL.DBG.

Utilizar símbolos en el depurador

Un depurador de Windows, como I386KD.EXE, busca símbolos en las ubicaciones siguientes:
Variable de entorno del sistema _NT_ALT_SYMBOL_PATH
Variable de entorno _NT_SYMBOL_PATH del sistema

Estas ubicaciones se establecen a través de las variables de entorno del sistema. Se configuran normalmente mediante un archivo de proceso por lotes de depuración mediante el comando SET. El _NT_ALT_SYMBOL_PATH es opcional. Por ejemplo:
establecer _NT_SYMBOL_PATH = K:\NT35-SP3\SYMBOLS
establecer _NT_ALT_SYMBOL_PATH = c:\WINNT\SYMBOLS

Nota : el directorio de símbolos es el directorio directamente encima de los subdirectorios de extensión (es decir, si el archivo de símbolo del núcleo, NTOSKRNL.DBG, se encuentra en C:\DEBUG\511\I386\SYMBOLS\EXE\NTOSKRNL.DBG. Debe establecer la _NT_SYMBOL_PATH C:\DEBUG\511\I386\SYMBOLS

Cómo utilizar rutas de acceso:

Un buen uso de estas rutas distintas es para mantener símbolo estático de árboles para cada versión de Windows NT. Simplemente elige las rutas de sus símbolo cada versión y Service Pack según sea necesario. Por ejemplo, para un sistema 1057 con SP2 instalado podría utilizar lo siguiente:
establecer _NT_ALT_SYMBOL_PATH = c:\NT351-SP2\SYMBOLS
establecer _NT_SYMBOL_PATH = K:\NT351-1057\SYMBOLS

El depurador intenta utilizar primero los símbolos de Service Pack. [Los símbolos de Service Pack no incluyen los símbolos de base de generación en este caso, sólo los símbolos de Service Pack.] Si el depurador no encuentra un símbolo determinado en el árbol de SP busca, en el árbol de símbolo 1057.

Orden de búsqueda:

Se buscan las distintas rutas de símbolo en el orden indicado anteriormente. Se utiliza el primer archivo de símbolos con el nombre correcto que se encuentra. En el ejemplo anterior, _NT_ALT_SYMBOL_PATH = c:\NT351-SP2\SYMBOLS es la primera búsqueda.

Reemplazar variables de entorno:

I386KD admite un modificador de línea de comandos "-y" donde puede especificar una ruta de símbolo. Sin embargo, utilizar este modificador reemplaza las variables de entorno existente.

Cambiar la ruta al instante:

Puede cambiar la ruta de búsqueda de símbolos en cualquier momento en el depurador emitiendo "! Sympath" comando. Por ejemplo:
SYMPATH! C:\SYMBOLS.

Comprobar los símbolos

! RECARGA:

Una vez ha llegado a la "kd >"símbolo del sistema por primera vez, debe escribir"! RELOAD". Esto hace que la información simbólica se vuelve a cargar y sincronizado. Si aparece el error "PsLoadedModuleList es NULL", probablemente tenga los incorrectos símbolos cargados. Asegúrese de que tiene el archivo HAL.DBG y NTOSKRNL.DBG correcto instalado para el equipo que está depurando.

! PROCESO:

También se pueden comprobar símbolos escribiendo "! PROCESS" Si recibe el error, "No se puede encontrar head de la lista de proceso", probablemente tenga los incorrectos símbolos cargados.

KB:

Si el seguimiento de pila tiene huecos en la lista Nombre de función, esto indica que falta símbolos. Falta funciones también podría indicar una pila dañada pero esto es algo poco frecuente. Compruebe los símbolos antes de declarar una pila dañada. Además, examine las direcciones de retorno en la pila. Todos deben ser mayores que 8000000.

! SYMPATH:

Símbolos incorrectas pueden corregirse yendo a otra ventana de comandos, copiar los símbolos correctos y realizando una! volver a cargar en el depurador o especificando la ruta correcta con! SYMPATH symbol_path.

Comprobación de símbolos avanzada

A veces los clientes no saben qué versiones de controlador que se han instalado en sus equipos. Quizás instala una revisión para NTFS pero no sabe qué número de error. Quizás tenga que determinar manualmente qué archivos .DBG son necesarios.

La mejor manera de absolutamente comprobar si destino y de adjuntar coincidencia es ver su valor de suma de comprobación. Este valor se almacena dentro del encabezado de archivo.

Nota: Para obtener más información acerca del sistema operativo formato de archivo buscar MSDN "Formato de archivo de ejecución portátil". El encabezado de PE contiene números de versión, vincular date\time, etc..

El plan general aquí es averiguar primero la suma de comprobación de los archivos de los clientes y a continuación, busque un archivo de adjuntar que tiene una suma de comprobación correspondiente.

Hay muchas formas para extraer el chksum el destino y el adjuntar. Si tiene acceso a los archivos, puede utilizar la siguiente. Este ejemplo se supone que le interesa el archivo NTOSKRNL.

LINK32:

Esta utilidad puede encontrarse en el subdirectorio NT generar \MSTOOLS:
LINK32.EXE - DUMP - ENCABEZADOS NTOSKRNL.EXE LINK32.EXE - DUMP - ENCABEZADOS NTOSKRNL.DBG

DUMPBIN:

Esta utilidad puede encontrarse en el directorio bin de Visual C++:
DUMPBIN.EXE /HEADERS NTOSKRNL.EXE DUMPBIN.EXE /HEADERS NTOSKRNL.DBG

Si está utilizando a un depurador en un sistema o un volcado de sucesos, puede encontrar la suma de comprobación del archivo de destino examinando el encabezado del archivo en memoria.
  1. ! DRIVERS - se dar dirección base de controlador.
  2. dd baseaddr + d8 L1

Versiones activadas

Si instala versiones de depuración activa de archivos tiene que disposiciones especiales para adjuntar archivos de símbolos. Algunos hotfix comprueba generaciones tienen la información simbólica integrada en el archivo de destino. En estos casos, sólo realice una copia del archivo y asígnele el nombre *.DBG. Coloque el archivo en el directorio de sub símbolo normal, es decir, \SYMBOLS\EXE.

Todas las generaciones verificación públicamente lanzadas tengan independiente adjuntar archivos igual que las versiones gratuitas. Sin embargo, adjuntar para las versiones comprobadas y libres son diferentes. Por ejemplo, el DDK de NT de Microsoft contiene una compilación comprobada completa de NT. También contiene un conjunto para ir con él de símbolos completa.

Nota : comprobación de versiones del núcleo de NT son las mismas para los sistemas multiprocesador y monoprocesador.

Ubicaciones de símbolos

Producto comercial:
CD-ROM \SUPPORT\DEBUG\I386\SYMBOLS
\\NTX86X\FREEBINS.XXX

Propiedades

Id. de artículo: 138258 - Última revisión: miércoles, 01 de noviembre de 2006 - Versión: 2.1
La información de este artículo se refiere 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
Palabras clave: 
kbmt kbusage KB138258 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 138258

Enviar comentarios

 

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