Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Hệ điều hành] Kích thước bảng trang nhiều cấp

    Tính kích thước bảng trang cho hệ thống phân trang nhiều cấp.

    Cho:

    • Không gian địa chỉ logic V bit.
    • Kích thước trang = 2^P byte.
    • Mỗi mục bảng trang (page table entry) chiếm E byte.

    Số trang = 2^(V−P). Nếu dùng bảng trang một cấp, kích thước = 2^(V−P) · E byte.

    Nếu chia thành L cấp, mỗi cấp lập chỉ mục bằng số bit bằng nhau là idx = (V − P) / L (đề bảo đảm chia hết). Khi đó:

    • Mỗi bảng trang ở MỌI cấp chứa 2^idx mục, kích thước một bảng = 2^idx · E byte.

    In ra hai số cách nhau dấu cách: kích thước bảng trang một cấp (byte), và kích thước MỘT bảng trang khi chia L cấp (byte).

    Ví dụ: V=32, P=12, E=4, L=2. Số trang = 2^20. Một cấp = 2^20·4 = 4194304 byte. idx=(20)/2=10, một bảng L-cấp = 2^10·4 = 4096 byte.

    • Định dạng đầu vào:

      Một dòng gồm bốn số nguyên: V (bit địa chỉ), P (bit offset), E (byte/mục), L (số cấp).

    • Ràng buộc đầu vào:

      1 ≤ P < V ≤ 48; 1 ≤ E ≤ 64; 1 ≤ L ≤ V − P; (V − P) chia hết cho L.

    • Định dạng đầu ra:

      Hai số: kích thước bảng trang một cấp (byte) và kích thước một bảng trang khi chia L cấp (byte).

    Ví dụ:

    Đầu vào:

    32 12 4 2
    

    Đầu ra:

    4194304 4096

    Giải thích:

    Số trang = 2^(32-12)=2^20. Một cấp = 2^20·4 = 4194304 byte. idx=20/2=10, một bảng L-cấp = 2^10·4 = 4096 byte. In 4194304 4096.

    Đang tải editor...