为什么linux上的CP命令会消耗CPU?

Boa*_*oaz 4 linux hard-drive copy central-processing-unit io

我只是为两个包含少量大文件的大目录运行复制命令,我看到我的 cp 进程在顶部消耗了大约一半的核心:

51116 root      20   0  110m  876  688 D 43.9  0.0   3:23.83 cp -i -r 165 178 temp       
Run Code Online (Sandbox Code Playgroud)

为什么cp进程会消耗任何cpu?我想它大部分时间都在等待磁盘上......

谢谢,波阿斯

Jav*_*ier 6

如果您检查百分比,在屏幕顶部,您会看到它大部分处于%wa(等待)和%id(空闲)状态,而在%us(用户空间)中则很少(如果有)。

但是在流程线上,它空闲等待给定流程的所有时间都由该流程承担。如果同时运行另一个占用大量 CPU 的进程,它将占用大部分 CPU,而不会影响复制任务,因为它将使用%id%wa时间。