Czy uruchomienie `yes> / dev / null` może zaszkodzić komputerowi Mac?

36

Niedawno biegałem yes > /dev/nullprzez 3 minuty, aby rozładować baterię komputera Mac. W tym czasie temperatura wzrosła do 72 ° C, a wentylatory wirowały do ​​4000 obr./min. Natychmiast opuściłem proces.

Czy powinienem się obawiać, że ten uszkodzony sprzęt lub płytka logiczna uległa uszkodzeniu?

bmike
źródło
9
Czy uważasz, że komputery Mac są przeznaczone do uszkodzenia podczas grania w gry 3D, kompilowania dużych projektów oprogramowania itp.?
user253751,
3
Chciałbym tutaj dodać, że mojemu znajomemu udało się stopić klawiaturę swojego małego notebooka z jabłkami (nie pytaj mnie o dokładny model), kompilując kilka dużych projektów. Następnie klucz A został lekko zdeformowany. Wciąż funkcjonalny, ale widać różnicę.
Byte Commander
3
W końcu zużyjesz otwór w /dev/nullporcie, więc będziesz potrzebował zbyt dużych tłoków, ale poczekaj, aż zobaczysz dym z wydechu, zanim popędzisz do mechanika.
user207421,
@EJP - To zdecydowanie prawda, ale wstrzyknięcie dobrego syntetycznego smaru bezpośrednio do portu może pomóc przedłużyć żywotność. Słyszałem również, że Seafoaming pseudo tty ma znaczące zalety.
Allan
Co rozumiesz przez swój komentarz? @EJP

Odpowiedzi:

3

Z pewnością, jak powiedzieli inni: zarówno procesor, jak i jądro mają swoje własne strategie samozachowawcze.

Dodam trochę smaku dotyczącego sposobu yes korzystania z zasobów komputera.

Warto rozróżnić zachowanie BSD yesi GNU yes.
macOS jest BSD, więc użyje (starej) dystrybucji BSD yes.

Dobra dyskusja na temat różnic istnieje w Jak yesszybko GNU ?

Dyskusja o tej dyskusji istnieje w wątku Hacker News o tej samej nazwie .

BSD / macOS yesnaprawdę działa po prostu puts("y");w ciasnej pętli.
GNU yesjest… nieco poważniejszy. Ma optymalizacje daleko wykraczające poza buforowanie I / O.

Brzozy
źródło
55

Instrukcje yesmają ten mały klejnot ze strony człowieka :

Użycie tak powoduje wykorzystanie procesora w 100%, z tego powodu rzadko jest używane do testowania, np. W celu maksymalnego wykorzystania procesora komputera.

Co oznacza, że ​​nie, nie uszkodzisz sprzętu. Użycie yespolecenia jest sposobem na wykorzystanie całego (tj. 100%) procesora. W takich okolicznościach należy spodziewać się objawów, które wystąpiły (tj. Wzrost temperatury i wynikający z tego wzrost obrotów wentylatora). Ponadto procesor „dusi się” i ostatecznie wyłączy, jeśli jego próg termiczny zostanie przekroczony, aby zapobiec uszkodzeniom.

Allan
źródło
2
Kompletnie się zgadzam. Maszyny mogą pracować z procesorem przy 100 stopniach przez wiele godzin i mają wiele zabezpieczeń, aby obniżyć harmonogram procesora, jeśli chłodzenie nie nadąża.
bmike
1
Ale słyszałem, że podczas uruchamiania pętli podczas wykonywania niektóre części mogą stopić się. A ile czasu powinienem pozostawić uruchomioną komendę tak, aby mój komputer Mac osiągnął 105 ° C?
3
Zawsze najlepiej jest korzystać z udokumentowanych danych empirycznych niż ze słyszenia. Na przykład zobacz: Intel - Jak działa zamknięcie w przypadku przegrzania? Jeśli chodzi o wymagany czas, 1) zależy to od fizycznego środowiska operacyjnego oraz 2) co próbujesz osiągnąć? To jednak inne pytanie niż pierwotnie postawione.
Allan
3
To dość zaskakujące stwierdzenie ze strony man! Zgadzam się, że chociaż samodzielne uruchamianie go jest całkiem bezużyteczne, odtłuszczanie go w innym poleceniu może być od czasu do czasu bardzo przydatne.
Muzer
8

yesPolecenie po prostu wielokrotnie pisze ciąg do stdout y znaków domyślnie. Przekierowanie ( >) /dev/nullpowoduje po prostu, że dane strumienia zostają zapomniane. Innymi słowy, nie ma to trwałego wpływu na trwały stan komputera, nie jest to szkodliwe polecenie przez tę soczewkę.

Ponieważ polecenie yes zapisuje ciąg na standardowe wyjście bez żadnego ograniczenia prędkości wyjściowej, spowoduje to, że procesor osiągnie maksymalne wykorzystanie na jednym rdzeniu. Jest to przyczyną wzrostu temperatury procesora i związanego z tym wzrostu prędkości wentylatora.

W nowoczesnej maszynie, szczególnie dobrze zaprojektowanej, takiej jak laptop Apple, sprzęt chroni ją przed przegrzaniem. Najpierw poprzez zwiększenie prędkości wentylatora, następnie przez zmniejszenie prędkości zegara procesora, a ostatecznie przez zatrzymanie procesora. Bez celowego obchodzenia tych funkcji sprzęt nie przegrzał się. Maszyna jest w porządku.

Wspominałeś o temperaturze 72 ° C. To nie jest bardzo wysoka temperatura dla procesora. Skromny procesor mobilny, i5-7260U, określa maksymalną dopuszczalną temperaturę 100 ° C. Możesz zobaczyć specyfikację jako T_Junction w sekcji specyfikacji pakietu na tej stronie: http://ark.intel.com/products/97539/Intel-Core-i5-7260U-Processor-4M-Cache-up-to-3_40- GHz

trognandery
źródło
-2

Smutna prawda jest taka: może to „zepsuć komputer Mac ”.

Rzeczywisty przykład podany w treści pytania: to bardzo prawdopodobne, że nie zaszkodziło urządzeniu. Zgoda.

Ale jako ogólna odpowiedź na pytanie zawarte w tytule: Zależy to od tego, o jakim typie komputera Mac mówimy. Rady i uzasadnienia podane do tej pory w tym pytaniu lub w komentarzach nie są ogólnie prawdziwe i mogą być dość niebezpieczne! Za dużo zaufania i wiary tkwi w przekonaniu, że sprzęt Apple jest po prostu najlepszy.

Po prostu nie jest prawdą, że Apple projektuje teraz lub projektowało w przeszłości wszystkie swoje systemy, aby naprawdę nie zaszkodzić sobie przez przegrzanie. Chociaż prawdą jest, że tak się nie powinno stać , prawdą jest również to, że tak się dzieje . I zrobił:

Najlepszym tego przykładem są komputery MacBook Pro, szczególnie te z lat 2010-2012. Podczas gdy procesor Intel, który jest yesprzez długi czas obciążany przede wszystkim na wszystkie wątki, dusi się, całkiem dobrze poradzi sobie z wysokimi temperaturami, a nawet system operacyjny uruchomi się i uruchomi jądro_zadanie, aby nie zrobić nic użytecznego oprócz pomocy w schłodzeniu maszyny, dyskretne chip na tej samej rurze cieplnej jest tam wrażliwym odpowiednikiem.

yesNiepotrzebne obciążanie tych systemów, jak w przypadku , przyspiesza awarię układu graficznego RadeonGate. Istnieje wiele przykładów pytań do najbardziej dotkniętego skutkiem 2011 8,2 na tej samej stronie internetowej. Ta awaria procesora graficznego jest problemem termicznym. Istnieją nawet wskazówki, jak zabić maszynę , po prostu uruchamiając ciężkie renderowanie 3D lub testy porównawcze przez pewien czas. Systemy te były reklamowane, ale nie nadawały się np. Do renderowania lub grania. Pozwy zbiorowe (tylko zagrożone) i Programy przedłużania napraw mówią same za siebie.

LаngLаngС
źródło
1
Posiadam MacBooka na początku 2015 r. Z wyświetlaczem Retina, a nie MacBook 2011 dla informacji. Ładne wideo.
Ta odpowiedź jest zasadniczo niepoprawna. yesw żadnym wypadku nie wchodzi w interakcje z GPU. Źródło dla yestylko nazywa najbardziej podstawowych bibliotek; żadna z nich nie jest bibliotekami matematycznymi (wymagana minimalna ilość dostępu do GPU). Po drugie, wideo, które podłączyłeś, w żaden sposób yesnie prowadzi do awarii GPU. Łącza Rossmana zawiodły na GPU ze słabą produkcją.
Allan
Nie jest to zasadniczo niepoprawne na podanych urządzeniach. Moja odpowiedź dotyczy rozróżnienia urządzeń. I chodzi o słabą produkcję i z natury zły projekt. yesstresuje procesor. Zestresowany procesor nagrzewa się. Następnie temperatura radiatora jest podwyższana i ten sam radiator musi chłodzić wrażliwe układy GPU. Ten radiator / konstrukcja termiczna nie zdarza się regularnie w przypadku większości 8,2 MBP.
LаngLаngС
@LangLangC - Ten projekt radiatora / termiki zawodzi. To logiczny błąd. Nie ma dowodów na to, że ciepły (e) procesor utrudnia właściwości rozpraszania energii przez radiator, powodując awarię procesora graficznego i dostarczasz dowody na poparcie roszczenia. Łączone wideo (wszystkie 17 minut) nie wspomina o wyższych temperaturach procesora ani o obciążaniu procesora.
Allan
Dowodem jest odsetek awarii w tych jednostkach. Czy spojrzałeś na te radiatory? To prosta fizyka.
LаngLаngС