Есть флешка, Kingston 2Гб взятая на поиграццо (на недельку - чисто инфу перегнать :-). В соседнем виндовом компе выдала следущие показатели: чтение ~9 мб/сек, запись ~3мб/с. Отформатирована в Фат16 размер блока 32кб, менять файловую систему возможности нет - читать флеш надо под масдаем, а фат32 еще тормознее чем 16-й.
Суть проблеммы - при монтировании флешки инфа читается с нее с тойже скоростью, что и в винде (~9-10 мб/сек). Косяк при записи - без опции sync - линух закидывает данные в кеш, а потом медленно и неспеша записывает это все на флешку, что не есть гут (привычка выдергивать не размонтируя, особенно когда спешишь). Руками делать unmount, и ждать пока он сбросит кеш - нехочется. Хочется чтоб писал сразу. С опцией sync - выдает скорость порядка 10-30 кб/с.
Как я понял, косяк со скоростью связан с тем, что на флешку за раз пишется 512 (или даже больше?) байт, а линух пытается писать меньшими кусочками. И как результат один и тотже сектор переписывается и перечитывется несколько раз, что сильно снижает скорость.
Начитал в нете (http://gentoo.ru/node/4961): В ядре 2.6.19 появился для фат32 новый ключик -flush который говорит мол скидывать кеш как можно быстрее без задержек.
Но делу это не помогло - первые 99% записи пролетают быстро, а потом система долго висит на последнем проценте, ожидая пока даннве из кеша реально запишутся на флеху. Неаккуратненько както.
Вопрос знатокам: как получить запись на флешку без кеширования, но с приемлемой скоростью?