Cấu trúc dữ liệu cho mỗi tập tin bộ nhớ Cache Mỗi xử lý mở vào một tập tin có một đối tượng tập tin tương ứng. (Đối tượng tập tin được giải thích chi tiết trong chương 8, "I/o Hệ thống.") Nếu tập tin được lưu trữ, các đối tượng tập tin trỏ đến một cấu trúc bản đồ bộ nhớ cache riêng có vị trí của lần đọc cuối hai để quản lý bộ nhớ cache có thể thực hiện thông minh đọc-trước (sau này, được mô tả trong phần "thông minh đọc-Ahead"). Ngoài ra, tất cả bộ nhớ cache của riêng bản đồ cho các phiên bản mở của một tập tin được liên kết với nhau. Mỗi tập tin lưu trữ (như trái ngược với đối tượng tập tin) có một cấu trúc bản đồ bộ nhớ cache được chia sẻ mô tả nhà nước của các tập tin lưu trữ, bao gồm cả kích thước của nó và dữ liệu hợp lệ chiều dài của nó. (Chức năng của trường chiều dài của dữ liệu hợp lệ được diễn tả trong phần "Ghi lại bộ đệm ẩn và viết lười biếng.") Bản đồ bộ nhớ cache được chia sẻ cũng chỉ để đối tượng phần (duy trì bởi người quản lý bộ nhớ và đó mô tả lập bản đồ các tập tin vào bộ nhớ ảo), danh sách riêng cache bản đồ liên quan đến tập tin đó, và bất kỳ VACBs mô tả được ánh xạ hiện đang nhìn toàn cảnh ra các tập tin trong bộ nhớ cache của hệ thống. (Xem chương 10 để biết thêm về phần đối tượng con trỏ). Các mối quan hệ trong số này cho một tập tin bộ nhớ cache dữ liệu cấu trúc được minh hoạ trong hình 11-7. Khi được hỏi để đọc từ một tập tin cụ thể, người quản lý bộ nhớ cache phải xác định câu trả lời cho hai câu hỏi: 1. là tập tin trong bộ nhớ cache? 2. nếu như vậy, mà VACB, nếu có, đề cập đến vị trí được yêu cầu? Nói cách khác, người quản lý bộ nhớ cache phải tìm ra cho dù một cái nhìn của các tập tin mong muốn địa chỉ sau đây được ánh xạ vào bộ nhớ cache của hệ thống. Nếu không có VACB có chứa các tập tin bạn muốn bù đắp, dữ liệu được yêu cầu không phải là hiện đang được ánh xạ vào bộ nhớ cache của hệ thống. Để theo dõi các mà lần xem d cho một tập tin nhất định được ánh xạ vào bộ nhớ cache của hệ thống, quản lý bộ nhớ cache vẫn duy trì một loạt các liên kết đến VACBs, mà được gọi là các VACB chỉ số mảng. Mục đầu tiên trong VACB chỉ số mảng đề cập đến 256 KB đầu tiên của tập tin, mục thứ hai đến thứ hai 256 KB, và như vậy. Biểu đồ trong hình 11-8 cho thấy bốn đội khác nhau từ ba tập tin khác nhau là bệnh hoạn-rently được ánh xạ vào bộ nhớ cache của hệ thống. Khi một quá trình truy cập một tập tin cụ thể trong một vị trí nhất định, người quản lý bộ nhớ cache trông trong mục ap-propriate trong các tập tin VACB chỉ số mảng để xem liệu các dữ liệu được yêu cầu đã được ánh xạ vào bộ nhớ cache. Nếu mục nhập mảng là nonzero (và do đó có một con trỏ đến một VACB), diện tích của các tập tin được tham chiếu là trong bộ nhớ cache. VACB, lần lượt, trỏ tới vị trí trong bộ đệm ẩn hệ thống nơi quan điểm của các tập tin được ánh xạ. Nếu mục là zero, người quản lý bộ nhớ cache phải tìm một khe cắm miễn phí trong bộ nhớ cache của hệ thống (và do đó một VACB miễn phí) để ánh xạ quan yêu cầu. Như là một tối ưu hóa kích thước, bản đồ bộ nhớ cache được chia sẻ có một mảng chỉ số VACB là bốn mục trong kích thước. Bởi vì mỗi VACB mô tả 256 KB, các mục trong mảng nhỏ, cố định kích thước chỉ số này có thể trỏ đến mục mảng VACB với nhau mô tả một tập tin tối đa 1 MB. Nếu một tập tin lớn hơn 1 MB, một tỷ lệ sepa VACB chỉ số mảng được cấp phát từ Hồ bơi nonpaged, dựa trên kích thước của các tập tin chia cho 256 KB và làm tròn lên trong trường hợp của một phần còn lại. Bản đồ bộ nhớ cache được chia sẻ sau đó điểm này cấu trúc riêng biệt
đang được dịch, vui lòng đợi..