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] Tiến trình foreground và background

    Tiến trình foreground và background

    Trong một phiên terminal, một nhóm tiến trình được đặt làm foreground — nhóm này nhận đầu vào bàn phím và các tín hiệu sinh từ terminal (như Ctrl+C). Các nhóm còn lại chạy background.

    Cho danh sách tiến trình với pid, pgid, sid và pgid của nhóm foreground, hãy phân loại tiến trình thành foreground (cùng pgid foreground) và background (còn lại).

    Ví dụ

    Nếu nhóm foreground là pgid 10, mọi tiến trình có pgid 10 là foreground.

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

      Dòng 1: n. n dòng: pid pgid sid. Dòng cuối: fg — pgid nhóm foreground.

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

      1 ≤ n ≤ 1000.

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

      Dòng 1: số_foreground số_background. Dòng 2: pid foreground tăng dần (rỗng nếu không có). Dòng 3: pid background tăng dần (rỗng nếu không có).

    Ví dụ:

    Đầu vào:

    3
    1 10 1
    2 10 1
    3 20 1
    10
    

    Đầu ra:

    2 1
    1 2
    3

    Giải thích:

    Nhóm foreground pgid=10 gồm tiến trình 1 và 2. Tiến trình 3 (pgid 20) chạy background.

    Đang tải editor...