Как порождать каждый дочерний процесс в отдельном пространстве имен pid

Я думаю, что ваш вопрос основан на неверной предпосылке.

В основном... ваши экстенты имеют размер 128 МБ, однако e4defrag взял файл, скопировал его данные, обнаружил, что копия имеет 5 экстентов, а не 10 экстентов, и поэтому он назвал это «успехом». " и указал индекс на скопированные данные, а затем освободил исходные данные. В этом случае выводится «10 -> 5».

(Теперь также возможно, что скопированные данные будут иметь больше экстентов, и в этом случае он удалит копию и оставит все как есть -, и напечатает "10 -> 10".)

Чем больше заполнен ваш диск, тем меньше вероятность того, что e4defrag сожмет файл до «минимального» количества экстентов, которое можно рассчитать на основе его размера.

Но не ожидайте, что e4defrag полностью дефрагментирует ваш диск --он как бы делает ленивую попытку сделать это, одна попытка на файл (на файл, который имеет более одного экстента, то есть --если он уже имеет только один экстент (или минимально возможный, я думаю ), он быстро пропускает его ), и если эта попытка не приводит к какому-то улучшению, он просто оставляет все как есть -, и даже если есть улучшение, не гарантируется минимально возможное количество экстентов. Re -запуск e4defrag может закончиться некоторым улучшением после первого запуска, особенно если с момента предыдущего запуска освободилось еще немного места, но последующие запуски после первого, скорее всего, очень быстро приведут к уменьшению результатов.

0
18.12.2020, 20:06
1 ответ

Из чтения руководства unshare CLONE_NEWPIDдействует на вызывающий процесс, а не на дочерний. Вызов этого несколько раз кажется излишним. После первого вызова все дочерние элементы находятся в новом пространстве имен pid.

Чтобы поместить их туда, вам нужен другой родитель для вызова unshare CLONE_NEWPID.

Попробуйте

repeat:
    fork
    if child:
        unshare CLONE_NEWPID
        spawn 

Все это еще не проверено, и это то, что я хотел бы попробовать дальше. Я также читаю, что вам нужно использовать clone.

1
18.03.2021, 22:42

Теги

Похожие вопросы