Глосарій/Процесор, графічний процесор і енергія
Невиміряні процеси
Також: чому сума в списку менша за загальну
Коротка відповідь
Процеси в системному моніторі рідко в сумі дають загальне значення з його графіка. У Моніторі активності це тому, що кожне ядро рахується до 100%, а робота між двома замірами не потрапляє в підрахунок. В інших моніторах ще й тому, що macOS дозволяє програмі вимірювати лише процеси вашого користувача, тож системні процеси, як-от WindowServer і kernel_task, лишаються порожніми, якщо їх не зчитує помічник.
Тут відбуваються дві різні речі, і їх корисно розрізняти. Перша — арифметика: стовпець «% процесора» в Моніторі активності — це частка одного ядра, тож на Mac із 8 ядрами сума стовпця може сягати 800%, тоді як графік унизу показує відсоток від усього компʼютера. Поділіть на кількість ядер, і числа зійдуться, з точністю до процесів, які запустилися й завершилися між замірами.
Друга — дозволи. macOS відповідає на детальні запитання про процес — його процесорний час, памʼять, дисковий і мережевий трафік — лише користувачу, якому він належить, або root. Монітор активності — програма Apple, і він зчитує дані через системну службу, яка бачить усе. Сторонній монітор працює від вашого імені, тож процеси, які належать root чи системним обліковим записам, а це більшість того, що вгорі списку, нічого не повідомляють, і сума для програм менша за загальну для Mac.
Як звести числа Монітора активності
Відсортуйте вкладку «Центральний процесор» за «% процесора» й додайте верхні рядки: на зайнятому Mac вони швидко перевищують 100%. Тепер подивіться на значення «Система» і «Користувач» під списком — це частки від усього Mac. Стовпець рахує на ядро, а зведення — на весь Mac, і співвідношення між ними дорівнює кількості ваших ядер.
Решта розбіжності — це час. Монітор активності типово робить заміри кожні пʼять секунд («Перегляд» → «Частота оновлення»). Процес, який працює секунду й завершується, — команда оболонки, робочий процес Spotlight, помічник, якого програма запустила й закрила, — додається до загальної суми, але ніколи не зʼявляється в списку.
Що робить помічник і чому деякі монітори його просять
Щоб вимірювати процеси, які йому не належать, монітору потрібен невеликий привілейований помічник, якого macOS установлює з вашим паролем і який відповідає на одне запитання: скільки використовують ці процеси? Помічник працює від імені root, тому сумлінна програма робить його необовʼязковим, невеликим і точно каже, що він зчитує.
Якщо помічника немає, чесний монітор так і каже: показує системні процеси, які не може виміряти, порожніми, рахує їх і зазначає, що сума в списку менша за загальну. Монітор, що показує число для kernel_task без помічника, лише оцінює його.
Що питають люди
Чому в Моніторі активності сума «% процесора» перевищує 100%?
Бо кожне ядро рахується до 100%. Mac із 8 ядрами може показувати 800% у сумі за процесами. Значення «Система», «Користувач» і «Бездіяльність» під списком — це частки від усього Mac, тож у сумі вони завжди дають 100%.
Чому деякі процеси не показують процесора чи памʼяті в сторонньому моніторі?
macOS дозволяє програмі зчитувати детальні показники лише для процесів того самого користувача. WindowServer, kernel_task, mds_stores та інші системні процеси належать root або системним обліковим записам, тож вони лишаються порожніми, якщо в монітора немає помічника, якому macOS дозволяє їх зчитувати.
Чи безпечний привілейований помічник?
Це програма, що працює від імені root, тож довіра важлива. Правильний помічник невеликий, не робить нічого, крім зчитування показників процесів, установлюється лише тоді, коли ви його вмикаєте, і видаляється там само. Перш ніж його ввімкнути, прочитайте, що, за словами програми, він робить.
Повʼязане
Шукаєте щось краще за Монітор активності? Дивіться найкращі альтернативи Монітору активності для Mac або перегляньте усі терміни глосарію.