Tôi đang thực hiện một chương trình C cơ bản bằng gdb. Tôi có điểm dừng ở đầu số main()
. Sau khi chạy mã, gdb ngắt tại main() như mong đợi. Bây giờ nếu tôi kiểm tra sổ đăng ký con trỏ ngăn xếp (RSP), tôi nhìn thấyLấy con trỏ ngăn xếp hiện tại từ/proc/pid/stat
0x7fffffffe170: 0x00000000.
Khi tôi lấy thông tin tương tự sử dụng cat /proc/17232/stat | cut -d" " -f29/proc
(nơi 17.232 được pid cho quá trình này), tôi nhìn thấy:
140737488347112 (which in hex is: 0x7fffffffdfe8).
Làm cách nào chúng ta thấy giá trị khác của con trỏ ngăn xếp hiện tại từ gdb. Và cũng có thể, tại sao gdb hiển thị nội dung của rsp là NULL (0x00000000)?
Cảm ơn.
Cảm ơn bạn đã làm rõ. Sẽ cố gắng tìm ra lý do tại sao bộ nhớ được hiển thị là null trong thử nghiệm của tôi. –