Perché non è consigliabile spegnere un computer "brutalmente" (interruttore di alimentazione)? [duplicare]


13

Ora è a conoscenza generale che non si dovrebbe spegnere un computer usando il suo interruttore di alimentazione. Ma perché è esattamente? È un mito bloccato dalle architetture passate?

È solo per prevenire la corruzione dei dati che vengono scritti al momento della chiusura (bonus: come può essere corrotto esattamente?)? Sono abbastanza sicuro che i suggerimenti per la lettura dei dischi rigidi non si blocchino più sul disco quando sono spenti (o ormai non sarei più fuori dagli HDD).

Più precisamente, il ciclo di alimentazione di un computer con il suo interruttore di alimentazione lo fa consumare più rapidamente o addirittura viene danneggiato in qualche modo, e perché (solo hardware)?


2
Per i dispositivi consumer, in realtà è il contrario: con MS-DOS potresti semplicemente staccare la spina; quando Windows è subentrato, hai dovuto imparare a chiudere correttamente.

Gli SSD potrebbero essere un problema simile agli HDD. Scrivono cancellando i dati in blocchi di grandi dimensioni e riscrivendo i nuovi dati, quindi se tale operazione non fosse completata per il blocco ci sarebbe il danneggiamento dei dati. L'O / S potrebbe essere abbastanza intelligente da riprendersi, ma non è "bello" e alla fine potresti avere un errore irrecuperabile.
Spehro Pefhany,

3
Vorrei sottolineare che i potenziali effetti collaterali di "staccare la spina", sebbene tecnicamente corretti, sono in genere fortemente esagerati. Ho "brutalmente" spento il mio computer innumerevoli volte. Non ho mai avuto file corrotti o problemi hardware. Neanche una volta. Tra oltre 15 anni.
Thomas Bonini,

5
@AndreasBonini "Non ho mai avuto file corrotti o problemi hardware." Solo per essere un pedante, non hai mai avuto file corrotti che hai notato o che hanno avuto un grande impatto (ad esempio, sei sicuro che nessun file di registro o file temporaneo scritto continuamente sia stato danneggiato?) O che non potrebbe essere riparato all'avvio del sistema (quei messaggi "sistema non era correttamente spento, verifica errori ...") o l'hardware che ha completamente smesso di funzionare (ad esempio, un sacco di hardware, e in particolare l'archiviazione, ha incorporato meccanismi per rilevare e aggirare le parti danneggiate).
Joshua Taylor,

1
In realtà, per un computer moderno, lo riassumo in questo modo: supponendo che tu abbia salvato tutti i tuoi file, nella maggior parte dei casi è molto probabile che si verifichi un'interruzione dell'alimentazione, sebbene possa ridurre un po 'la vita del tuo alimentatore. Non è mai una buona idea scollegare il computer quando ti dice di non farlo. Aggiornamenti di Windows, ad esempio, o flashing del BIOS. L'interruzione di questi processi potrebbe rendere inutilizzabile il sistema operativo o l'hardware. Questo è probabilmente il rischio più grande che puoi correre, interrompendo intenzionalmente gli aggiornamenti di base.
phyrfox,

Risposte:


18

È puramente una cosa software.

Quando si scrive su disco, non si passa direttamente al disco, ma si inserisce in una cache, quindi in un secondo momento la cache viene copiata sul disco effettivo. O quando la cache è piena e c'è bisogno di spazio aggiuntivo, o solo quando il computer non sta facendo nulla di importante, o è specificamente indicato.

Una delle ultime operazioni durante l'arresto è svuotare la cache su disco.

Se ti spegni, i dati in quella cache andranno persi. Di conseguenza, i dati potrebbero essere danneggiati.

Un'altra cosa importante che accade durante l'arresto è che tutti i processi in esecuzione vengono istruiti ad uscire, a quel punto chiudi tutti i file aperti e si pulisce.


3
Potrebbero esserci anche alcuni problemi hardware. Se si interrompe l'alimentazione, la testina di lettura / scrittura potrebbe "immergere" e graffiare la superficie del disco. Inoltre, se il computer viene spostato o sottoposto a urti, una testa ribalta può danneggiare la superficie. Se spento correttamente, d'altra parte, la testa è parcheggiata dove non può né danneggiare né essere danneggiato.
Baard Kopperud,

6
@BaardKopperud Forse con un disco di 40 anni, ma non moderno. Il "parcheggio" delle testine del disco non è più necessario.
Majenko,

2
@Majenko bene, 40 anni sono un po 'esagerati ... alcuni particolari dischi e CD-ROM degli anni '90 erano inclini a un incidente se anche l'alimentazione fosse stata interrotta, probabilmente a causa di vibrazioni / problemi di smorzamento - l'ho sperimentato io stesso con 13 GB drive, e non è stato abbastanza quello che ho visto guardando i dischi in seguito. Inoltre, ho avuto un problema simile con il lettore audio CD che ha distrutto un CD. Anche se da allora non ho più avuto problemi, le apparecchiature di 20 anni non sono così rare, ad esempio in ambienti server o accademici, quindi concordo con Baard su questo; essa non deve essere una pura cosa software.

8
@Majenko Molte persone.
tata

2
All'epoca in cui governavano i motori passo-passo, uno (idealmente) parcheggiava il disco rigido (posizionando le testine su un cilindro non scrivibile) prima di spegnersi (con interruttore di alimentazione fisico). Il software Park eliminerebbe anche le cache di scrittura. I servoazionamenti hanno eliminato il bisogno di parcheggio in quanto hanno aggiunto un meccanismo di ritiro in caso di interruzione dell'alimentazione, quindi è stato messo in pausa alcuni secondi prima dello spegnimento. Le teste si ritireranno nel cilindro di parcheggio prima che il cuscino d'aria permetta alle teste di stabilizzarsi sulla superficie. Sono passati anni da quando in realtà abbiamo ottenuto un pulsante "soft" di spegnimento. Storicamente è stato sempre un duro spegnimento.
Brian Knoblauch,

5

Durante l'avvio il filesystem del tuo computer sarà contrassegnato come 'sporco'. Durante l'arresto tutti i buffer vengono eliminati su disco e i dati su disco sono identici a quelli che il sistema operativo ritiene debbano avere. Il disco viene successivamente contrassegnato come "pulito".

Al prossimo avvio la bandiera è selezionata. Quando è "pulito", il sistema si avvia, quando "sporco" il file system viene scansionato per la sanità mentale. La scansione del filesystem può richiedere molto tempo ed è per questo che non dovresti desiderare di spegnere completamente. Il vero problema si presenta quando la scansione del filesystem genera errori irrecuperabili, che significa che hai perso / danneggiato i dati. I filesystem moderni usano una tecnica chiamata "journaling", per ridurre al minimo la possibilità di errori irrecuperabili.

A mio parere, l'hardware non potrebbe davvero fregare di meno di un duro spegnimento.


3

Un computer moderno ha molti livelli di memorizzazione nella cache dei dati. Questo perché la maggior parte dei dispositivi di archiviazione è più veloce con pacchetti più grandi per la lettura e la scrittura. Il sistema operativo manterrà le scritture nella RAM per un po '. Quindi vengono inviati a forse un disco rigido. Qui sono in deposito temporaneo, in attesa che le testine del disco rigido arrivino al settore giusto. Quindi sono scritti. I dati possono andare persi lungo tutta quella catena, se un sistema non viene spento in modo pulito.


2

Questo è in realtà sia un problema software che hardware.

Come affermato in precedenza nelle altre risposte, le architetture attuali utilizzano molti meccanismi di memorizzazione nella cache per accelerare i processi. In caso di perdita di potenza, si perde il contenuto che non è stato scritto nella memoria non volatile, anche se si pensava di averlo scritto in un file. Questa è una perdita di dati. Ciò può anche portare alla corruzione dei dati, poiché alcuni filesystem non scrivono sul disco nello stesso ordine dei programmi precedenti , al fine di migliorare la velocità di I / O. Ho sentito parlare di alcune persone che disabilitano le scritture fuori ordine in ext4 per far funzionare ancora alcuni meccanismi di prevenzione della corruzione dei file software, mentre gli sviluppatori ext4 dicono che tale programma dovrebbe usare fsync per garantire il comportamento del filesystem .

Ci sono anche problemi hardware. Lo spegnimento brutale può portare a sovratensione o sovracorrente, principalmente a causa del comportamento induttivo di alcuni componenti elettrici, principalmente motori. Tuttavia, hardware ben progettato dovrebbe essere in grado di prevenire danni successivi. È un po 'più costoso, ma, se acquisti computer con una garanzia di un anno (anche opzionale) o, almeno, gestisci i resi dei clienti, è meno costoso per il produttore aggiungere un diodo flyback che gestire i resi dei clienti. Pertanto, non sono preoccupato qui, tranne che con alimentatori molto economici.

Vale la pena notare che le ragioni odierne per evitare l'arresto brutale differiscono da quella di 30 anni fa. 30 anni fa, i filesystem erano molto sensibili alle interruzioni di corrente e tu eri in grado di corrompere il filesystem stesso. Oggi, in teoria, potresti corrompere i file, ma non l'intero filesystem. In pratica, se desideri prestazioni di fascia alta e all'avanguardia, passerai a SSD. Le unità a stato solido utilizzano flash gestiti, di solito flash NAND a celle multilivello (questo significa celle a doppio livello), a volte celle a tre livelli. Con queste tecnologie, in caso di perdita di potenza durante la scrittura, è possibile danneggiare la pagina in fase di scrittura, ma anche una o due altre pagine nello stesso blocco. A livello di filesystem, una modifica di un file può corrompere un altro file o persino i dati del filesystem. A causa del livellamento dell'usura, raccolta dei rifiuti, e altri meccanismi di correzione e trasferimento, le scritture possono avvenire anche quando il filesystem non richiede alcuna attività dall'SSD (questo si chiama operazione in background), e quindi le corruzioni sono imprevedibili dal punto di vista del filesystem. Per evitare tali corruzioni, alcuni produttori di SSD aggiungono condensatori al loro SSD per consentire di terminare qualsiasi operazione in corso su flash quando viene rilevata la perdita di corrente (ciò richiede circa 10ms di alimentazione). Le schede SD e le unità flash USB hanno gli stessi vincoli, ma non possono avere tali condensatori. alcuni produttori di SSD aggiungono condensatori al loro SSD per consentire di terminare qualsiasi operazione in corso su flash quando viene rilevata la perdita di corrente (ciò richiede circa 10ms di alimentazione). Le schede SD e le unità flash USB hanno gli stessi vincoli, ma non possono avere tali condensatori. alcuni produttori di SSD aggiungono condensatori al loro SSD per consentire di terminare qualsiasi operazione in corso su flash quando viene rilevata la perdita di corrente (ciò richiede circa 10ms di alimentazione). Le schede SD e le unità flash USB hanno gli stessi vincoli, ma non possono avere tali condensatori.

Per farla breve, un hardware ben progettato è generalmente a prova di perdita di potenza, ma più costoso. Il software è per lo più a prova di perdita di potenza, ma a volte i presupposti possono essere interrotti dall'evoluzione di altri software. Qualsiasi tentativo di rendere il design più economico o di miniaturizzare il design può ridurre la capacità di rendere il design a prova di perdita di potenza. È anche difficile sapere se il tuo computer resisterà sempre alla brutale perdita di energia.


Perché le unità flash non possono avere tali condensatori? Costo?
Ripristina Monica - ζ--

Questa funzione richiede di mantenere l'alimentazione per 10ms sia per il chip NAND che per il controller interno. Una maggiore capacità di carica richiede maggiore spazio fisico. Questo non si adatta a una scheda SD, questo sicuramente non si adatta a una scheda microSD. Su unità flash USB, dipende dalla forma effettiva dell'unità flash.
Jacen,

2

Gli interruttori elettrici inseriscono i transitori nell'alimentazione. (I transitori hanno una tensione estremamente alta, una larghezza estremamente stretta. In effetti, sono definiti dai miei quattro anni di istruzione universitaria elettronica come tensione infinita di larghezza infinitamente stretta.) Se non c'è abbastanza filtraggio, questi picchi possono danneggiare l'elettronica. Anche gli interruttori meccanici sono soggetti a squilli. La suoneria è un'oscillazione sulla linea di alimentazione che può causare problemi simili.

Sebbene molte delle risposte sopra riportate siano corrette per quanto riguarda il software, è necessario considerare anche l'hardware elettronico.


4
L'interruttore di alimentazione sui moderni alimentatori per PC non commuta direttamente l'alimentazione, ma controlla solo l'alimentazione. Lo "spegnimento forzato" (tenendo premuto l'interruttore di accensione abbastanza a lungo) non dovrebbe essere diverso dallo spegnimento della CPU, per quanto riguarda i transitori e così via. Inoltre, i moderni materiali di consumo progettati correttamente non dovrebbero generare pericolosi transitori CC anche se si stacca la spina.
Greggo,

@greggo Correct. In termini di alimentatori moderni (standard ATX-24), staccare la spina è lo stesso della scheda madre del computer che spegne l'alimentatore.
Dopo il

Immagino che ci debba essere un chiarimento tra l'interruttore a levetta sul PS stesso e l'interruttore di standby sulla parte anteriore del PC. Sì, l'interruttore di standby non influisce direttamente sull'alimentazione ma l'interruttore a levetta è lo stesso che strappare il cavo di alimentazione, (probabilmente con un migliore filtro hardware nelle parti meccaniche dei contatti / molle.) Grazie, Greggo, per aver sottolineato questa distinzione !
Richard Howes,

0

Non sono solo i computer! Scollegare un dispositivo USB come un'unità flash senza eseguire la sequenza "Rimozione sicura" può avere lo stesso effetto di alcuni PC, ovvero la parte di scrittura della sequenza potrebbe non essere completata e il contenuto del flash potrebbe essere danneggiato.


un dispositivo USB non può essere danneggiato (quando viene utilizzato normalmente e non riceve alimentazione aggiuntiva da un luogo diverso dalla porta dati) estraendolo dal sistema (è una porta progettata per essere "hot plug", tuttavia è possibile perdere dati se si fare perché le cache non vengono scritte sul disco.
LvB

0

Una risposta che manca, ma è ancora attuale: un computer in caso di spegnimento forzato (come nel "cavo di alimentazione rimosso o simile") può DANNEGGIARE l'elettronica. (questo non si applica all'interruttore di alimentazione in quanto esegue un ciclo di alimentazione "sicuro" che non danneggia l'elettronica, ma non è così buono per uno stato HDD stabile, e può causare la perdita di dati come già indicato sopra).

L'improvviso aumento di potenza che può verificarsi quando l'alimentazione viene rimossa forzatamente (si pensi a "picco") in rari casi può superare i limiti di filtro / tensione di rottura dei circuiti integrati. Se ciò accade all'interno di CMOS o altra memoria, può danneggiare in modo permanente la "cella" o corrompere i dati sulla "cella". In questi giorni è una cosa rara e la maggior parte dei sistemi ha delle contromisure (che possono fallire).

Questa situazione è particolarmente vera se si utilizzano motori (come per un'unità disco). Poiché lo spin-down a volte può causare un picco su una delle sue linee (+ 12, + 5, -5,0). Non devono essere le linee elettriche del motore stesso (a causa del "ghosting").

I segnali inferiori a 5 volt raramente lo fanno poiché la maggior parte dei circuiti integrati sono progettati per funzionare con segnali a 5 volt, anche se ci sono processori che utilizzano 3,3 V poiché la sua tensione massima il più delle volte è ancora schermata come i 5 V.

@samuel, Sì, lo sono. ma la tensione operativa indica quale tipo di picco induttivo ci si può "aspettare" (o gli isolatori / protezioni per esso, o la quantità di esso)


2
consiglia di utilizzare "." tasto sulla tastiera è così poco da usare e il tuo post è così esilarante senza di esso
Peter - Reinstate Monica

1
Le tensioni operative non contano, stai parlando di picchi induttivi, la corrente elevata è la preoccupazione lì.
Samuel,

Nei computer moderni non è possibile danneggiare l'elettronica "staccando la spina".
Dopo il

@cybermonkey Cosa intendi per moderno? Mia cognata ha ucciso il psu o il mobo premendo l'interruttore su una presa multipla. Questo computer è stato costruito nel 2005.
287352

@cybermonkey Temo che semplicemente non sia vero, è possibile e succede. non è così comune come "ai vecchi tempi", ma è dovuto a una migliore progettazione e garanzie. questi però non rimuovono il problema e ci sono fattori ambientali e hardware (economico) scadente che causa questi problemi. o quando un sistema viene esteso al limite, si verificano questi problemi. È ben noto nei data center e dagli operatori del server che queste cose contano. solo per l'hardware "consumer" sottoutilizzato chiamerei "sicuro" solo per scollegare. E questo con l'avvertimento che possono ancora verificarsi danni!
Liv
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.