Я ищу алгоритм для решения следующей проблемы, которую я (пока) называю алгоритмом «плохого яблока».
Проблема
- У меня N процессов, запущенных в M песочницах, где N >> M.
- Непрактично давать каждому процессу свою собственную песочницу.
- По крайней мере, один из этих процессов ведет себя плохо и разрушает всю изолированную программную среду, тем самым убивая все остальные процессы в этой же изолированной программной среде.
Если бы это был один процесс с плохим поведением, то я мог бы использовать простое деление пополам, чтобы поместить половину процессов в одну песочницу, а половину - в другую, пока не обнаружу негодяй.
Вопрос
Если несколько процессов плохо себя ведут, включая вероятность того, что все они плохо себя ведут, «работает» ли этот наивный алгоритм? Гарантируется ли работа в разумных пределах?
Упрощения
Ради аргумента давайте предположим, что плохой процесс мгновенно разрушает свою песочницу, а хороший процесс никогда не делает.