реклама на сайте
подробности

 
 
> Mass Storage Usb Flash Disk, Файловая система flash памяти (FAT 16)
kernel32ddl
сообщение Feb 21 2006, 12:28
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 44
Регистрация: 20-02-06
Из: Penza
Пользователь №: 14 526



help.gif
При создании Usb flash диска (128мб) появились проблемы с его определением windows. Дела обстоят следующим образом: при подключении устройства windows загружает все необходимые драйвера, т.е. диск определяется как сменный носитель, появляется в проводнике (с этим проблем нет); а вот дальше начинаются странности. На флэше был создан раздел FAT16, при создании раздела руководствовался документацией по этой файловой системой.
Блок параметров биос выглядит так:
Смещение Название Размер Значение Описание
0 (0x0) BS_jmpBoot 3 EB 3E 90 Команда перехода на загрузчик ОС
3 (0x3) BS_OEMName 8 2B 58 64 68 39 49 48 43 (Xdh9IHC) Название и версия Windows
11 (0xB) BPB_BytsPerSec 2 00 02(512) Количество байтов в секторе (всегда 512)
13 (0xD) BPB_SecPerClus 1 04(4) Секторов на кластер всегда кратно степени двух
14 (0xE) BPB_RsvdSecCnt 2 01 00(1) Количество зарезервированных секторов перед первой FAT
16 (0x10) BPB_NumFATs 1 02(2) Количество таблиц FAT (всегда 2)
17 (0x11) BPB_RootEntCnt 2 B0 02(688) Количество элементов в корневом каталоге (максимальный предел)
19 (0x13) BPB_TotSec16 2 00 00 Общее число секторов (0 - если размер диска больше 32 Мб)
21 (0x15) BPB_Media 1 F8 Тип устройства: F0 - гибкий диск, F8 - жесткий диск с любой емкостью (Media дескриптор носителя)
22 (0x16) BPB_FATsz16 2 FA 00(250) Количество секторов на элемент таблицы FAT (число секторов в одной FAT)
24 (0x18) BPB_SecPerTrk 2 20 00(32) Количество секторов на дорожку
26 (0x1A) BPB_NumHeads 2 FF 00(255) Число головок
28 (0x1C) BPB_HiddSec 4 00 00 00 00 Количество скрытых секторов
32 (0x20) BPB_TotSec32 4 FF E4 03 00(255231) Общее число секторов (0 - если размер диска меньше 32 Мб)
36 (0x24) BS_DrvNum 1 80(128) Номер диска
37 (0x25) BS_NtRsvd 1 01 Зарезервировано для Windows NT
38 (0x26) BS_BootSig 1 29 Расширенная сигнатура (если 29h, то следующие поля актуальны)
39 (0x27) BS_VolID 4 68 42 6C 30(hBl0)Серийный номер тома
43 (0x2B) BS_VolLab 11 4E 4F 20 4E 41 4D 45 20 20 20 20(NO NAME ) Метка тома
54 (0x36) BS_FilSysSize 8 46 41 54 31 36 20 20 20(FAT16 ) Тип файловой системы (12- или 16-разрядная)

В готовой флэши (смотрел несколько флэш Trancend) процесс чтения происходит так: сначала читается загрузочная область (винда почему-то это делает несколько раз), затем начинается чтение fat по порядку, а затем читается root и т.д. и т.п, т.е все достаточно логично.
У меня происходит все довольно странно после чтения boot сектора винда читает сектор со смещением 0x40h(64) и переодисечки повторяет чтение то boot сектора, то этого сектора
При попытке зайти на диск проводник виснет при это не выводится ни каких сообщений.
Пробовал отфармотировать флэшку при помощи HP USB Disk Storage Format Tool, но она пишет, что диск защищен от записи.
Очень хотелось бы узнать как те кто этим занимался решили проблему файловой системы диска, либо как я писали ее сами, либо брали уже готовую, скажем с носителя такой же емкости?
Возможно проблема в блоке параметров биос (параметры брал согласно мануалам)?
Ни где не встретил описание параметров BPB_SecPerTrk (Количество секторов на дорожку) и BPB_NumHeads (Число головок) из каких соображений они выбираются?
Не мог бы кто-нибуть выложить свой бут сектор с комментариями, буду очень признателен?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- kernel32ddl   Mass Storage Usb Flash Disk   Feb 21 2006, 12:28
- - rezident   Не большой спец по Mass Storage, но мысль имею Ц...   Feb 21 2006, 12:59
- - kernel32ddl   Форматировать пробовал(после того как винда перест...   Feb 21 2006, 13:13
- - rezident   Насколько я в курсе, флешка должна лишь уметь обра...   Feb 22 2006, 04:40
- - kernel32ddl   С набором команд как раз-таки все впорядки данные ...   Feb 22 2006, 10:19
|- - one_man_show   Цитата(kernel32ddl @ Feb 22 2006, 13:19) ...   Feb 26 2006, 16:26
||- - Charley   Цитата(one_man_show @ Feb 26 2006, 21:26)...   Feb 27 2006, 09:37
|- - mantech   Цитата(kernel32ddl @ Feb 22 2006, 13:19) ...   Mar 10 2017, 19:50
- - левша   Забавная задачка. А Partition Magic может тут помо...   Feb 26 2006, 08:45
|- - kernel32ddl   Цитата(левша @ Feb 26 2006, 11:45) А Part...   Feb 26 2006, 10:02
- - khach   WinHex поможет- он с любыми дисками работает после...   Feb 26 2006, 10:22
|- - kernel32ddl   Цитата(khach @ Feb 26 2006, 13:22) WinHex...   Feb 26 2006, 10:40
- - khach   Есть такая прога- WinHex, от X-Ways software. Наво...   Feb 26 2006, 10:52
|- - kernel32ddl   Цитата(khach @ Feb 26 2006, 13:52) Залил ...   Feb 26 2006, 11:02
- - kernel32ddl   64-ый сектор - это оказывается первый сеткор второ...   Feb 26 2006, 13:01
- - kernel32ddl   Значится так: Первым делом идем на usb.org USB Dev...   Feb 27 2006, 11:02
- - kernel32ddl   По ходу дела возник такой вопрос: какую файловую с...   Feb 27 2006, 12:34
- - one_man_show   Уважаемый kernel32ddl! Большое спасибо за подр...   Feb 27 2006, 14:35
- - kernel32ddl   one_man_show, спасибо за столь лесную похвалу . ...   Feb 28 2006, 11:06
|- - TobyBar   Цитата(kernel32ddl @ Feb 28 2006, 12:06) ...   Feb 16 2017, 16:17
- - kernel32ddl   Забыл добавить еще одну важную ссылку, при описани...   Feb 28 2006, 13:44
- - v_mirgorodsky   Не знаю как для флешей, но для обычных жестких дис...   Feb 28 2006, 16:46
- - kernel32ddl   На флэшках, структуру которых мне удалось посмотре...   Mar 1 2006, 10:22
|- - afe   Цитата(kernel32ddl @ Mar 1 2006, 13:22) Н...   Jun 7 2006, 13:44
- - kernel32ddl   Итак... Первым делом пришлось фарматировать флэш с...   Mar 3 2006, 12:57
- - jhoo   Что такое пустые пакеты SEND_ACK и GET_ACK? Просто...   Mar 7 2006, 06:10
|- - kernel32ddl   Цитата(jhoo @ Mar 7 2006, 09:10) Лучше от...   Mar 20 2006, 12:58
- - jhoo   Может быть поздно. Но, http://www.thesycon.de/   Apr 3 2006, 06:32
- - kernel32ddl   Спасибо   Apr 3 2006, 08:55


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 02:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01377 секунд с 7
ELECTRONIX ©2004-2016