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 Unix] Mô phỏng hệ thống link và truy vấn inode

    Mô phỏng tạo hard/symbolic link và truy vấn

    Mô phỏng một loạt lệnh trên một file system phẳng (chỉ tên đường dẫn tuyệt đối):

    • create P : tạo file thường mới tại P, gán một inode mới (đánh số tăng dần từ 1 theo thứ tự tạo), link count 1.
    • hardlink NEW OLD : tạo NEW là hard link của OLD (cùng inode). Bảo đảm OLD là file thường đang tồn tại.
    • symlink NEW TARGET : tạo NEW là symbolic link trỏ tới chuỗi TARGET (inode symlink riêng, không ảnh hưởng inode đích).
    • inode P : truy vấn — in inode của file thường tại P. Nếu P là symlink, phân giải một bước tới target rồi lấy inode của target (giả sử target là file thường đang tồn tại). Nếu không xác định được, in 0.

    In kết quả mỗi lệnh inode trên một dòng, theo thứ tự.

    Ví dụ

    • create /a (inode 1), hardlink /b /a, inode /b → 1
    • Định dạng đầu vào:

      Dòng 1: số lệnh n. Tiếp theo n dòng lệnh.

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

      0 ≤ n ≤ 1000.

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

      Mỗi truy vấn inode in một dòng kết quả.

    Ví dụ:

    Đầu vào:

    3
    create /a
    hardlink /b /a
    inode /b
    

    Đầu ra:

    1

    Giải thích:

    /a có inode 1; /b là hard link cùng inode 1 nên truy vấn trả 1.

    Đang tải editor...