Như tôi nhớ, các nhà sưu tập sao chép được cho là thân thiện với nhau, vì việc truy tìm bằng cách sao chép có xu hướng cải thiện địa phương của các tham chiếu con trỏ. Điều này có tác động tích cực đến chương trình (trình biến đổi) sẽ gây ra ít lỗi trang hơn khi theo các liên kết và cũng sẽ cải thiện chu kỳ thu thập tiếp theo vì việc theo dõi cũng sẽ gây ra ít lỗi trang hơn. Chương trình theo dõi (mà con trỏ nên được xử lý trước) có thể có tác động đến hiệu quả để cải thiện địa phương dữ liệu. Điều này có thể được cải thiện bằng cách thống kê các số liệu về số lượng truy cập vào các con trỏ khác nhau trong các loại ô khác nhau.
Bây giờ, nếu bạn xem xét một trình thu thập dấu vết nói chung, bạn thường phải duy trì một cấu trúc theo dõi các con trỏ chưa được theo dõi. Có thể tổ chức cấu trúc này để tất cả các con trỏ chờ trỏ trong cùng một trang sẽ được giữ cùng nhau (mặc dù điều đó có thể chiếm nhiều không gian hơn, trong một số trường hợp, tùy thuộc vào các kỹ thuật có sẵn để giữ danh sách các con trỏ như vậy). Sau đó, một chính sách có thể là luôn luôn theo dõi tập hợp con trỏ chờ lớn nhất trỏ đến cùng một trang, khi không còn con trỏ chờ nào để lại các trang trong bộ nhớ.
Về câu hỏi trong đoạn thứ ba, đã được thêm vào sau khi tôi trả lời, bộ sưu tập sao chép lại là một câu trả lời. HĐH có thể giảm số lượng trang vật lý được phân bổ tại thời điểm thu thập, vì các trang được giải phóng hoàn toàn. Với một bộ sưu tập đánh dấu và quét, sự kiện toàn trang miễn phí nuôi ong có lẽ hiếm hơn nhiều, do đó không đáng để tính đến một máy móc cụ thể.
Loại ý tưởng này là tự nhiên, và có lẽ được mô tả trong một số bài báo. Nhưng tôi không nhớ nó ra tay. Tôi nghĩ rằng những bài báo ban đầu về Lisp GC có chứa một số ý tưởng này (chẳng hạn như: nên theo dõi xe hơi hay cdr trước?).
Tin tốt trong vai trò của bộ sưu tập bản sao này là phân trang rất thân thiện với bộ sưu tập sao chép vì nó làm tăng không gian lưu trữ có sẵn. Hãy nhớ lại rằng bộ thu thập bản sao yêu cầu về nguyên tắc gấp đôi dung lượng được sử dụng để lưu trữ dữ liệu thực tế. Bây giờ, hiệu ứng phân trang cũng phụ thuộc vào không gian địa chỉ của máy và bộ nhớ vật lý có sẵn. Trong máy tính cũ, bộ nhớ vật lý ít hơn nhiều so với không gian địa chỉ khả dụng, do đó phân trang thực sự là một phần thưởng không gian, cho phép các chính sách như sao chép GC. Ngay cả khi không gian vật lý lớn bằng không gian địa chỉ, người ta có thể muốn chia sẻ nó, để quá trình sử dụng một GC sẽ có ít không gian địa chỉ hơn mà không cần phân trang (xem phân trang). Những nhận xét này có phần bị mê hoặc bởi việc sử dụng các nhà sưu tập thế hệ. Họ thường sử dụng bộ sưu tập bản sao cho thế hệ trẻ một cách chính xác vì những phẩm chất này, và vì thế hệ trẻ chủ yếu sống ngắn.
Sau đó, bạn có tất cả các tương tác của GC thế hệ với hệ thống bộ đệm, điều này đã được thảo luận trong một câu hỏi trước: Bộ thu gom rác thế hệ có thân thiện với bộ đệm không?
Để biết thêm thông tin về các vấn đề này, tôi sẽ tìm kiếm trên web, ví dụ: từ khóa thu gom rác và địa phương .