Tôi đang tìm kiếm một thuật toán để xử lý vấn đề sau, hiện tại tôi đang gọi thuật toán "quả táo xấu".
Vấn đề
- Tôi đã có N tiến trình đang chạy trong M sandbox, trong đó N >> M.
- Đó là không thực tế để cung cấp cho mỗi quá trình hộp cát riêng của mình.
- Ít nhất một trong số các quy trình đó có hành vi xấu và làm giảm toàn bộ hộp cát, do đó giết chết tất cả các quy trình khác trong cùng một hộp cát.
Nếu đó là một quá trình hành xử tồi tệ, thì tôi có thể sử dụng một phép chia đơn giản để đặt một nửa các quy trình vào một hộp cát, và một nửa trong hộp cát khác, cho đến khi tôi tìm thấy sự bất hợp lý.
Câu hỏi
Nếu có nhiều hơn một quá trình bị hành xử xấu - bao gồm cả khả năng tất cả chúng đều hoạt động kém - thuật toán ngây thơ này có "hoạt động" không? Được đảm bảo để làm việc trong một số giới hạn hợp lý?
Đơn giản hóa
Để tranh luận, hãy giả sử rằng một quy trình xấu sẽ đưa hộp cát xuống ngay lập tức và một quy trình tốt không bao giờ xảy ra.