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] RAID 0/1/5 — dung lượng và chịu lỗi

    RAID 0/1/5 — dung lượng sử dụng và khả năng chịu lỗi

    Tính dung lượng dùng được và số đĩa hỏng tối đa chịu được của mảng RAID gồm n đĩa, mỗi đĩa dung lượng cap (GB).

    Công thức theo mức

    • RAID0 (striping, không dự phòng): dung lượng = n * cap; chịu lỗi = 0 đĩa.
    • RAID1 (mirroring toàn bộ): dung lượng = cap (mọi đĩa là bản sao); chịu lỗi = n - 1 đĩa.
    • RAID5 (striping + 1 đĩa parity phân tán): dung lượng = (n - 1) * cap; chịu lỗi = 1 đĩa.

    In dung lượng dùng được, rồi số đĩa hỏng tối đa vẫn còn dữ liệu.

    Ví dụ

    RAID5, n=4, cap=100. Dung lượng = (4-1)*100 = 300 GB. Chịu được 1 đĩa hỏng. In 300 và 1.

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

      Một dòng: level n cap với level ∈ {RAID0, RAID1, RAID5}.

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

      n ≥ 2 (RAID5: n ≥ 3); 1 ≤ cap ≤ 10^6.

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

      Dòng 1: dung lượng dùng được (GB). Dòng 2: số đĩa hỏng tối đa chịu được.

    Ví dụ:

    Đầu vào:

    RAID5 4 100
    

    Đầu ra:

    300
    1

    Giải thích:

    RAID5: dung lượng = (n-1)*cap = 3*100 = 300 GB; 1 đĩa parity phân tán nên chịu được 1 đĩa hỏng. In 300 và 1.

    Đang tải editor...