Vi siete mai chiesti perché, prima di “staccare” dal computer una chiavetta USB o qualsiasi altro dispositivo esterno, vi hanno insegnato ad usare la funzionalità “Rimozione sicura hardware” (o “Espelli”) presente nel sistema operativo onde evitare danni irreparabili? Se state cercando una risposta a ciò allora siete nell’articolo giusto: continuando a leggere scoprirete che, anche se per la maggiore è necessario farlo onde evitare seri danni al dispositivo stesso, in alcuni specifici casi è possibile anche scollegarlo e basta senza incappare in danni o perdite di dati.
I protocolli con cui il sistema operativo può riconoscere un dispositivo di archiviazione esterno sono principalmente 3: MTP, PTP e archiviazione di massa USB. Anche in base a questo può rivelarsi utile o inutile usare la rimozione sicura hardware (o la funzionalità “Espelli” di OS X e Linux).
MTP: non necessaria
MTP sta per Media Transfer Protocol, ed è il protocollo di comunicazione e trasferimento utilizzato nativamente in Windows ma, tramite librerie e/o software esterni, compatibile anche con Linux e OS X. In pratica il protocollo MTP è quello usato per trasferire file da e per smartphone e tablet, in particolare se dotati di Android.
Se si utilizza il protocollo MTP, Il dispositivo esterno è riconosciuto come dispositivo portatile e non come un disco associato al sistema, non dispone di lettera di unità in Windows ed è pertanto removibile fisicamente anche senza passare per l’espulsione/rimozione sicura.
PTP: non necessaria
Si tratta di un protocollo del tutto simile per funzionamento ad MTP ed è quello utilizzato dalle periferiche di acquisizione video (fotocamere e videocamere digitali) per comunicare con il sistema operativo e permettere lo scambio di dati. Anche in questo caso il dispositivo è riconosciuto come dispositivo portatile, quindi non come un disco associato al sistema, e può essere fisicamente rimosso senza passare per l’espulsione/rimozione sicura.
Archiviazione di massa USB: necessaria
La modalità archiviazione di massa USB è quella più utilizzata dai dispositivi flash (memory card, chiavette USB e via discorrendo) collegati al sistema operativo. Quest’ultimo li riconosce come veri e propri dischi fisici – ad esempio, in Windows viene associata una lettera di unità – e possono essere usati esattamente come fossero dischi, sia ai fini dell’archiviazione che ai fini dell’esecuzione di software.
Il discorso in questo caso è un po’ più complesso: se il dispositivo si collega al sistema usando questo protocollo allora deve essere espulso/sottoposto a rimozione sicura prima di essere fisicamente scollegato, principalmente perché le memorie flash sono particolarmente sensibili all’interruzione di corrente improvvisa (queste vengono alimentate dallo stesso computer, quando inserite) e possono rompersi.
Per quanto riguarda i dati, il discorso si può ricondurre invece ad una precisa tecnologia di scrittura dati, tale “write caching”: i sistemi operativi che utilizzano il write caching non scrivono i dati su disco in tempo reale, ma potrebbero conservarli in memoria e scriverli soltanto al termine di altre operazioni di I/O nonostante “apparentemente” i dati risultino scritti, il tutto al fine di aumentare le prestazioni.
OS X e Linux gestiscono le periferiche collegate usando l’archiviazione di massa USB con attivo il write caching, per cui scollegare fisicamente un dispositivo senza prima procedere a rimozione sicura, in tal caso, è sinonimo di rischio di perdita di dati.
Discorso leggermente differente per Windows poiché – per impostazione predefinita – il write caching è disattivato e i dati vengono scritti immediatamente, a scapito di un leggero calo di prestazioni. Ciò non significa comunque che un dispositivo possa essere “brutalmente” rimosso in quanto, come già detto, esiste comunque l’eventualità di danneggiare irrimediabilmente l’hardware a causa dell’interruzione improvvisa di alimentazione.