Среди полей вывода команды «ps»% CPU не является фактическим использованием ЦП в этом процессе?

Например, одно из полей вывода этой команды стиля BSD, ps aux , является «% CPU». Альтернативная команда ps -efl выводит поле «C» (или CP).

Согласно странице ps :

  • % CPU – это процесс использования процессора в формате «##. #». В настоящее время используется время процессора, деленное на время выполнения процесса (cputime / realtime ratio), выраженное в процентах.
  • C по существу% CPU выражается как целое число

Вот как страница ps man описывает% CPU или C. Но большинство книг и веб-сайтов в Интернете просто говорят: %CPU or C is CPU usage of a process .

Можно было бы подумать, что это означает% вычислительной мощности процессора, используемой процессом, из общей доступной вычислительной мощности от ЦП. Или это только я?

(PS: Я новичок)

  • Каковы эти процессы и почему я не могу их убить?
  • Выберите строки, начинающиеся с определенных номеров
  • ps | grep показывает плохой результат в подоболочке с заданиями, работающими в фоновом режиме
  • В каком каталоге работает узел?
  • В чем смысл «\ _» в выводе «ps ef»?
  • Перечислить процесс по имени, исключая grep
  • Инструмент стиля Solaris ptree для Linux
  • Спецификация Solaris ps aux comand. Почему для grep необходимо использовать параметр ww?
  • One Solution collect form web for “Среди полей вывода команды «ps»% CPU не является фактическим использованием ЦП в этом процессе?”

    Отношение времени процессора к реальному времени (рассчитанное одним из многих разумных способов) является показателем процента мощности процессора, используемой процессом, из общей вычислительной мощности, доступной от ЦП.

    Каждый процесс в системе может находиться в двух состояниях: он либо работает на процессоре, либо ждет (реальность немного сложнее, чем это, и есть больше состояний процесса, но для простоты этот ответ не " t различать нерабочие состояния, такие как runnable, прерывание ожидания, прерывание без прерывания и т. д.).

    Обычный процесс обычно тратит некоторое время на процессор, а затем заканчивается ожиданием события (например, данные, поступающие в сетевое соединение, завершение ввода-вывода диска, блокировка становится доступной, CPU становится доступным снова для запускаемого процесса после того, как он израсходовал свой квант времени).

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

    В идеализированной ситуации (без накладных расходов от планировщика, без прерываний и т. Д.), И при идеальном измерении сумма времени процессора, используемого каждым процессом в системе в течение одной секунды, будет меньше одной секунды, а оставшееся время – время ожидания процессора. Когда вы добавляете больше процессов, особенно связанных с процессором, сокращается доля свободного времени процессора, а общая сумма процессорного времени, используемая всеми процессами в пределах каждой секунды, приближается к одной секунде. В этот момент добавление дополнительных процессов может привести к запущенным процессам, ожидающим процессор, и, таким образом, увеличению длительностей очередей (и, следовательно, средних значений нагрузки) и, в конечном счете, замедлению системы.

    Обратите внимание, что при простом соотношении времени процессорного времени процесса и времени, прошедшего с момента его запуска, в конечном итоге отображается среднее потребление ЦП процесса. Поскольку некоторые процессы изменяют поведение во время выполнения (например, сервер базы данных, ожидающий запросов, к тому же серверу базы данных, выполняющему ряд сложных запросов), часто более интересно знать самое последнее использование ЦП. По этой причине некоторые системы (например, FreeBSD, Mac OS X) используют разлагающееся среднее значение по этой странице :

    Использование CPU процесса; это затухающее среднее значение до минуты предыдущего (реального) времени. Поскольку временная база, на которой это вычисляется, варьируется (поскольку процессы могут быть очень молодыми), сумма всех полей% cpu может превышать 100%.

    Linux имеет упрощенный учет, который дает вам использование ЦП в соответствии с этой man-страницей :

    В настоящее время использование ЦП выражается в процентах от времени, затраченного на выполнение в течение всего жизненного цикла процесса. Это не идеально, и оно не соответствует стандартам, которые ps в противном случае соответствует. Использование процессора вряд ли составит до 100%.

    Interesting Posts

    Почему моя мышь перестает работать в моей сессии?

    Как избежать системного тайм-аута на экране входа в систему, когда я делаю чашку чая?

    Установите rpm из пользовательского репо

    Как я могу безопасно получить версию ksh?

    Как я могу сказать, какая команда означает псевдоним?

    xsel не удаляет выделенный текст

    Каковы последствия рекурсивного использования каталогов на внешнем диске, который в настоящее время имеет разрешения 501: dialout или root: root?

    Как заменить все вкладки в каждом файле в ветке файловой системы на 2 пробела?

    Тестирование нагрузки веб-сервера Apache (работа на Centos6)

    Диапазон поиска Vi и заменить

    tcpdump не будет захватывать весь пакет

    bash: регулярные выражения в выражении if

    Как иметь дело с утилитами с таким же именем, но вести себя по-разному между вариантами Unix?

    Что вызывает проблемы локализации в debian?

    Можно ли рассматривать проект GNU как дистрибутив Linux?

    Linux и Unix - лучшая ОС в мире.