Компютри Windows интернет

Диагностика и "лечение" на критични системни грешки (паника на ядрото). Какво представлява процесът kernel_task на MacOS? На лаптопи Mac със сменяема батерия

Екипът на Google за сигурност Project Zero откри недостатък в ядрото на macOS, c “ високо нивосигурност "(чрез AppleInsider).

Грешка в ядрото

Ядрото е ядрото операционна система... Той има пълен контрол над всичко и обработва неща като I / O от софтуер, памет, компютърни аксесоари и др. XNU е името на ядрото, което се използва във всички операционни системи на Apple.

Недостатъкът позволява на хакер да прави промени във файла, без да уведомява операционната система. Това обърква нещо, наречено копиране при запис (COW), което позволява на процесите да записват данни помежду си, но трябва да бъде защитено от други неща, които го променят. Този недостатък позволява това да се случи.

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

Понякога забелязвате, че Mac не е толкова бърз, колкото преди. Програмите работят по -бавно, процесорът се загрява, а вентилаторът работи с максималния си капацитет. Днес ще ви кажем една от причините за тази компютърна работа.

« сkonfigd"Дали е демон за системна конфигурация, който работи върху система Mac OS X. Повечето потребители никога няма да го видят, защото" configd "работи в заден план Mac. Също така, този демон понякога може да започне да „бъде капризен“, което причинява необичайни скокове в процесора, а звукът от вентилатора на вашия Mac става като бръмчене като във въздушна тунел. Всичко това може да бъде диагностицирано чрез стартиране на Activity Monitor и след това сортиране на процесите по% CPU. Кога неправилна работа"Configd" ще заема някъде между 20-95% от ресурсите на процесора. Ако това поведение продължи около минута, това е често срещано явление, което може да бъде пренебрегнато, просто нека бъде честно. Но има моменти, когато "configd" може да зареди процесора за няколко часа без никакъв видима причинапо този.

Решаване на проблема с работата на "configd" чрез терминала

За да принудим configd да се възобнови, първо убиваме процеса с командата killall. Тъй като това е системен процес, той ще бъде рестартиран незабавно. Всеки път, когато "configd" губи ресурси на процесора, този трик ще реши проблема.

Стартирайте терминал (намира се в / Applications / Utilities /) и въведете следната команда:

sudo killall configd

Ще трябва да въведете администраторската си парола, за да изпълните командата като супер потребител. Изпълнението на командата без sudo няма да работи.

Ако оставите Activity Monitor отворен и сте сортирани по процесора, ще забележите, че „configd“ ще изчезне и веднага ще се появи отново, докато вече не е в лидерите на списъка и вече не консумира процесора. Сега нормалната цифра за демон ще бъде някъде между 0% и 1% процесор.

Ако имате проблеми с configd след използване на командата "killall", преминете към края на тази статия, за да научите повече за отстраняването на неизправности с този демон.

Работа с "configd" без терминал

Ако не сте запознати с командна линия, има още две възможности:

  1. Затворете всички работещи приложения на Mac
  2. Рестартирайте компютъра

Рестартирането на Mac има същия ефект като убиването на процеса configd в терминала. Този метод може да помогне, ако неадекватната работа на демона е причинена от неправилната работа на една от работещите програми.

Конфигуриране на диагностика и помощ за Daemon

Официално Apple описва configd, както следва:

« Демонът Configd е отговорен за много аспекти на конфигурацията на локалната система. „Configd“ съхранява данни, използвани от текущото състояние на системата, предоставя известия за приложения, когато тези данни се променят, и обработва различни конфигурации за други агенти.»

Ако искате да опитате да диагностицирате причината за неправилното поведение на "configd", тогава на първо място можете да разгледате несъответствията във файловете PLIST, които се намират в следните директории:

/ System / Library / SystemConfiguration /

/ Библиотека / Предпочитания / SystemConfiguration /

Друга възможност е да стартирате "configd" отново, но в разширен режим, със следната команда:

sudo / usr / libexec / configd -v

Тази команда ще експортира подробна информацияза случващото се в системата към конзолата. Сравняването на тази информация с горепосочените системни директории може да бъде много полезно за намиране на точната причина за неизправността на демона.

Общият опит показва, че някои приложения и процеси извикват демона „configd“ по -често от други. Това се случва при някои принтери, базирани на Java приложения и множество неуспешни опити за свързване към мрежата. Ето защо понякога нулирането на всички приложения в системата може да бъде много ефективно при решаването на този проблем.

Собственици на нови лаптопи MacBook Proи настолните компютри на iMac Pro са изправени пред внезапна паническа грешка в ядрото (подобна на BSOD от Windows за MacOS).

Появата на грешка се доказва от множество оплаквания от техническия форум Поддръжка на Appleи ресурси на трети страни. Прозорецът с грешка и последващото рестартиране на системата се случва 1-2 пъти на ден, по-често след отключване на устройството.

Причини за проблема

Въз основа на наличните днес данни проблемът е причинен от вградената операционна система Bridge и специален T2 чип, които отговарят за неинтензивните компютърни функции-контролират скоростта на въртене на охладителите, обработката на звука и т.н. Проблемът възниква само на компютри с чип Т2. Понастоящем обаче няма преки доказателства за пряка причина за Т2 и няма данни за разпространението на проблема.


Опитите за отстраняване на проблема от потребителите чрез почистване на устройството и преинсталиране на операционната система, възстановяване на копие на операционната система чрез Time Machine, изключване на периферното оборудване и дори смяна на компютъра не дадоха пълна ефективност. Въз основа на това може да се предположи, че проблемът се крие дълбоко в системата.

Взех един стар лаптоп MacBook Pro 2010година, което значително се забави. Подозренията паднаха върху диска, тъй като в тези модели бяха инсталирани твърди дискове, беше решено да се замени с SSD с вече инсталиран Mac OSвзети от друга кола.

Проблемът не изчезна и нямаше визуално подобрение. След няколко проверки се нулира NVRAMи SMC, тъй като охладителят се въртеше със 100% скорост, когато бях почти сигурен, че проблемът е в хардуера, случайно погледнах „ Мониторинг на системата”И видях натоварването на процесора там със 140-250%.
Проблемът беше, че процесът Kernel_task консумира ресурси на процесора и предотвратява работата на цялата ОС.

Ето какво пишат самите Apple за този процес:
Процесът kernel_task помага за управление на температурата на процесора, като намалява наличността на ресурси на процесора за изчислително интензивни програми. С други думи, процесът kernel_task започва, когато съществува риск от прегряване на процесора. Само по себе си не причинява такива ситуации. Когато температурата на процесора спадне, активността на този процес автоматично се намалява.

Намерено е решение на проблема:

1) Първо включете дисплея скрити папки:
- Отиваме до "Терминал"
- Ние караме с 2 команди:
по подразбиране пишете com.apple.finder AppleShowAllFiles TRUE
killall finder

2) След това определяме компютърния модел:
- Щракнете върху „За този Mac“
- След това натиснете бутона „Подробности“
- Кликнете върху „Системен отчет“
Където е хардуерът, намерете и запомнете „ID на модела“. В моя случай това е MacBookPro7,1

3) Следвайте този път:
/ Система / Библиотека / Разширения
Изберете файл IOPlatformPluginFamily.kext, щракнете с десния бутон и изберете „Показване на съдържанието на пакета“

4) Отидете на Съдържание / Приставки , след това върху файла ACPI_SMC_PlatformPlugin.kextсъщо изберете „Показване на съдържанието на пакета“

5) По -нататък в Съдържание / Ресурси намерете файла с модела на лаптопа. Запомнете: Имах MacBookPro 7.1. Изтрийте този файл! (Ако не желания файл, изтрийте най -близките модели, например, не 8.1, изтрийте 7.1 и 9.1)

6) Рестартирайте компютъра. Вероятно тази процедура ще трябва да се извърши след всяка актуализация на Mac OS.

За да върнете показването на папки, както беше преди, изпълнете командата в "Терминал":
по подразбиране пишете com.apple.finder AppleShowAllFiles FALSE
killall finder

Ако не можете да изтриете идентификатора на модела

В случай, че имате MacOS El Capitan или по -нова, системата няма да ви позволи да изтриете файла с идентификатори, тъй като първо трябва да премахнете защитата на целостта на системата (Защита на целостта на системата или SIP за кратко).

SIP може да бъде деактивиран само от режим на възстановяване. Трябва да рестартирате, да получите достъп до „ Терминал”И въведете командата за изключване.

  • Изключете Mac и задръжте клавишите ⌘R (Command + R), когато го включвате;
  • След зареждането стигаме до менюто за възстановяване. Отваряме секцията " Комунални услуги"И бягай" Терминал»;
  • Въвеждаме командата:
    csrutil деактивиране
  • Рестартирайте вашия Mac.

За да активирате защитата, трябва да влезете отново в режим на възстановяване, да отворите терминал и да въведете командата.