Как ограничить способность подпроцесса устанавливать привязку своих дочерних процессоров? ⇐ Linux
-
Anonymous
Как ограничить способность подпроцесса устанавливать привязку своих дочерних процессоров?
Предположим, существует корневой процесс (R), который может создать подпроцесс (S). S может создавать свои собственные подпроцессы (s1, s2, ...). R может установить привязку процессора S во время создания S. Однако я не хочу, чтобы S изменял свою привязку к ЦП или нарушал привязку к ЦП при создании своих собственных подпроцессов.
Например, R может настроить S на использование ЦП 1–10 для собственного запуска. S может изменить его, но не может использовать ядра ЦП, число которых превышает 10. И когда S создает s1, s2..., он не может назначить им ядра ЦП, отличные от 1–10.
Я могу контролировать логику R, но не могу контролировать логику S, s1, s2... Можно ли каким-либо образом заставить S и его подпроцессы использовать определенные ядра ЦП, когда R создает S?
Добавьте дополнительную информацию, поскольку Чарльз Даффи сказал, что «есть много разных способов сделать это, и в вопросе недостаточно подробностей, чтобы дисквалифицировать любой из них».
[*]Операционная система — Ubuntu 18.04/20.04. [*]Вы можете рассматривать R как сценарий bash, и S следует создавать внутри него.
С учетом приведенной выше информации, существует ли какая-нибудь демонстрационная версия, которая может показать, как это сделать?
Предположим, существует корневой процесс (R), который может создать подпроцесс (S). S может создавать свои собственные подпроцессы (s1, s2, ...). R может установить привязку процессора S во время создания S. Однако я не хочу, чтобы S изменял свою привязку к ЦП или нарушал привязку к ЦП при создании своих собственных подпроцессов.
Например, R может настроить S на использование ЦП 1–10 для собственного запуска. S может изменить его, но не может использовать ядра ЦП, число которых превышает 10. И когда S создает s1, s2..., он не может назначить им ядра ЦП, отличные от 1–10.
Я могу контролировать логику R, но не могу контролировать логику S, s1, s2... Можно ли каким-либо образом заставить S и его подпроцессы использовать определенные ядра ЦП, когда R создает S?
Добавьте дополнительную информацию, поскольку Чарльз Даффи сказал, что «есть много разных способов сделать это, и в вопросе недостаточно подробностей, чтобы дисквалифицировать любой из них».
[*]Операционная система — Ubuntu 18.04/20.04. [*]Вы можете рассматривать R как сценарий bash, и S следует создавать внутри него.
С учетом приведенной выше информации, существует ли какая-нибудь демонстрационная версия, которая может показать, как это сделать?
Мобильная версия