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

Как спящие процессы в «верху» могут использовать процентную долю ЦП?

Когда мы запускаем top, мы иногда видим спящий процесс «S», который использует% CPU; Я ожидаю, что все спящие процессы будут использовать 0% ЦП, поскольку они неактивны. Я ожидал, что только запущенные процессы «R» будут активно потреблять% ЦП наверху. Например, посмотрите эти спящие процессы Oracle

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM     TIME+ COMMAND                               
11975 oracle    15   0 16.8g 2.6g 2.6g S  8.9  5.5  56:28.38 oracle                       
 5837 oracle    15   0 16.8g 1.8g 1.7g S  6.6  3.7  10:04.11 oracle                       
12248 oracle    15   0 16.8g 1.6g 1.6g S  5.9  3.4  12:02.33 oracle                       
21253 oracle    15   0 16.8g 1.6g 1.6g S  4.3  3.4  12:33.83 oracle  

Я считаю, что активность ЦП, в данном случае для Oracle, состоит из множества коротких всплесков с точностью до 1 секунды для Top. Это означает, что счетчик использования обновляется, но Top не видит состояние «R», поскольку оно слишком короткое.

Есть предположения?

Это почти наверняка то, что происходит. В этом случае для Oracle использование ЦП состоит из множества коротких всплесков с точностью до 1 секунды для Top. Это означает, что счетчик использования обновляется, но Top не видит состояние «R», поскольку оно слишком короткое.