Чому не рекомендується «жорстоко» вимикати комп’ютер (вимикач живлення)? [дублікат]


13

Зараз загальновідомо, що не слід вимикати комп’ютер за допомогою свого вимикача живлення. Але чому саме так? Це міф, який застряг із минулих архітектур?

Це виключно запобігання корупції даних, що записуються під час вимкнення (бонус: як це може бути пошкоджено?)? Я впевнений, що поради щодо читання жорстких дисків більше не збиваються на диску при відключенні живлення (або я б уже не вийшов із жорстких дисків).

Точніше, що живлення на комп'ютері за допомогою перемикача живлення робить його швидшим зносом або навіть будь-яким чином пошкоджується, і чому (лише обладнання)?


2
Для споживчих пристроїв насправді навпаки: за допомогою MS-DOS ви могли просто витягнути вилку; коли Windows перейняла вас, ви повинні були навчитися правильно вимикатись.

SSD можуть бути проблемою, схожою на жорсткі диски. Вони пишуть, стираючи дані великими блоками та переписуючи нові дані, тож якщо ця операція не буде завершена для блоку, то сталося б пошкодження даних. O / S може бути досить розумним, щоб відновитись після цього, але це не «приємно», і зрештою у вас може виникнути помилка, яку не можна усунути.
Spehro Pefhany

3
Дозвольте зазначити, що потенційні побічні ефекти "витягування штепсельної вилки", хоча вони технічно правильні, як правило, сильно перекриті. Я "жорстоко" безліч разів вимикав комп’ютер. У мене ніколи не було пошкоджених файлів або апаратних проблем. Навіть не один раз. Більше 15 років.
Томас Боніні

5
@AndreasBonini "У мене ніколи не було пошкоджених файлів або апаратних проблем". Щоб бути педантом, у вас ніколи не було пошкоджених файлів, які ви помітили або які мали великий вплив (наприклад, ви впевнені, що не постійно були пошкоджені файли журналу або тимчасові файли?), Або це не могло бути відремонтовано, коли система завантажилася (ті "система не була належним чином вимкнена, перевірка помилок ...") або апаратне забезпечення, яке повністю перестало функціонувати (наприклад, багато апаратного забезпечення, і особливо сховища, має вбудовані механізми виявлення та обробка пошкоджених деталей).
Джошуа Тейлор

1
Насправді, для сучасного комп’ютера я б підсумував це так: якщо припустити, що ви зберегли всі свої файли, відмова від живлення, швидше за все, прийнятна в більшості випадків, хоча це може трохи скоротити життя вашого джерела живлення. Вимкнути комп’ютер все ще ніколи не потрібно, коли він скаже вам цього не робити. Оновлення Windows, наприклад, або миготливий BIOS. Переривання цих процесів може залишити вашу ОС або навіть обладнання непрацездатним. Це, мабуть, найбільший ризик, який ви можете взяти, цілеспрямовано перериваючи основні оновлення.
фірфокс

Відповіді:


18

Це суто програмна річ.

Коли ви пишете на диск, він не переходить безпосередньо на диск, а замість цього переходить у кеш, а потім в якийсь пізній момент цей кеш буде скопійований на власне диск. Або коли кеш-пам'ять заповнена і в ній потрібна додаткова кімната, або просто тоді, коли комп'ютер не робить нічого іншого важливого, або це спеціально прописано.

Однією з останніх операцій під час відключення є передача кешу на диск.

Якщо ви просто вимкнете, дані в цьому кеші втрачаються. Як результат, ваші дані можуть бути пошкоджені.

Ще одна важлива річ, яка відбувається під час відключення, - це те, що всі запущені процеси отримують інструкцію вийти, після чого закрийте будь-які відкриті файли та очистіть себе.


3
Можливо, є й деякі апаратні проблеми. Якщо живлення щойно перерветься, голова для читання / запису може «зануритися» та подряпати поверхню диска. Крім того, якщо комп'ютер переміщений або підданий удару, набіжна головка може пошкодити поверхню. При правильному відключенні живлення з іншого боку, голова припаркована там, де вона ні може пошкодити, ні пошкодитися.
Баард Копперуд

6
@BaardKopperud Можливо, з 40-річним диском, але не сучасним. "Парковка" дискових головок більше не потрібна.
Majenko

2
@Majenko добре, 40 років - це трохи завищення ... деякі диски та компакт-диски 1990-х років були схильні до краху, якщо живлення також було відключено, можливо, через вібрації / демпфірування - я відчував це з 13 ГБ накопичувач, і це було не дуже те, що я бачив, дивлячись на диски згодом. Крім того, у мене була подібна проблема, коли аудіоплеєр CD знищував компакт-диск. Хоча я не мав таких проблем з того часу, 20-річна техніка не така вже й рідкість, наприклад, наприклад, як сервер чи академія, тому я б погодився з Бардом на цьому; це не повинно бути суто програмним забезпеченням.

8
@Majenko Більшість людей.
няня

2
Повернувшись, коли керували приводами крокових двигунів, слід (в ідеалі) припаркувати жорсткий диск (розмістивши голівки над циліндром, що не записується), перш ніж вимкнутись (з фізичним вимикачем живлення). Програмне забезпечення парку також очистить кеші запису. Сервоприводи усунули цю парковку, оскільки вони додали механізм втягування при втраті живлення, тому ви зробили паузу за кілька секунд до вимкнення живлення. Головки підтягнуться до стояночного циліндра до того, як повітряна подушка дозволить головкам осісти на поверхню. Це були роки після цього, коли ми насправді отримали "м'які" кнопки відключення живлення. Історично це завжди було важким відключенням енергії.
Брайан Ноблеуч

5

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

При наступному завантаженні прапор перевіряється. Коли система "чиста", система завантажується, коли "брудна" файлова система сканується на предмет розумності. Сканування файлової системи може зайняти багато часу, і це майже все, чому ви не хочете робити сильне відключення живлення. Справжня проблема виникає, коли сканування файлової системи видає непоправні помилки, це означає, що ви втратили / пошкодили дані. Сучасні файлові системи використовують техніку під назвою "поездки", щоб мінімізувати ймовірність невідправних помилок.

На мою думку, апаратне забезпечення не могло менше піклуватися про потужне відключення живлення.


3

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


2

Це насправді як програмне забезпечення, так і апаратне забезпечення.

Як було сказано раніше в інших відповідях, нинішні архітектури використовують безліч механізмів кешування, щоб прискорити процеси. При втраті електроенергії ви втрачаєте вміст, який не був записаний у енергонезалежну пам'ять, навіть якщо ви думали, що записали його у файл. Це втрата даних. Це також може призвести до пошкодження даних, оскільки деякі файлові системи не записують на диск у тому ж порядку, як це роблять вищезгадані програми , щоб поліпшити швидкість вводу / виводу. Я чув, як деякі люди, які вимикають записи, що не діють замовлення, пише в ext4, щоб деякі механізми запобігання корупційним файлам все ще працювали, тоді як розробники ext4 кажуть, що така програма повинна використовувати fsync для забезпечення поведінки файлової системи .

Також є проблеми з обладнанням. Брутальне вимкнення живлення може призвести до перенапруги або перенапруги, в основному через індуктивну поведінку деяких електричних компонентів, в основному двигунів. Тим не менш, добре спроектована металовироби повинні бути в змозі запобігти наступним пошкодженням. Це трохи дорожче, але, якщо ви купуєте комп’ютери з однорічною гарантією (навіть необов’язковою), або, щонайменше, обробляєте прибутки клієнтів, виробнику дешевше додати прохідний діод, ніж обробляти прибутки клієнтів. Тому мене тут не турбує, окрім дуже дешевих джерел живлення.

Варто зазначити, що сьогоднішні причини уникнення жорстокого відключення відрізняються від причин 30 років тому. 30 років тому файлові системи були дуже чутливі до відмов живлення, і ви змогли пошкодити саму файлову систему. Сьогодні ви можете пошкодити файли, але теоретично не всю файлову систему. Практично, якщо ви хочете вищого рівня, найвищого рівня продуктивності, ви перейдете на SSD. Твердотільні накопичувачі використовують керовану спалах, як правило, багаторівневі NAND спалахи (це означає осередки подвійного рівня), а інколи - триклітинні комірки. За допомогою цих технологій при втраті енергії під час запису ви можете пошкодити написану сторінку, але також одну або дві інші сторінки в тому ж блоці. На рівні файлової системи модифікація одного файлу може пошкодити інший файл або навіть дані файлової системи. Через вирівнювання зносу, збирання сміття, та інших механізмів коректного та переміщення, запис може траплятися навіть тоді, коли файлова система не вимагає жодної активності з SSD (це називається фоновою операцією), а пошкодження з точки зору файлової системи непередбачувані. Щоб уникнути подібних пошкоджень, деякі виробники SSD додають конденсатори до свого SSD, щоб дозволити припинити будь-яку поточну операцію на спалах, коли виявлено вимкнення живлення (для цього потрібно приблизно 10 мс живлення). SD-карти та USB-флешки мають однакові обмеження, але не можуть мати такі конденсатори. деякі виробники SSD додають конденсатори до свого SSD, щоб дозволити припинити будь-яку триваючу операцію на спалах, коли виявлено втрату живлення (для цього потрібно приблизно 10 мс живлення). SD-карти та USB-флешки мають однакові обмеження, але не можуть мати такі конденсатори. деякі виробники SSD додають конденсатори до свого SSD, щоб дозволити припинити будь-яку триваючу операцію на спалах, коли виявлено втрату живлення (для цього потрібно приблизно 10 мс живлення). SD-карти та USB-флешки мають однакові обмеження, але не можуть мати такі конденсатори.

Коротше кажучи, добре сконструйоване обладнання - це загалом доказ втрат електроенергії, але дорожче. Програмне забезпечення є більшою частиною доказу втрат енергії, але іноді припущення можуть бути порушені еволюцією іншого програмного забезпечення. Будь-яка спроба зробити дешевший дизайн або мініатюризувати дизайн може знизити можливість зробити конструкцію доказовою втратою потужності. Також важко знати, чи завжди ваш комп’ютер буде протистояти жорстоким втратам електроенергії.


Чому у флешках не може бути таких конденсаторів? Вартість?
Відновіть Моніку - ζ--

Ця функція вимагає підтримувати джерело живлення протягом 10 мс як для мікросхем NAND, так і для внутрішнього контролера. Більш висока ємність заряду вимагає більшого фізичного простору. Це не входить у SD-карту, це точно не входить у карту microSD. На флеш-накопичувачах USB це залежить від фактичної форми флешки.
Яцен

2

Електричні вимикачі ставлять перехідні елементи живлення. (У перехідних процесах надзвичайно велика напруга, надзвичайно вузька ширина. Насправді вони визначаються з моїх чотирьох років навчання в коледжі з електроніки як нескінченна напруга нескінченно вузької ширини.) Якщо фільтрації недостатньо, ці шипи можуть пошкодити електроніку. Механічні вимикачі також схильні до дзвону. Дзвінок - це коливання на лінії електропередачі, що може спричинити подібні проблеми.

Хоча багато з перерахованих вище відповідей є правильними щодо програмного забезпечення, також слід враховувати електронне обладнання.


4
Вимикач живлення на сучасних пристроях для ПК безпосередньо не перемикає живлення, він просто керує живленням. "Примусове вимкнення живлення" (утримуючи перемикач живлення досить довго) не повинно відрізнятися від вимкнення живлення процесора, щодо перехідних процесів тощо. І, правильно розроблені сучасні запаси, не повинні створювати небезпечні перехідні постійного струму, навіть якщо ви витягуєте штепсельну вилку.
greggo

@greggo Правильно. Що стосується сучасних джерел живлення (стандарт ATX-24), то витягування штепсельної вилки точно так само, як материнська плата комп'ютера, що відключає живлення.
AStopher

Я думаю, що слід уточнити між тумблером на самому PS та перемикачем очікування на передній частині ПК. Так, перемикач у режимі очікування не впливає на живлення безпосередньо, але перемикач - це те саме, що затискає шнур живлення (можливо, з кращою апаратною фільтрацією в механічних частинах контактів / пружин.) Дякую, Грегго, що вказав на цю відмінність !
Річард Хоуз

0

Це не лише комп’ютери! Відключення USB-пристрою, такого як флешка, не виконуючи послідовність "Безпечне видалення", може мати такий же ефект, як і на деяких ПК, тобто частина запису послідовності може не завершитися, а вміст спалаху може бути пошкоджений.


USB-пристрій може (при звичайному використанні і не отримує додаткового живлення від іншого місця, ніж порт даних) НЕ пошкодитися, витягнувши його з системи (його порт призначений для "гарячого підключення", але ви можете втратити дані, якщо робити через те, що кеші не записуються на диск.
LvB

0

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

Раптовий сплеск електроенергії, який може статися при потужному відключенні живлення (подумайте, «спайк»), у рідкісних випадках може перевищити межі фільтру / напруги зриву напруги. Якщо це відбувається всередині CMOS або іншої пам’яті, це може назавжди пошкодити «комірку» або пошкодити дані на «комірці». Це в наші дні рідкісна річ, і більшість систем мають протидії цьому (що може вийти з ладу).

Ця ситуація особливо актуальна, якщо використовуються двигуни (наприклад, для дисковода). Оскільки віджимання іноді може викликати сплеск на одній із його ліній (+ 12, + 5, -5,0). Це не обов'язково повинні бути лінії електропередач самого двигуна (через «привид»).

Сигнали нижче 5 вольт рідко роблять це, оскільки більшість ІС призначені для роботи з 5-вольтовими сигналами, хоча є процесори, які використовують 3,3 В як його макс. Напруга, найчастіше там все-таки екрановані так само, як 5 В.

@samuel, Так, я. але робоча напруга вказує на те, який індуктивний сплеск ви можете «очікувати» (або ізолятори / захист для нього, або його кількість)


2
рекомендуємо використовувати "." клавіша на клавіатурі, це так мало використовувати, і ваш пост настільки веселий без цього
peterh - Відновіть Моніку

1
Робочі напруги не мають значення, ви говорите про індуктивні сплески, сильний струм викликає занепокоєння.
Самуїл

У сучасних комп’ютерах неможливо пошкодити електроніку від "витягування штекера".
AStopher

@cybermonkey Що ви розумієте під сучасним? Моя невістка вбила або псу, або мобо, натиснувши перемикач на електрощитку. Цей комп’ютер був побудований у 2005 році.
287352

@cybermonkey Боюся, що це просто неправда, ви можете, і це трапляється. його не так часто, як "у старі дні", але це пов'язано з кращим дизайном та гарантіями. вони не усувають проблему, проте є фактори навколишнього середовища, а також неякісне (дешеве) обладнання, яке викликає ці проблеми. або коли система розтягнута до меж, ці проблеми виникають. У центрах обробки даних та операторах серверів добре відомо, що ці речі мають значення. тільки для недостатньо використовуваного "споживчого" обладнання я б назвав "безпечним" просто відключити штепсельну вилку. І це з попередженням про те, що пошкодження все ж можуть статися!
LvB
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.