0
我正在嘗試檢查在我的服務器上「掛起」的進程。我使用gdb進行attatch的過程中,像這樣:GDB映射到PID - 無法訪問內存地址
gdb -p PID
雖然GDB裏我跑bt
,並得到如下:
(gdb) bt
#0 0x00007f57f4be73ba in __getpwuid_r (uid=4113672712, resbuf=0x7f57f531ce40, buffer=0x1 <error: Cannot access memory at address 0x1>, buflen=0,
result=0x7f57f531a048) at ../nss/getXXbyYY_r.c:198
#1 0x00007f5700000004 in ??()
#2 0x0000000000000060 in ??()
#3 0x0000000000000001 in ??()
#4 0x00007f5700000031 in ??()
#5 0x0000000000000000 in ??()
是對Cannot Access Memory Address
會出現這種進程掛起一個潛在的原因是什麼?或者是否意味着軟件已經退出,但仍然有一個正在運行的進程?
這是一個CasperJS腳本btw。
聽起來就像您附加到應用程序的生產版本。這些可能會啓用優化並刪除調試符號。所以你不能完全依靠gdb告訴你的。例如,啓用優化功能後,某些變量值在任何給定時間都不可用於gdb。所以我的建議是將上面的信息保存爲數據點。但是不要僅僅依靠那些人得出確切的結論。不幸的是,你需要進一步調試。 – kaylum