Pregunta

Estoy usando el sistema operativo AIX. Aquí estoy enfrentando un problema de que cuando el proceso se bloquea, no hay pila escrita en el registro. Solo proporciona una información de Signal11/10/4 ha ocurrido. Pero no se muestra ninguna pila. Dado que el código es un código optimizado, incluso no puedo debudir usando dbx.gdb no está instalado. ¿Podría sugerir cómo ver el rastro de la pila cada vez que el programa se bloquee? ¿Podría ser con cualquier otra herramienta o en caso de que se siga cualquier método Cheet para ver el rastro de pila real?

Avance gracias por la ayuda.

¿Fue útil?

Solución

Esto funciona en AIX 5.1:

Use el comando ULIMIT para establecer el límite para los vertederos de núcleo, antes de iniciar el binario (es probable que el límite esté configurado en 0, lo que significa que no está obteniendo ningún volcado de núcleo). Deberá hacer esto en el mismo shell que el proceso que ejecuta. Luego puede usar el depurador para ver la pila en el núcleo. Sin embargo, necesitará tener símbolos de depuración en el binario para tener mucho sentido. Consulte 'Man Ulimit' para ver cómo funciona Ulimit. ¡Buena suerte!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top