|
Кто еще хорошо помнит как устроен FAT? |
|
|
|
Oct 18 2016, 18:49
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Вопрос можео несколько глуповатый - на диске с ФАТ 2 файла, большой и маленький. Если файлу поставить аттрибут "System", вроде так метятся неперемещаемые файлы? Гарантирует ли это, что при перезаписи файла он запишется в те-же сектора?
Правда, если файл сначала удалят, а потом на его место запишут другой, то тогда он уже не попадет на те-же сектора? А если я скорректирую бут-сектор, что так Root Entry=2, а в FAT вообще все незанятые кластеру пропишу как BAD, то если удалить только один файл, а потом писать снова, ему деваться некуда будет, только в те-же сектра где он был?
|
|
|
|
|
 |
Ответов
|
Oct 21 2016, 12:42
|
Гуру
     
Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847

|
2 ТС - ваша задача в общем случае не решается вообще  Винда может захотеть записать кластеры файла в любое место, полностью проигнорировав начальное содержимое FAT. И узнаете вы об этом только после того, как весь файл будет записан и вам придет новый образ FAT'а. Практически этого скорее всего не случится, но теоритически может. Так что вариант из сообщения 42 (со сквозной нумерацией) это похоже единственное решение, которое будет работать всегда. Да, и резать по секторам (512 байт) слишком мелко - вполне достаточно по кластерам, сектора в них никогда не перемещаются на другое место относительно самого кластера  Цитата Но это все несколько сложнее. Прочесть 2-4 байта адреса из начала блока данных и записать остаток в FLASH по этому адресу сложно?
|
|
|
|
Сообщений в этой теме
Allregia Кто еще хорошо помнит как устроен FAT? Oct 18 2016, 18:49 AlexRayne Цитата(Allregia @ Oct 18 2016, 21:49) Воп... Oct 19 2016, 06:54 Allregia Цитата(AlexRayne @ Oct 19 2016, 07:54) Да... Oct 19 2016, 18:30  Ruslan1 Цитата(Allregia @ Oct 19 2016, 20:30) Я н... Oct 19 2016, 19:04  HardEgor Цитата(Allregia @ Oct 20 2016, 01:30) Име... Oct 20 2016, 13:03 adnega Цитата(Allregia @ Oct 18 2016, 21:49) Гар... Oct 19 2016, 07:55 CrimsonPig Цитата(Allregia @ Oct 18 2016, 19:49) Воп... Oct 19 2016, 08:09 megajohn Цитата(Allregia @ Oct 18 2016, 21:49) А е... Oct 19 2016, 09:32 HardEgor Цитата(Allregia @ Oct 19 2016, 01:49) А е... Oct 19 2016, 10:22 jcxz Цитата(HardEgor @ Oct 19 2016, 13:22) Про... Oct 19 2016, 15:01 TSerg Делается контейнер, по примеру TrueCrypt и размеро... Oct 19 2016, 15:41 Allregia Цитатаили делайте все правильно.
"Правильно... Oct 19 2016, 21:20 adnega Цитата(Allregia @ Oct 20 2016, 00:20) Но ... Oct 19 2016, 21:35  Allregia Цитата(adnega @ Oct 19 2016, 22:35) Зачем... Oct 19 2016, 23:18   adnega Цитата(Allregia @ Oct 20 2016, 02:18) В о... Oct 20 2016, 10:36   jcxz Цитата(Allregia @ Oct 20 2016, 02:18) Но ... Oct 20 2016, 10:46 Ruslan1 Allregia, извините, пожалуйста, но я просто не мог... Oct 21 2016, 07:02 Allregia ЦитатаOk. Сделайте два раздела - один большой и од... Oct 20 2016, 14:16 sigmaN Я не понял, т.е. все эти танцы с бубном нужны искл... Oct 20 2016, 14:52 Allregia Цитата(sigmaN @ Oct 20 2016, 15:52) Я не ... Oct 20 2016, 18:27  YAM Цитата(Allregia @ Oct 20 2016, 21:27) Я у... Oct 20 2016, 18:38   Allregia Цитата(YAM @ Oct 20 2016, 19:38) При чем ... Oct 20 2016, 19:09    YAM Цитата(Allregia @ Oct 20 2016, 22:09) Это... Oct 21 2016, 14:46     Allregia Цитата(YAM @ Oct 21 2016, 15:46) Да.
У ме... Oct 21 2016, 15:23 YAM В таких случаях я делаю просто 2 диска с необходим... Oct 20 2016, 16:34 sigmaN ЦитатаВидимо да, Вы не поняли. А какие именно... Oct 20 2016, 20:01 Allregia Цитата(sigmaN @ Oct 20 2016, 21:01) Имела... Oct 20 2016, 20:41  CrimsonPig Цитата(Allregia @ Oct 20 2016, 21:41) Да ... Oct 20 2016, 21:20   Allregia Цитата(CrimsonPig @ Oct 20 2016, 22:20) Н... Oct 20 2016, 22:42 controller_m30 Я недавно делал USB MSD с программной генерацией: ... Oct 20 2016, 23:01 sigmaN ЦитатаДа никакая это не "свысокоуровневая зад... Oct 21 2016, 07:00 sigmaN ЦитатаНо опять же не понимаю даже зачем требование... Oct 21 2016, 07:12 gerber Если хотите внутри устройства сами управлять распо... Oct 21 2016, 07:27 Allregia Цитатанедавно делал USB MSD с программной генераци... Oct 21 2016, 08:08 Kabdim Не проще, добавлять параметры суфиксом к прошивке ... Oct 21 2016, 08:11 Allregia ЦитатаНе проще, добавлять параметры суфиксом к про... Oct 21 2016, 08:15  Kabdim Цитата(Allregia @ Oct 21 2016, 11:15) Так... Oct 21 2016, 09:23 sigmaN Media Transfer Protocol в этом случае выглядит оче... Oct 21 2016, 08:48 Allregia ЦитатаНа много красивее чем предложенный мной FatF... Oct 21 2016, 09:31 CrimsonPig Цитата(Allregia @ Oct 21 2016, 10:31) Fat... Oct 21 2016, 09:46  Allregia Цитата(CrimsonPig @ Oct 21 2016, 10:46) Н... Oct 21 2016, 10:35   CrimsonPig Цитата(Allregia @ Oct 21 2016, 11:35) Вы ... Oct 21 2016, 11:03 Kabdim Кмк проблема "юзер блал устаревший файл фирмв... Oct 21 2016, 09:37 jcxz Раз это бутлоадер, то все эти танцы с бубнами и ФА... Oct 21 2016, 12:07  Allregia Цитата(jcxz @ Oct 21 2016, 13:07) Раз это... Oct 21 2016, 13:03   jcxz Цитата(Allregia @ Oct 21 2016, 16:03) Вот... Oct 21 2016, 14:40 controller_m30 По поводу защиты от удаления, но не перезаписи.
Уд... Oct 21 2016, 10:07 gerber Ещё можно делать ремаппинг на лету - пусть "В... Oct 21 2016, 10:55 Allregia Цитата(gerber @ Oct 21 2016, 11:55) Ещё м... Oct 21 2016, 11:36 Allregia YAM, щiро дякую!
C двумя LUN получилось велик... Oct 22 2016, 08:32 YAM Цитата(Allregia @ Oct 22 2016, 11:32) YAM... Oct 22 2016, 14:09 Allregia Интересно - откуда берется ограничение на мин. раз... Oct 22 2016, 15:10 YAM Цитата(Allregia @ Oct 22 2016, 18:10) Инт... Oct 22 2016, 15:45 Allregia Странно, я перебрал длину диска от 4К до 8К, т.е о... Oct 22 2016, 17:02
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|