Назад | Перейти на главную страницу

Почему команда CP в Linux использует процессор?

Я просто запускаю команду копирования для двух больших каталогов с небольшим количеством огромных файлов и вижу, что мой процесс cp потребляет около половины ядра сверху:

51116 root      20   0  110m  876  688 D 43.9  0.0   3:23.83 cp -i -r 165 178 temp       

Почему процесс cp потребляет любой процессор? Я предполагаю, что большую часть времени он проводит в ожидании на диске ...

Спасибо, Боаз

если вы проверите проценты в верхней части экрана, вы увидите, что в основном это %wa (ожидание) и %id (простаивает) и очень мало (если есть) в %us(пользовательское пространство).

но на технологической линии все время, которое она проводит в ожидании данного процесса, относится к этому процессу. если в то же время выполнялся другой процесс, нагружающий ЦП, он занимал бы большую часть ЦП, не влияя на задачу копирования, потому что он использовал бы %id и %wa время.

Он управляет переездом. Это включает поиск файлов, создание новых файлов и их копирование. Все это требует процессорного времени. Из-за способа буферизации файлов это может быть возможно очень быстро, так как запись в файл происходит асинхронно с операцией копирования. Если файлы не буферизованы, загрузка ЦП может быть довольно низкой во время доступа к файлам.