Чи може запуск "так> / dev / null" завдати шкоди Mac?


36

Нещодавно я пробіг yes > /dev/null3 хвилини, щоб вирядити акумулятор Mac. За цей час температура піднялася до 72 ° С і вентилятори крутилися до 4000 об / хв. Я негайно виходжу з процесу.

Чи варто побоюватися, що це пошкоджене обладнання або логічна плата?


9
Як ви вважаєте, що Маки розроблені таким чином, щоб вони могли пошкодитися, граючи в 3D-ігри, складаючи великі програмні проекти тощо?
користувач253751

3
Хочеться додати тут, що мій друг зумів розплавити клавіатуру свого маленького яблучного ноутбука (не питайте мене про точну модель), склавши кілька великих проектів. Після цього ключ A трохи деформувався. Ще функціональний, але ви могли помітити різницю.
Командир байт

3
Ви /dev/nullзрештою зносите отвір на порту, тому вам знадобляться негабаритні поршні, але зачекайте, поки ви побачите дим від вихлопу, перш ніж поспішати на механіку.
користувач207421

@EJP - Це, безумовно, правда, але введення хорошої синтетичної мастила безпосередньо в порт може допомогти продовжити життя. Я також чув, що Seaamaming псевдо tty має значні переваги.
Аллан

Що ви маєте на увазі під своїм коментарем? @EJP

Відповіді:


3

Звичайно, як говорили інші: і процесор, і ядро ​​мають власну стратегію самозбереження.

Я додам деякий аромат щодо хау yes використовує ресурси комп'ютера.

Варто розрізняти поведінку BSD yesта GNU yes.
macOS є BSD, тому використовуватиме (старий) розподіл BSD yes.

Хороша дискусія щодо відмінностей існує наскільки GNU yesнастільки швидкий?

І дискусія про цю дискусію існує в однойменній темі новин Hacker News .

BSD / macOS yesдійсно просто працює puts("y");в тісному циклі.
GNU yes... дещо серйозніший. Він має оптимізацію, що значно перевищує буферизацію вводу / виводу.


55

Вказівки щодо yesцього маленького дорогоцінного каміння зі сторінки чоловіка :

Використання так призводить до 100% використання процесора, тому його рідко використовують, крім тестування, наприклад для максимізації процесора комп'ютера.

А це означає, що ні, ви не пошкодили обладнання. Використання yesкоманди - це спосіб використання всього (тобто 100%) вашого процесора. Симптоми, які у вас виникли (наприклад, підвищення температури та зумовлене цим збільшення обертів вентилятора), слід очікувати за цих обставин. Крім того, ваш процесор буде "заглушити" і в кінцевому підсумку відключиться, якщо його тепловий поріг буде перевищено для запобігання пошкодження.


2
Повністю згоден. Машини можуть працювати на 100 градусних центральних процесорах протягом декількох годин і мають багато гарантій для зниження планування процесора, якщо охолодження не йде в ногу.
bmike

1
Але я чув, що під час запуску циклу, коли виконання може розплавити деякі частини. А скільки часу потрібно було, щоб я залишив команду "Так", щоб мій Mac досяг 105 C?

3
Завжди найкраще йти із задокументованими, емпіричними даними, а не з промови. Наприклад, див .: Intel - Як працює відключення при перегріванні? Що стосується необхідного часу, 1) це залежить від вашого фізичного робочого середовища та 2) що ви намагаєтеся досягти? Це, однак, інше питання, ніж те, що було поставлено спочатку.
Аллан

3
Це досить дивовижне твердження з сторінки сторінки! Хоча, запускаючи його самостійно, я згоден, досить марно, час від часу його перетворення в іншу команду може бути досить корисним.
Мюзер


8

yesКоманда просто повторно записує рядок у стандартний висновок, характер у за замовчуванням. Перенаправлення ( >) це /dev/nullпросто призводить до забуття даних потоку. Іншими словами, це не має тривалого впливу на стійкий стан вашого комп'ютера, це не шкідлива команда через цей об'єктив.

Оскільки команда так пише рядок stdout без обмежень на вихідній швидкості, це призведе до того, що центральний процесор досяг максимального використання на одному ядрі. Це є причиною підвищення температури процесора і пов'язаного з цим збільшення швидкості вентилятора.

У сучасній машині, особливо добре розробленій як ноутбук Apple, апаратне забезпечення захистить себе від перегріву. Спочатку збільшенням швидкості вентилятора, потім зменшенням тактової частоти процесора і, в кінцевому підсумку, зупинкою процесора. Не навмисно обійшовши ці функції, ваше обладнання не перегрілося. Машинка чудово.

Ви конкретно згадали температуру 72 ° C. Це не дуже висока температура для процесора. Скромний мобільний процесор, i5-7260U, визначає максимально допустиму температуру 100 ° C. Ви можете побачити специфікацію як T_Junction в розділі специфікацій пакета на цій сторінці: http://ark.intel.com/products/97539/Intel-Core-i5-7260U-Processor-4M-Cache-up-to-3_40- ГГц


-2

Сумна правда така: це може "нашкодити Mac ".

Фактичний приклад, наведений в тілі для питання: це, швидше за все, не завдало шкоди пристрою. Здійснено.

Але як загальна відповідь на питання в заголовку: Це залежить від того, про який тип Mac мова йде. Порада та міркування, надані до цього питання чи в коментарях, не є правдивими і можуть бути досить небезпечними! Занадто багато довіри та віри вкладено в просту віру, що апаратне забезпечення Apple - це просто найкраще.

Просто не вірно, що Apple розробляє зараз або розробляла раніше всі свої системи, щоб дійсно не нашкодити собі через перегрів. Хоча це правда, що цього не повинно статися, але це правда, що це і відбувається . І зробив:

Прекрасним прикладом для цього є MacBook Pro, особливо ті, які були в 2010-2012 роках. У той час, як чіп Intel, який в першу чергу наголошується yesна всіх потоках протягом тривалого часу, знизиться, він буде справлятись з високими температурами досить добре, і навіть ОС запустить і наростить kernel_task, щоб нічого не корисного, крім допомоги охолоджувати машину, дискретний чіп на тому ж теплопроводі є вразливим аналогом.

Стреснення цих систем без потреби, як і у випадку yes, прискорює збій графічного чіпа RadeonGate. На цьому веб-сайті є численні приклади запитань до найбільш важко реагуючих на 2011 рік 8,2. Цей збій GPU - це теплове питання. Існують навіть посібники, як вбити машину , просто запустивши важкий 3D-рендерінг або орієнтири на час. Ці системи рекламувалися, але не підходили, наприклад, для рендерінгу та ігор. Судові позови про класи (лише під загрозою) та програми відновлення розширення розширюють самі собою.


1
Я маю MacBook на початку 2015 року з дисплеєм Retina, а не MacBook 2011 для інформації info.Nice.

Ця відповідь принципово неправильна. yesніяк не взаємодіє з графічним процесором. Джерело для yesтільки викликає більшість основних бібліотек; жодна з них не є математичною бібліотекою (потрібно мінімум, щоб отримати доступ до GPU). По-друге, відео, яке ви пов’язали, жодним чином не посилається yesна несправні GPU. Россман пов'язує невдалий GPU із поганим виробництвом.
Аллан

Це не принципово невірно в даних пристроях. Моя відповідь стосується диференціації між пристроями. І мова йде про неякісне виробництво і по суті поганий дизайн. yesпідкреслює процесор. Підкреслений процесор нагрівається. Потім температура нагрівача підвищується, і той самий радіатор повинен охолоджувати вразливі GPU. Цей тепловідвідник / тепловий дизайн не робить цього регулярно на більшості 8,2 Мбіт.
LаngLangС

@LangLangC - Цей тепловідвід / тепловий дизайн виходять з ладу. Це логічна помилка. Існує нульове підтвердження того, що теплий (ер) процесор перешкоджає властивостям розсіювання енергії нагрівача, що призводить до виходу з ладу GPU, і ви надаєте докази на підтвердження цього твердження. Відео, яке ви пов’язали (усі 17 хвилин), не згадує про високі темпи процесора та не підкреслює процесор.
Аллан

Доказом є швидкість відмови в цих підрозділах. Ви дивилися на ці радіатори? Це проста фізика.
LаngLangС
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.