Coredump.gz là bộ nhớ (đã nén) có thể truy cập được bởi chương trình bị hỏng. Nó là một tập tin nhị phân. Lõi là một kho báu, với tất cả các loại dữ liệu riêng tư được khai thác.
Lõi có thể được xem bằng cách chạy 'gdb':
gdb --core=mycoredump
Tất nhiên, bạn vẫn sẽ cần các gói gỡ lỗi liên quan đến lõi này.
Sau đó, bạn có thể tạo một stacktrace bằng cách:
(gdb) bt
để tạo một ngăn xếp của luồng hiện tại - không có độ phân giải tham số - hoặc
(gdb) thread apply all bt full
để tạo một stacktrace của tất cả các luồng trong coredump, với độ phân giải tham số.
stacktrace và stacktraces đầy đủ hiển thị luồng điều khiển trong một chương trình. Đối với Python, phần trên cùng của stacktrace hiển thị cuộc gọi cũ nhất, gần đây nhất ở phía dưới; đối với hầu hết mọi thứ khác, trên cùng là cuộc gọi gần đây nhất và dưới cùng là cuộc gọi cũ nhất.
Một stacktrace đầy đủ sẽ không chỉ hiển thị luồng, mà cả các giá trị của tham số. Đây là nơi chúng ta thường tìm thấy dữ liệu riêng tư - ví dụ: giả sử bạn thấy một hàm có tên là "validatePassword" với một tham số gọi là "Mật khẩu" và giá trị của "MySecretPassword" ...
Stacktraces thường chỉ hữu ích nếu các gói gỡ lỗi được cài đặt (để các khung stack có thể được giải quyết thành một cái gì đó chúng ta có thể dễ dàng đọc được). Phân tích một stacktrace sẽ yêu cầu một nguồn có các nguồn được sử dụng để xây dựng thể hiện chương trình cụ thể này.