Перейти к содержанию

Треки пишет в систему, а не на карту


Рекомендуемые сообщения

Всем привет,

Поменял карточку на КПК (Асус 696) на большего размера, перенес атлас_проиндексировал, все работает, а вот треки и точки сохраняет в систему. Как заставить НН записывать треки на карточку? В настройках не нашел.

Ссылка на комментарий
Поделиться на другие сайты

простите уважаемый, но в аппарате стоит такая же флешка, что и в карточке, только размер другой.

скажем карта имеет гарантированное число циклов перезаписи 10.000 на сектор. Сектор для записи выбирается псевдослучайно.

Давайте немного математики. допустим на у нас есть 1Гб свободной памяти на флешке в среднем (думаю при нынешних ценах брать флешку меньше 4гб неразумно). и допустим размер файлов с треками будет 100мб (врядли кто больше поназапишет когда-либо в обычной жизни)

Ввиду случайности выбора сектора, вероятность записи данных в определенный сектор составляет в среднем 1/10,

что дает нам 100.000 раз перезаписи 100мегабайтного объема данных на свободной области в 1Гб.

Навител раз в секунду записывает допустим 100байт (в реальности меньше, даже в громоздком GPX), соответвенно объем в 100Мб он заполнит за 1мегасекунду :D (278часов)

А эти самые 100Мб, как было сказано выше, мы можем перезаписать 100.000 раз. соответвенно получаем 27.800.000 часов работы. При десятичасовом использовании ежедневно (тоже очень много) получаем 7616 ЛЕТ (!!!)

вот вам и ограничение на циклы перезаписи. Россия раньше исчезнет с карты, чем закончится ресурс флешки для записи треков.

 

 

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

 

 

а в программу надо обязательно ввести настройку путей для сохранения данных. ну просто хороший тон по отношению к пользователю

Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

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

Это Вы рекомендации производителей флешек называете паранойей? :?

ЗЫ
В сети имеется достаточное количество информации и о специфике записи на флеш-карты, и о других отличиях от обычных магнитных носителей информации. Желающие докопаются до сути сами. А обсуждаемая тема стара, как ГПС-навигация, но каждый раз находятся желающие ее опровергнуть.
Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

простите уважаемый, но в аппарате стоит такая же флешка, что и в карточке, только размер другой.
Хранение внутренней файловой системы на флешке появилось только в WM 5.0. До этого всё держалось в обычной динамической памяти (то есть до разряда батареи). Но с появлением в архитектуре Pocket PC встроенной флешки на радикальный перенос туда файловых данных "в лоб" никто не пошёл: иначе такой КПК и служил бы не очень долго, и работал бы значительно медленнее (быстродействие флеш-памяти значительно ниже, чем у динамической).

Поэтому в реальности встроенная флешка КПК используется скорее как средство бекапа файловой системы, куда данные, по-прежнему хранящиеся в быстрой динамической памяти бекапятся "оптом", и лишь изредка, во время простоя. Кроме того, вряд ли во встроенной файловой системе применяется та же самая файловая система FAT32, которая используется на внешних съёмных флешках, и которая словно нарочно придумана, чтобы флешки выходили из строя как можно быстрее (об этом чуть ниже).

Внешняя флешка должна быть готова к вытаскиванию в любой момент, поэтому данные нельзя слишком долго буферизовать в ОЗУ. Это сильно увеличивает количество циклов перезаписи (при прочих равных условиях). Кроме того, FAT32 предполагает хранение корневой таблицы распределения "секторов", грубо говоря, в одном и том же секторе. Любое изменение в распределении файлов в прочих секторах - это запись в сектор с таблицей FAT. Например, удлинение любого файла на размер 1 сектора приводит к "износу" не только этого 1 нового сектора, но и к перезаписи сектора с таблицей FAT. Поэтому первым делом "выходит из строя" именно этот самый сектор FAT. А вместе с ним - сразу вся флешка, на радость производителям флешек :shock: .

Так что флешка внешняя и встроенная хоть и имеют одинаковую "природу", но структуры данных в них хранятся совершенно по-разному, что кардинально влияет на их живучесть. Да и одинаковость количества циклов записи на внутренней и внешней флешках - далеко не факт. Первые флешки, как только они появились на рынке, имели до 100 000 циклов. Но делать дешёвые сменные флешки по 10 000 циклов оказалось более выгодно: грубо говоря, заплатив вдвое меньше, клиент вынужден покупать в 10 раз чаще.

Цитата

к чему это я? а к тому, что параноя про ограниченый ресурс флешки не имеет никаких под собой оснований.
Тем не менее, во время тестирования одной из ранних автоверсий удалось нечаянно убить флешку всего за несколько часов записи лога. А потом ещё одну :) , пока не стало ясно, что это вовсе не дефект флешки, а очень неудачный алгоритм записи данных в лог.
Ссылка на комментарий
Поделиться на другие сайты

1. объясните разницу между флешкой в аппарате и внешней флешкой? в моем аппарате внутри стоит NAND флешка hy27us08121a (датащит по ссылке) с гаратнированным ресурсов в 100.000

 

SD флешки есть NOR (10.000 гарантированных циклов на сектор) и NAND (100.000) в частности мои SD трансценды все NAND

 

а теперь может объясните, в чем разница между записью на встроеную в аппарат NAND микруху, и на ту, что вставляется в SD слот? я вижу следующую разницу:

1. SD карта не юзается системой для своих целей, значит к ней меньше обращений.

2. SD карту, в отличии от внутренней флеши проще поменять в случае поломки (банально выкинуть). что тоже плюс.

 

а теперь общее между ними:

1. одинаковый ресурс записи

2. примерно одинаковая скорость работы

 

ну так куда лучше писать треки?

 

ну допустим, не все же проверяют тип памяти у SDшек, у многих NOR флешки. НО! десятикратная разница в гарантированом ресурсе (а реальный ведь вообще неизвестен) при таких больших временных интервалах, абсолютно не существенен, больше пары-тройки лет кпк всеравно не проходит у 95% юзеров.

а в случае с NAND SDшками разнцы в ресурсе нет ВООБЩЕ.

 

далее по времени использования, расчитанном выше. Да, ФС действительно использует некоторые области постоянно, но в случае с дописыванием данных в конец файла (запись трека навителом) раз в секунду будет обновляться только битмап свободных секторов. Вам посчитать ресурс на запись битмапа свободных секторов для тех же исходных данных, что в посте выше? Остальные обновления данных в ФС некритичны в виду их малочисленности.

 

Цитата

Это Вы рекомендации производителей флешек называете паранойей?

я не верю интернету (вернее тому, что в нем пишут), я верю аппноутам и датащитам производителей чипов. а их я почитал, чего и вам желаю.

 

почему ломаются флешки? дык ничто не вечно, но циклы перезаписи тут совершенно непричем. вам описать причины поломки микрух флеша, типичных для "китайчатины"?

 

еще раз позволю себе заметить, что разницы в ресурсе флешки, установленной в кпк и внешней качественной флешки нету абсолютно никакой.

 

 

если есть желание поспорить - я с удовольствием, но прошу приводить в качестве доказательства аппноуты, или хотяб датащиты на конкретные микрухи, чтоб мы их сравнили

Ссылка на комментарий
Поделиться на другие сайты

Цитата

Поэтому в реальности встроенная флешка КПК используется скорее как средство бекапа файловой системы, куда данные, по-прежнему хранящиеся в быстрой динамической памяти бекапятся "оптом", и лишь изредка, во время простоя. Кроме того, вряд ли во встроенной файловой системе применяется та же самая файловая система FAT32, которая используется на внешних съёмных флешках, и которая словно нарочно придумана, чтобы флешки выходили из строя как можно быстрее (об этом чуть ниже)

говорю за свой A686
ФС там именно фат (посмотрите таблицу разделов встроеной флешки), кэш конечно есть, но порядка нескольких мегабайт. Скорость записи (линейный тест) приблизительно равна скорости внешней флешки, что говорит о не эффективном процессе кэширования.

Цитата

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

при тестировании версии для кпк, на кпк с встроеной флешкой, наверное была бы убита и она. при делании и рельсу погнуть можно :D

лично мну не убил ни одной флешки за мноого лет. с моими компами и девайсами что-то не так?
Ссылка на комментарий
Поделиться на другие сайты

Paolo:

Как я понимаю - лучше этого не делать..., но и настроить невозможно...

о! я только что придумал способ!!! (сделаю так себе)

1. переименовываем My documents, например в Docs
2. в реестре правим имя точки монтирования SDшки в с SD карта на My documents
3. перезапускаемся, перекидываем с Docs все в My documents, которые теперь являются флешкой.

Теперь софт, кидающий все в My documents, будет это делать на флешку. и Навител думаю врядли будет исключением
Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

если есть желание поспорить - я с удовольствием, но прошу приводить в качестве доказательства аппноуты, или хотяб датащиты на конкретные микрухи, чтоб мы их сравнили

Спорить желания нет никакого.

На слово поверите, что на инструкции к какой-то из дорогих флешек из комплекта скорее всего к фотоаппарату на русском языке было написано: ... как и на любом перезаписываемыемом носителе информации, на карте памяти со временем образуются плохие участки памяти. Для их пометки и исключения порчи информации, флеш-карту необходимо периодически форматировать (не дословно)

И еще вот тут рассматривается эта же проблема флешек.
Ссылка на комментарий
Поделиться на другие сайты

Dust65:

Дерусов Николай:

если есть желание поспорить - я с удовольствием, но прошу приводить в качестве доказательства аппноуты, или хотяб датащиты на конкретные микрухи, чтоб мы их сравнили

Спорить желания нет никакого.

На слово поверите, что на инструкции к какой-то из дорогих флешек из комплекта скорее всего к фотоаппарату на русском языке было написано: ... как и на любом перезаписываемыемом носителе информации, на карте памяти со временем образуются плохие участки памяти. Для их пометки и исключения порчи информации, флеш-карту необходимо периодически форматировать (не дословно)?

И еще вот тут рассматривается эта же проблема флешек.


но внутри аппарата такаяж флеш, и со временем и она может также покрыться бэдами. вот только внешнюю флешку поменять легче, если уж на то пошло.
по поводу форматирования тож несовсем верно. не форматирование, а тестирование "поверхности" посредством записи/чтения (тут уж куча разнообразных утилит для этого дела существует). кстати, все современные контроллеры флешей должны сами выявлять и помечать плохие сектора.

в деле умирания флешки всеже в первую голову виновен не ресурс сектора, а другие факторы. как то температурные деформации кристалла (наверное главная причина умирания), пробои статикой, скачки по питанию, заводские дефекты, дефекты кристаллической решетки и последующие пробои по ним, да мало ли чего еще.

о! а видели ли вы флешки с пятилетней гарантией? я думаю видели. а входит ли в гарантийный случай умирание флешки от "старения" секторов - безусловно, ибо это количество недоказуемо. а выгодно ли производителю вагоны рекламаций? нет!
значит лет пять даже при записи на них видео потокового, они точно прослужат, если не деффектные


ладно, закончю пожалуй с флешами.

по теме "как перенести треки на SD" ответ два поста назад мною был придуман. кому нужно - перенесут
Ссылка на комментарий
Поделиться на другие сайты

Да, вродебы простой вопрос, а перерос в, скажем так, громогласную дискуссию... Скажу чесно, никогда не "заморачивался" на счет флэшки, но было очень итересно... постоять в сторонке и послушать.

А по переименовыванию-попробуем...

Спасибо всем, за содержательный ликбез!!!!!

Ссылка на комментарий
Поделиться на другие сайты

проверил. работает.

навител исправно пишет треки на флешку. так что кому надо - могут юзать данный способ.

кстати, навител не единственная прога, которая юзает только my documents...

Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

проверил. работает.
навител исправно пишет треки на флешку. так что кому надо - могут юзать данный способ.
кстати, навител не единственная прога, которая юзает только my documents...


Вы не могли бы поподробней описать способ...?
Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

ФС там именно фат (посмотрите таблицу разделов встроеной флешки)
Чем?

Цитата

Скорость записи (линейный тест) приблизительно равна скорости внешней флешки, что говорит о не эффективном процессе кэширования.
Скорее всего, Вы путаете просто файловую систему в "системной памяти" и её подпапку Flash Disk. Во второй действительно FAT32.

Цитата

при тестировании версии для кпк, на кпк с встроеной флешкой, наверное была бы убита и она. при делании и рельсу погнуть можно :D
Навител пишет в файл Tracks.bin ежесекундно. 100 000 секунд - это чуть больше суток записи. Но Навител пишет туда значительно дольше, и никаких сбоев.

Я вообще не припомню ни сам, ни с чьих-либо слов, чтобы случались проблемы со встроенной файловой системой КПК. Чего про внешние флешки никак не скажешь.

Короче, как говорится, наше дело - предупредить. Ваше - решать, стоит ли рисковать сохранностью Ваших данных или нет.
Ссылка на комментарий
Поделиться на другие сайты

1. переименовываем My documents в Docs

2. Берем редактор реестра и меняем следующие ключи

HKEY_LOCAL_MACHINESystemStorageManagerProfilesSDMemoryFolder

HKEY_LOCAL_MACHINESystemStorageManagerProfilesSDMMCFolder

с "SD карта" (или как там будет называться) на "My documents"

3. Перезапускаемся

4. Переносим содержимое (а не её саму!) папки Docs на флешку, которая теперь у нас называется не "SD карта" а "My documents"

 

отпишитесь по результатам

 

 

Цитата

Навител пишет в файл Tracks.bin ежесекундно. 100 000 секунд - это чуть больше суток записи. Но Навител пишет туда значительно дольше, и никаких сбоев.

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

 

про сбойные внешние флешки я тож читал, но сам никогда не сталкивался, хотя юзаю флешки активно. флешки годами пользуются в фотоаппарате при записи несжатого ави (такой вот старый кэнон, которые только несжатое пишет. представьте сколько там обращений к фатовскому битмапу :D )

и ни одна еще не сдохла. что я делаю не так с ними? ))))

Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

лично мну не убил ни одной флешки за мноого лет. с моими компами и девайсами что-то не так?
Всё зависит от того, как их использовать. Но судя по Вашим опытам, относительно скоро Вы наконец получите негативный опыт обращения с флешками.

В конце концов, в мире есть множество людей, утверждающих, что они изобрели вечный двигатель. Но почему я должен им всем верить? :)
Ссылка на комментарий
Поделиться на другие сайты

негативный опыт я получал например от оперативки, которая внезапно осыпалась (некоторые блоки перестали читаться, планку выкинул), у нее тоже ресурс кончился? ))

 

всеже чтобы сказать что активное юзание флешки вредно, нужно каким то образом точно ответить на вопрос "от чего умерла флешка?"

как можно точно сказать что из-за ограниченного ресурса циклов перезаписи? я вот например ума не приложу. не подскажите?

 

 

Цитата

Но судя по Вашим опытам, относительно скоро Вы наконец получите негативный опыт обращения с флешками

я даже надеюсь на это ) флешку не жалко, она на гарантии, как утверждают на пятилетней.

тогда смогу сказать - флешка умерла от активной записи (ибо нигде кроме навигатора она не используется у меня и оттуда не вынимается вообще).

Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

1. переименовываем My documents в Docs
2. Берем редактор реестра и меняем следующие ключи
HKEY_LOCAL_MACHINESystemStorageManagerProfilesSDMemoryFolder
HKEY_LOCAL_MACHINESystemStorageManagerProfilesSDMMCFolder
с "SD карта" (или как там будет называться) на "My documents"
3. Перезапускаемся
4. Переносим содержимое (а не её саму!) папки Docs на флешку, которая теперь у нас называется не "SD карта" а "My documents"
отпишитесь по результатам

Спасибо!!!! Пошел пробовать!
Отпишусь через пару месяцев :)
Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

навител не пишет ежесекундно в один и тот же сектор, он это делает равномерно по всему свободному пространству -)
Почему Вы так решили?
Ссылка на комментарий
Поделиться на другие сайты

kg_vista:

Дерусов Николай:

навител не пишет ежесекундно в один и тот же сектор, он это делает равномерно по всему свободному пространству -)
Почему Вы так решили?

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

ну и еще по работе контроллеров флеш-памяти (а именно то, что устраняет умирание флешек от ограниченности ресурса):

ECC (Error check and correct) работает следующим образом - после записи сектора, он читается, и сравнивается с оригиналом. если сошелся то все ок. если не сошелся, то сектор объявляется бэдом и ремаппится с резервной области флеша (полная аналогия с винтами, за исключением того, что контроль на бэды происходит в реалтайме). В норме у флешки, сошедшей с конвеера имеется до 2% бэдов (у винтов к сожалению не помню это норму, но они тоже "битые" с завода), новые битые сектора могут появляться не только и не столько из-за износа по циклам записи.. когда они появляются - происходит их подмена на "здоровые" из резерва.

еще есть wear leveling. пространство флешки разбивается на энное количество областей, и ведеться подсчет того, чтобы эти области использывались приблизительно равное число раз. актуально, если флешка забита данными и имеет лишь немного свободного пространста, которое интенсивно перезаписывается. контроллер следит за высвобождением места в наименее использованных областях и новые данные пишет туда. Актуально для таблиц fat, которые будут ползать по "поверхности" флешки.

естественно все это присутствует в нормальных контроллерах, чудеса китайской мысли по тринадцать центов в расчет не беру. там может быть все что угодно.

но вообще, убить SDшку просто взяв в руки (статикой) на порядки вероятнее, чем износ. а ведь причин умирания очень много.
а еще флешки умирают от кривого питания. попытки вызвать ошибку считывания с флешки в нексовском автонавигаторе посредством снижения питания микросхемы флеша (память встроеная) вызвало сначала самоформатирование флеши (до состояния встроеной синиэкранной прошивалки), а затем и полное ее умершвление. так что продаю NS-3500 с лицензионной IGO, но умершем хьюниксовским чипом встроеной памяти (перепаять не на что, да и зашить нечем) на дрова, в смысле на запчасти -)
Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

ну такова уж работа контроллера, это есть даже в самой отпетой китайчатине.
Откуда такая уверенность?

Кстати, а где контроллер хранит состояние генератора псевдослучайных чисел? Тоже в псевдослучайном месте?
Ссылка на комментарий
Поделиться на другие сайты

разберите свой девайс, посмотрите марки чипов и скачайте на них датащиты. и там все будет написано. ага.

 

генератор? простейший генератор случайных чисел является двумя "шумящими" резисторами, весящими на прямом и инверсном выходе компаратора, с выхода компаратора выходит последовательность нулей и единиц. которые иногда прогоняются через фон-неймановский отбеливатель, а иногда юзаются сразу для упрощения. генератор не математический, а аппаратный. и ничего хранить не надо. а вот состояние блоков wear leveling действительно хранится во флеше, но число обращений к ним невелико

Ссылка на комментарий
Поделиться на другие сайты

Дерусов Николай:

разберите свой девайс, посмотрите марки чипов и скачайте на них датащиты. и там все будет написано. ага.
А как разобрать внешнюю флешку?

Цитата

генератор? простейший генератор случайных чисел является
Но выше Вы писали про генератор псевдослучайных чисел. Алгоритм, который традиционно называют генератором псевдослучайных чисел, имеет состояние, которое надо где-то хранить между последовательными генерациями.
Ссылка на комментарий
Поделиться на другие сайты

аппаратный генератор на температурных флуктуациях тоже является псевдослучайным, ибо подбором внешних воздействий (помехи по питанию, изменение температуры, магнитных полей и прочего) можно влиять не него. (см. доки по интеловским генераторам на шумах, там ну очень подробно об этом. даж в компьютерре кучу лет назад о них было)

 

Цитата

А как разобрать внешнюю флешку?

если по внешней, то ECC там есть полюбому (могу если есть желание найти доки по SD/MMC), а wear levelling есть у многих (те же кингстоны).

ради интереса покапаю контроллеры карт, скорее всего они не ограничиваются банальным общеением с флешкой по SPI протоколу (это может и atiny8 за 10руб сделать)

 

ps:

Цитата

которое надо где-то хранить между последовательными генерациями.

ОЗУ у контроллера отменили? там и храните, если нужен программный, а не аппаратный генератор. а первоначальное состояние ставим например исходя из тактирования.

Ссылка на комментарий
Поделиться на другие сайты

Заархивировано

Эта тема находится в архиве и закрыта для дальнейших ответов.

×
×
  • Создать...