qq_38709999 2022-05-05 00:03 采纳率: 33.3%
浏览 621
已结题

IO繁忙为什么会导致cpu占用率高?

随便在网上截张图,实际也确实遇到过这种情况

img

IO的数据搬运是通过DMA操作的,cpu占用率为什么还会增高,无论是通过阻塞IO进程阻塞态,不会分配CPU时间片或非阻塞IO都不应该占用cpu

看过一种观点是产生了iowait,linux在阻塞io时会产生idle进程空转,那么是否可以理解为这种cpu占用率过高其实不会产生实际影响,如果有实际工作的进程ready了就转去执行实际进程?

  • 写回答

2条回答 默认 最新

  • 於黾 2022-05-05 08:29
    关注

    IO传输也是需要CPU的呀,你以为CPU只是简单的发送个“开始”,内存里的数据就自动排好序走进硬盘里去了吗

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 6月8日
  • 创建了问题 5月5日