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

 
 
> Кто еще хорошо помнит как устроен FAT?
Allregia
сообщение Oct 18 2016, 18:49
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Вопрос можео несколько глуповатый - на диске с ФАТ 2 файла, большой и маленький.
Если файлу поставить аттрибут "System", вроде так метятся неперемещаемые файлы?
Гарантирует ли это, что при перезаписи файла он запишется в те-же сектора?

Правда, если файл сначала удалят, а потом на его место запишут другой, то тогда он уже не попадет на те-же сектора?
А если я скорректирую бут-сектор, что так Root Entry=2, а в FAT вообще все незанятые кластеру пропишу как BAD, то если удалить только один файл, а потом писать снова, ему деваться некуда будет, только в те-же сектра где он был?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Allregia
сообщение Oct 21 2016, 09:31
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Цитата
На много красивее чем предложенный мной FatFS внутри девайса.

FatFs внутри девайса, в данном случае, как телеге пятое колесо - для доступа процессора к памяти он не нужен, а извне все его функции делает Винда.
Цитата(Kabdim @ Oct 21 2016, 10:23) *
Ну смотрите, у вас новая схема:
редактор настроек -> файл -> заливка на флешку
ничем не отличается от предыдущего способа, более того есть риск обновлять настройки при устаревшей прошивке. В чем удобство?

Меньше ошибок.
В предыдушей схеме, редактор настроек при формировании файла, брал файл фирмваре и добавлял к нему блок настроек, потом сохранял это в едином файле для загрузки.
Были случаи, когда юзер брал устаревший файл фирмваре, поэтому и решили сделать их независимыми.
Плюс, для просто обновления прошивки, не нужно вообще никакого софта, я это делаю FAR'ом, а вообще - любым файловым менеджером, хоть виндовым проводником.

(файл фирмваре, естественно зашифрованный).

А проблему смены формата блока настроек в новых прошивках (если таковая произошла), мы решаем сменой сигнатуры - новые настройки просто не воспримутся и будут восстановлены дефолтные с предупреждением.
Go to the top of the page
 
+Quote Post
CrimsonPig
сообщение Oct 21 2016, 09:46
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502



Цитата(Allregia @ Oct 21 2016, 10:31) *
FatFs внутри девайса, в данном случае, как телеге пятое колесо - для доступа процессора к памяти он не нужен, а извне все его функции делает Винда.

Ну, на самом деле, если не нужны функции записи данных в файловой системе, то остаток (только чтение файлов) это всего лишь 10% от функциональности\размера кода.
Если еще жестко завязаться на тип, к примеру FAT12, и отсутствие директорий (кроме root), то разбор этого несчастного фата и чтение данных из cluster chain
займет строк 500 кода с обширными комментариями.

Да, кстати... если ваше устройство прикидывается mass storage и эмулирует FAT FS на лету, может вам на лету и эмулировать root directory вместе с dir. entry ваших хитрых файлов ?
Go to the top of the page
 
+Quote Post
Allregia
сообщение Oct 21 2016, 10:35
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Цитата(CrimsonPig @ Oct 21 2016, 10:46) *
Ну, на самом деле, если не нужны функции записи данных в файловой системе,

Функции записи именно и нужны.
Цитата
то остаток (только чтение файлов) это всего лишь 10% от функциональности\размера кода.

Это как раз функции чтения не нужны.
Т.е. прочитать-то можно (т.е. скопировать файл в РС), но данные при чтении принудительно все нулями отдаются.
Цитата
Если еще жестко завязаться на тип, к примеру FAT12, и отсутствие директорий (кроме root), то разбор этого несчастного фата и чтение данных из cluster chain
займет строк 500 кода с обширными комментариями.

И "разбора ФАТ" процессором тоже не нужно, это просто массив в ОЗУ, заполняемый процессором ОДИН раз при включении (также он при этом заполняет в ОЗУ и бут с рутом).
Вы все-таки не поняли что это и для чего, поэтому продолжаете упоминать FatFs, которая тут никоим боком не нужна и ничем не поможет.
Цитата
Да, кстати... если ваше устройство прикидывается mass storage и эмулирует FAT FS на лету, может вам на лету и эмулировать root directory вместе с dir. entry ваших хитрых файлов ?

См выше - они формируются один раз при включении питания и запуске бутлоадера.
Go to the top of the page
 
+Quote Post
CrimsonPig
сообщение Oct 21 2016, 11:03
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502



Цитата(Allregia @ Oct 21 2016, 11:35) *
Вы все-таки не поняли что это и для чего, поэтому продолжаете упоминать FatFs, которая тут никоим боком не нужна и ничем не поможет.


Это у вас проблемы с мировосприятием. "FAT FS" в контекстре моих сообщений, это "FAT file system", то бишь способ организации данных на носителе, соотвествующий спекам FAT file system от MS.
Если вы кроме китайских поделок мало что видели, это ваши проблемы.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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
- - 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
- - XVR   2 ТС - ваша задача в общем случае не решается вооб...   Oct 21 2016, 12:42
- - 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


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

 


RSS Текстовая версия Сейчас: 19th August 2025 - 23:48
Рейтинг@Mail.ru


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