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.