4

Флэш-накопитель, очевидно, является частью EEPROM, включая контроллер / микропроцессор для хранения / извлечения файлов, хранящихся на нем. Операционная система обычно взаимодействует с флэш-накопителем, и все флэш-накопители работают во всех операционных системах (я думаю). Таким образом, где-то должен быть протокол для адресации / управления флэш-накопителем через порт USB. Я заинтересован в получении данных с флэш-накопителя, который относится к тому, какие блоки памяти фактически заняты конкретным файлом. Кто-нибудь там знает справочник, который описывает управление памятью флэш-накопителя и протокол?

Я попытался спросить об этом в Stack Overflow, и мне предложили попробовать здесь.

2 ответа2

3

То , как USB Thumb Drive организует данные внутри прозрачно для хоста.

Как и жесткий диск, данные записываются и читаются с использованием LBA (логическая блочная адресация):

http://wiki.osdev.org/LBA

Когда хост отправляет данные в блок LBA на жестком диске, Thumb Drive может сохранять эти данные любым удобным для них способом, при условии, что те же данные возвращаются при чтении этого блока. Вы не узнаете, как он хранит данные в EEPROM (это может быть очень сложно из-за выравнивания износа, исправления ошибок и используемых технологий производительности).

Я заинтересован в получении данных с флэш-накопителя, который относится к тому, какие блоки памяти фактически заняты конкретным файлом.

Я подозреваю, что вы на самом деле ищете информацию о том, какие LBA используются конкретным файлом. Это является функцией используемой файловой системы, и такая информация получается от ОС, а не от устройства USB. Это связано с тем, что именно ОС управляет файлами и отображением файловых данных в секторах, а в свою очередь - отображением секторов в LBA на флэш-накопителе.

Это отличное чтение на эту тему:

http://www.wd-3.com/archive/luserland.htm

1

Класс запоминающего устройства USB (также известный как USB MSC или UMS) представляет собой набор вычислительных протоколов связи, определенных Форумом разработчиков USB, который делает USB-устройство доступным для главного вычислительного устройства и обеспечивает передачу файлов между хостом и USB-устройством. ,

со страницы WikiPedia.

Вот скучный технический PDF-файл под названием «Сокращенные блочные команды, черновое предложение».

А вот более удобная для человека страница с большим количеством ссылок, которые должны помочь вам начать работу.

Похоже, веселый проект!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .