Những gì tôi đã biết:
Một tệp thực thi ELF có một số phần, rõ ràng là các phần .text và .data được tải vào bộ nhớ vì đây là các phần chính của chương trình. Nhưng để một chương trình hoạt động, nó cần thêm thông tin, đặc biệt là khi được liên kết động.
Điều tôi quan tâm là các phần như .plt, .got, .dynamic, .dynsym, .dynstr vân vân. Các bộ phận của ELF chịu trách nhiệm liên kết các chức năng với các địa chỉ.
Từ những gì tôi có thể tìm ra cho đến nay, đó là những thứ như .symtab và .strtab không được tải (hoặc không ở lại) trong bộ nhớ. Nhưng .dynsym và .dynstr được sử dụng bởi trình liên kết? Họ có ở trong ký ức không? Tôi có thể truy cập chúng từ mã chương trình không?
Và có phần nào của một tệp thực thi nằm trong bộ nhớ kernel không?
Quan tâm của tôi về điều này chủ yếu là pháp y, nhưng bất kỳ thông tin về chủ đề này sẽ giúp. Các tài nguyên tôi đã đọc về các bảng này và liên kết động ở mức cao hơn, chúng chỉ giải thích các hoạt động, không có gì thực tế về nội dung trong bộ nhớ.
Hãy cho tôi biết nếu có bất cứ điều gì không rõ ràng về câu hỏi của tôi.