USB Massenspeicher Protokoll

Gast #1731446
Lesenswert?

Hallo,

ich habe da eine Frage zu USB Massenspeichern. Bei "kleinen" Speichern 
wie SD Karten, die weniger als 128GB haben, wird ja zum lesenden Zugriff 
das READ 10 Commando genutzt, was 28Bit LBA Adressen zulässt. Damit ist 
ja der Speicherbereich (bei 512Byte Sektorgröße) auf die oben genannten 
128GB beschränkt.
Wie werden nun größere Platten angesprochen? Ich gehe mal davon aus, 
dass hier nun der READ16 Befehl zum Einsatz kommt. Nur wie findet der 
USB Host heraus, wie er das Gerät ansprechen soll ?
Kenn sich jemand mit der Thematik aus und kann ein paar Sätze dazu 
schreiben oder hat einen Link zu einer Spezifikation wo das drin steht ?

Gruß
Stampede
Gast #1731531
Lesenswert?

Vermutlich erfragt er zunächst die Kapaziät des Speichers 
(read_capacity?).Und agiert dann dementsprechend, kannst du ja einfach 
mal ausprobieren, in dem du einen dementsprechend großen Speicher 
vortäuscht :)

Grüße
Gast #1732177
Lesenswert?

Das wäre eine Möglichkeit. Ich weiß, dass bei ATAPI auf jeden Fall READ 
CAPACITY 10 ausgeführt wird, dann wird da ein spezieller Wert (ich meine 
0xFFFFFFE) zurückgegeben, falls 48Bit LBA genutzt werden soll. USB 
arbeitet ja mit dem SCSI Befehlssatz, und da weiß ich nicht ob das auch 
so funktioniert. Eine Spec wäre halt schön, sonst muss ich wieder 
reverse engeneering betreiben.

Gruß
Stampede

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren