Warum zeigt Windows bei einigen USB-Speichergeräten keine Auswurfoption an?

48

In Windows können Sie ein USB-Speichergerät normalerweise "auswerfen", bevor Sie es physisch ausstecken, um eine Beschädigung der Daten zu vermeiden.

Bei einigen Geräten bietet Windows jedoch keine Auswurfoption an. Ich habe dies am häufigsten mit einigen Smartphones gesehen.

Warum ist das?

Michael
quelle
3
Ich bin nicht sicher, ob dies ein Duplikat ist. Dies ist eine umfassendere Frage, die eine Vielzahl von Geräten abdeckt, die an einen Computer angeschlossen werden können, und nicht nur eine bestimmte externe Festplatte.
bwDraco

Antworten:

69

Wahrscheinlich, weil die Methode zum Übertragen von Dateien auf Telefone ( MTP statt USB-Massenspeicher ) die Daten und die Dateisystemintegrität des Geräts, das die Daten empfängt, in Frage stellt, was bei Mobiltelefonen ebenfalls als intelligent und selbstständig gilt -angetrieben oder mit Batterie-Backup.

USB-Massenspeichergeräte sind normalerweise dumme Speichersticks oder Festplatten, MTP- Geräte wie Telefone, Kameras und ähnliche sind im Allgemeinen vernünftigerweise intelligente Geräte, die ihre Speicherung persönlich handhaben. Daher kann die Dateiübertragung in einer Peer-to-Peer-Ideologie und nicht in einer Smart-Host-Dumb-Client-Ideologie erfolgen. Sobald die Daten an das Telefon "gesendet" wurden, liegt es am Betriebssystem und den Dateisystemmethoden des Telefons, die korrekte Speicherung der Datei sicherzustellen.

Wenn die Dateiübertragung unterbrochen und somit teilweise übertragen wird, kann das Telefon entscheiden, ob der zugewiesene Speicherplatz freigegeben wird oder ob im Einzelfall angezeigt wird, was übertragen wurde. Ich vermute, dass die meisten unterbrochenen Übertragungen einfach unvollständige Daten löschen und allfällige zugewiesene Blöcke freigeben. Die Integrität des Dateisystems wird vom Telefon aktiv verwaltet.

Da eine solche Übertragung entweder stattfindet oder nicht und das Ausführen eines Software-Auswurfs nicht erforderlich ist, besteht der einzige Grund dafür darin, dass die Person, die den Computer verwendet, das Gefühl bekommt, dass ich fertig bin. USB benötigt es aus Hardware-Sicht sicherlich nicht und ist mit Hotplug-Geräten sehr zufrieden.

Von der MTP-Wikipedia-Seite:

Ein Hauptgrund für die Verwendung von MTP anstelle von beispielsweise der USB-Massenspeichergeräteklasse (MSC) besteht darin, dass letztere eher mit der Granularität eines Massenspeichergeräteblocks (in der Praxis eines FAT-Blocks) als mit der von MSC betrieben wird logische Dateiebene. Mit anderen Worten, die USB-Massenspeicherklasse wurde entwickelt, um einem Hostcomputer einen undifferenzierten Zugriff auf Massenspeicher wie Compact Flash zu ermöglichen, anstatt auf ein Dateisystem, das sicher mit dem Zielgerät geteilt werden kann(außer für bestimmte Dateien, auf die der Host möglicherweise zugreift). In der Praxis übernimmt ein USB-Hostcomputer, der eine MSC-Partition gemountet hat, die absolute Kontrolle über den Speicher, der dann vom Gerät möglicherweise nicht sicher geändert werden kann, ohne dass das Risiko einer Datenbeschädigung besteht, bis der Hostcomputer die Verbindung getrennt hat. Da der Hostcomputer die vollständige Kontrolle über das angeschlossene Speichergerät hat, besteht außerdem die Gefahr, dass der Hostcomputer das Dateisystem beschädigt, es in ein Dateisystem umformatiert, das vom USB-Gerät nicht unterstützt wird , oder es anderweitig auf diese Weise modifiziert dass das USB-Gerät es nicht vollständig verstehen kann.

Mokubai
quelle
3
USB-Festplatten haben diese Option nicht und sind Massenspeicher, nicht MTP.
Johannes Di
16
@ Alex.S Ich habe mehrere USB-Festplatten verwendet und alle hatten eine Auswurffunktion. In den Fällen, in denen dies möglicherweise nicht der Fall ist, erwarte ich, dass der USB-Controller für das Laufwerk es als "feste" Festplatte und nicht als Wechseldatenträger anbietet. Entweder ist beabsichtigt, dass es niemals entfernt wird, während ein Betriebssystem aus irgendeinem Grund ausgeführt wird, oder Es war eine Fehlkonfiguration seitens des Herstellers. Die Frage bezog sich auf Telefone, daher antwortete ich aus dieser Perspektive, da mir ein bestimmter Grund bekannt war, dh, dass Dateien nicht auf dieselbe Weise übertragen werden.
Mokubai
2
Sehr informative Antwort, danke für deine Zeit @Mokubai. Ich habe dieses Problem meistens nur mit Smartphones gesehen. Dieses Problem trat jedoch einmal bei einem USB-Stick auf.
Michael
Und dies ist nur ein sekundärer Vorteil von MTP. Der Hauptvorteil besteht darin, dass das Dateisystem von beiden Geräten gleichzeitig verwendet werden kann. Ältere Telefone, die nur das USB-Massenspeicherprotokoll unterstützten, mussten das Dateisystem aushängen, bevor über USB darauf zugegriffen werden konnte.
Kasperd
1
Einige MP4-Player und Digitalkameras verwenden MTP, um eine Verbindung zum PC herzustellen. Dies ist kein neues Protokoll, wie manche vielleicht denken, da es in Android-Geräten und dergleichen vorkommt.
Ismael Miguel
18

Zusammenfassung

Dies hängt letztendlich davon ab, ob das Gerät MSC oder MTP / PTP verwendet. In der Regel verwenden dedizierte Speichergeräte wie Flash-Laufwerke und externe Festplatten MSC, während Smartphones und andere Geräte, die den Zugriff auf die Daten aufrechterhalten müssen, während sie an einen Computer angeschlossen sind oder die Kontrolle über die übertragenen Daten benötigen, MTP verwenden. Viele Kameras verwenden PTP, eine Teilmenge von MTP.

Wenn das Gerät MSC verwendet, müssen Sie es vom Computer auswerfen, bevor Sie es entfernen können. Wenn MTP oder PTP verwendet wird, ist kein Auswurf erforderlich.


Technische Details

Mit der Massenspeicherklasse (MSC) kann der Computer mit dem Laufwerk auf die gleiche Weise wie mit einer internen Festplatte oder SSD kommunizieren und ist damit schneller als andere Protokolle für die Datenübertragung. Dies ist, was dedizierte Speichergeräte wie USB-Flash-Laufwerke und externe Festplatten verwenden. Es erfordert jedoch Block-LevelZugriff auf das zugrunde liegende Speichermedium, und das bedeutet exklusiven Zugriff auf das Gerät. Infolgedessen ist MSC für intelligente Geräte nicht in Ordnung, da diese auf den Inhalt des Dateisystems zugreifen müssen, während der Computer es verwendet. Ein Smartphone muss sein Betriebssystem effektiv herunterfahren, bevor es Zugriff auf einen Computer auf Blockebene gewähren kann - eine umständliche Prozedur, die Sie daran hindert, Apps auszuführen oder das Gerät auf andere Weise zu verwenden, während es verbunden ist. Es liegt in der Verantwortung des Computers, sicherzustellen, dass die Daten vollständig übertragen wurden. Sie müssen dem Computer also mitteilen, dass Sie fertig sind, indem Sie sie auswerfen.

Das Media Transfer Protocol (MTP) , das die meisten intelligenten Geräte verwenden, umfasst die DateiebeneZugriff, und das Gerät, nicht der Host-Computer, ist für die Verwaltung der Daten verantwortlich. Smartphones verwenden MTP, weil sie auf die Daten zugreifen können müssen, während das Gerät an einen Computer angeschlossen ist. Mit MTP kann das Gerät auch steuern oder einschränken, welche Daten übertragen werden können. Einige (hauptsächlich ältere) digitale Medien / MP3-Player verwenden MTP, um den Kopierschutz (DRM) für übertragene Dateien zu erzwingen oder um sicherzustellen, dass die übertragenen Mediendateien mit dem Gerät kompatibel sind. Da MTP lediglich eine hierarchische Datei- / Ordnerstruktur darstellt, muss sich der Computer nicht um das Dateisystem oder das Speichern von Daten auf dem Gerät kümmern. In jedem Fall ist bei MTP kein expliziter Auswurfbefehl erforderlich. Sobald das Gerät dem System mitteilt, dass die Übertragung abgeschlossen ist (der Fortschrittsdialog wurde geschlossen), können Sie das Gerät entfernen, ohne es explizit auszuwerfen.

MTP ist eine Obermenge des Picture Transfer Protocol (PTP) , das ursprünglich für Kameras entwickelt wurde, die mit Computern kommunizieren. Viele Kameras verwenden weiterhin PTP, einige unterstützen jedoch MSC, und einige ermöglichen die Auswahl zwischen MSC und PTP. Darüber hinaus unterstützen einige Kameras das direkte Drucken über ein Protokoll namens PictBridge , für das PTP erforderlich ist. Wie bei MTP erfordert PTP keinen Auswurfbefehl. Ob eine Kamera MSC, PTP oder beides verwenden kann, hängt davon ab, wie die Kamera ihren Speicher verwaltet, während sie an einen Computer angeschlossen ist.

Wenn Sie die Speicherkarte aus einer Kamera entfernen und in einen SD-Kartensteckplatz oder einen anderen Medienleser Ihres Computers einlegen, handelt es sich um ein MSC-Gerät, das Sie nach dem Übertragen von Bildern auswerfen müssen.

bwDraco
quelle
7
Und lassen Sie sich nicht sagen, dass es keine Rolle spielt. Ich warnte meine Ex wochenlang davor, ihre USB-Sticks nicht mehr zu reißen. Immer noch nicht aufgehört, obwohl ich zwei Tage Arbeit an einer Tabelle verloren hatte (auch Backup! Gees!)
Lightness Races mit Monica
1
@LightnessRacesinOrbit stellen Sie dann sicher, dass das schnelle Entfernen für sie aktiviert ist - es verlangsamt die Fahrt, macht es jedoch so, dass sie den USB-Stick nicht auswerfen muss
Baldrickk
3
@Baldrickk Oh, sie ist schon lange weg ^ _ ^
Lightness Races mit Monica
6

Das Design hängt auch damit zusammen, wie Geräte mit Strom versorgt werden.

Wenn beide Geräte über eine eigene Energiequelle verfügen, z. B. der Computer und das Smartphone, ist ausreichend Platz vorhanden, um Übertragungsunterbrechungen oder andere Fehler ordnungsgemäß zu behandeln. Das Design basiert auf der ständig verfügbaren Leistung und ist ein stabiler Faktor, der es ermöglicht, den anderen Faktor (Kommunikation) fehlertolerant zu machen. Ohne sie sind diese Geräte und ihre Systeme in Ausnahmefällen, zum Beispiel wenn der Akku plötzlich aus dem Smartphone entfernt wird oder der PC zwangsweise ausgeschaltet wird, nicht fehlerresistenter als dumme USB-Laufwerke. ( chkdskJemand?) Diese fehlertoleranten Geräte benötigen nur genügend Zeit, um erwartete Probleme ordnungsgemäß zu lösen.

Geräte, die über ihren Host mit Strom versorgt werden, haben jedoch nur wenig Zeit, um auf eine Unterbrechung der Stromversorgung zu reagieren. Und das Hosten eines Dateisystems in einem solchen Gerät bedeutet nicht nur, dass Benutzeranforderungen bedient werden, sondern dass auch Lesevorgänge und Schreibvorgänge im Hintergrund möglich sind, die von Host-Hintergrundprozessen ausgeführt werden, die dem Benutzer unbekannt sind. Der Benutzer weiß nie, ob die Kommunikation gerade stattfindet. Es muss also eine explizite Möglichkeit bereitgestellt werden, um die Absicht des Herunterfahrens (und dies ist der Auswurfbefehl) zu signalisieren, bei dem der Host alle Operationen einstellen muss. Ein plötzliches Abschalten der Stromversorgung wird dann ohne Risiko abgewartet. Das "Eject" -Ereignis ist daher ein einfacher Weg, um die ordnungsgemäße Finalisierung zu starten, während wir uns weiterhin auf den kontinuierlichen Betrieb verlassen können. Und die Substanz unterscheidet sich jetzt nicht von dem oben genannten Fall: Macht wird gewährtbei allen notwendigen Handlungen. Wenn der Vorgang abgeschlossen ist, signalisiert der Host (da der Benutzer die Stromunterbrechung physisch steuert), dass es jetzt sicher ist, die Stromversorgung des Geräts plötzlich zu unterbrechen, ohne das Risiko einzugehen.

Wir sehen also, dass einer der wichtigsten Faktoren für das Design ist, ob das Gerät in der Lage ist, autonom zu arbeiten, um Zeit für die Behebung von Fehlern zu haben oder nicht. Ist dies nicht der Fall, muss eine vorherige explizite Finalisierung angefordert werden - mit dem Befehl Eject.

Miroxlav
quelle