Ai đó có thể vui lòng chỉ cho tôi một số tài liệu trên bản đồ bộ nhớ ảo được sử dụng cho Linux và Windows. Bởi vì tôi có nghĩa là những gì địa chỉ ảo, mã, dữ liệu tĩnh có thể ghi, ngăn xếp và đống (cùng với các bit hạt nhân khác) thường sẽ được đặt trong, trong một quá trình điển hình?Bản đồ bộ nhớ xử lý (Windows Linux)
Trả lời
Có lẽ cách tốt nhất để lấy bản đồ bộ nhớ quá trình trên Linux là xem tệp/proc // maps. Người ta có thể thấy rõ rằng đối với mỗi đối tượng thực thi hoặc chia sẻ có các phần riêng biệt cho dữ liệu tĩnh thực thi, dữ liệu tĩnh và dữ liệu tĩnh có thể ghi. Mỗi một phần trong số các phần này tồn tại trong trang bộ nhớ riêng của nó, cho phép Linux chia sẻ các phần giữa các tệp thi hành và thậm chí thực hiện các tính năng như sao chép-ghi-ghi.
Ngoài ra, còn có một phần dành riêng cho ngăn xếp và một phần dành riêng cho vùng lưu trữ. Cũng có thể có một số phần ẩn danh.
Kể từ khi ASLR ra đời, phần lớn là trên các địa chỉ ảo ngẫu nhiên.
Mục nhập Wikipedia trên Address Space Layout Randomisation (ALSR) mô tả cách phân bổ không gian địa chỉ ngẫu nhiên bảo vệ chống lại các cuộc tấn công khác nhau và mức độ quan trọng khác nhau giữa dữ liệu và mã.
Nó mô tả cả mức độ ngẫu nhiên mặc định yếu của Linux và bản vá bạn có thể sử dụng để tăng cường.
Nó cũng mô tả phiên bản Windows nào cung cấp và phiên bản Windows chỉ áp dụng cho một số mã thực thi &.
Chi tiết khá thấp. Tôi quan tâm đến các sơ đồ có địa chỉ nếu có thể. – doron
Nếu bạn đang tìm kiếm một bản đồ bộ nhớ như những ngày cũ, ví dụ, một Commodore 64 (chẳng hạn như http://sta.c64.org/cbm64mem.html), tôi nghĩ bạn sẽ ra ngoài của may mắn. Tôi không nghĩ nó hoạt động như thế nữa. – Oddthinking
- 1. windows xử lý bố trí bộ nhớ
- 2. Linux Bộ nhớ ánh xạ tập tin dự trữ rất nhiều bộ nhớ vật lý
- 3. Xử lý múi giờ trong bộ nhớ?
- 4. Xử lý bản đồ tệp trong C++
- 5. Chỉ sử dụng bộ nhớ cao khi đa xử lý
- 6. Đăng ký bản đồ bộ nhớ trong Python
- 7. Cách thay đổi bản đồ bộ nhớ U-Boot
- 8. kích thước phân bổ bản đồ bộ nhớ lớn nhất?
- 9. iOS quản lý bộ nhớ cơ bản
- 10. Đơn vị MMU (Bộ quản lý bộ nhớ) trong bộ xử lý bảo vệ các phân đoạn bộ nhớ
- 11. walk so với bản đồ để xử lý một seq
- 12. Xử lý bộ nhớ với cấu trúc epoll_event
- 13. như thế nào một chương trình chạy trong bộ nhớ và cách bộ nhớ được xử lý bởi hệ thống
- 14. Xử lý sự kiện và rò rỉ bộ nhớ
- 15. Xử lý phân mảnh trong vùng bộ nhớ?
- 16. Trình tự xử lý bộ nhớ và GC trong C#
- 17. Làm cách nào để xử lý tệp bộ nhớ cache?
- 18. Đếm bộ vi xử lý sử dụng C++ trong Windows
- 19. Android - cách xử lý lưu tệp trên bộ nhớ thiết bị thấp (Bộ nhớ trong/Bộ nhớ ngoài)
- 20. Xử lý song song trong linux
- 21. Ngăn ngừa các vấn đề về bộ nhớ khi xử lý một lượng lớn văn bản
- 22. Bản đồ bộ nhớ hiển thị nhiều RAM hơn so với vật lý có sẵn
- 23. Trình xử lý ghi nhớ
- 24. Bộ nhớ đệm DNS trong linux
- 25. Ghi âm từ ALSA - hiểu bản đồ bộ nhớ
- 26. Xử lý ngắt trong Windows
- 27. Bộ nhớ tùy chỉnh Allocator cho bản đồ STL
- 28. Bản đồ bộ nhớ đối tượng lớp C++
- 29. Bản đồ Perl/rò rỉ bộ nhớ grep
- 30. Rò rỉ bộ nhớ rác do chức năng bản đồ
Đây có phải là các phần khối thực tế được sắp xếp hay không hoặc cách các chức năng định vị lại cụ thể được tổ chức trong chính khối mã đó? – doron
Đó là ánh xạ bộ nhớ, tương đương với mã, dữ liệu và phân đoạn ngăn xếp. – ninjalj