-
- У меня знакомый, в достаточной мере живёт тем, что обновляет
прошивки телевизорам, когда те записывают настройки "громкость" или
"каналь" во флэшь и "происходит чота страшное". Ему приносят кирпич
и деньги. Получают телек. Что за промблемма поставиь внешнюю
ЕЕПРОМ? Они щас копейки. - mse homjak(27.03.2024 12:42)
- Если кривые ручки запороли флешу, они и с еепромой справятся. - SciFi(27.03.2024 12:44)
- Да, но с ЕЕПРОМ не получится кирпича из поделия. - mse homjak(27.03.2024 12:46)
- Запросто. Звукашки Vibra16 ISA PnP и сетевушки Realtek PCI сразу
вспоминаются. Первые при слете ставили раком комп, вторые меняли
Vendor/DeviceID и теряли драйвера. Да и мониторов было несколько
семейств (не помню уже кто, ViewSonic вроде). - LightElf(27.03.2024 15:04)
- Не, я не против. Можно написать хуйню любой степени лютости, которая поставит раком всё, до чего дотянеца и безо всякой ЕЕПРОМ. Просто, если у нас есть код записи во флэшь, он, чисто теоретически, можэт выполниться нештатно: не в то время и/или не в то место. А если нет, то нет. Данные в ЕЕПРОМ, можно, хотя-бы, выставить по умолчанию, если чексумм не сошолся или ещо чего. Когда затёрт сегмент флэши, ловить нечего. - mse homjak(27.03.2024 17:59)
- Вы недооцениваете потенциал кривых ручек :-) - SciFi(27.03.2024 12:51)
- Запросто. Звукашки Vibra16 ISA PnP и сетевушки Realtek PCI сразу
вспоминаются. Первые при слете ставили раком комп, вторые меняли
Vendor/DeviceID и теряли драйвера. Да и мониторов было несколько
семейств (не помню уже кто, ViewSonic вроде). - LightElf(27.03.2024 15:04)
- Да, но с ЕЕПРОМ не получится кирпича из поделия. - mse homjak(27.03.2024 12:46)
- Если кривые ручки запороли флешу, они и с еепромой справятся. - SciFi(27.03.2024 12:44)
- Тогда мой код подойдет. Еще надо в ld-скрипте пометить первую же
свободную секцию с выравниванием на размер блока - чтобы всю
свободную флеш-память можно было под хранилище организовать. Eddy_Em(389 знак., 27.03.2024 09:56)
- Странно, у меня такого желания не возникало. Определяешь массив
нужного размера с атрибутом aligned=4. И везде используешь
адресацию на основе указателя на этот массив. При необходимости, с
приведением типа. Можно даже задефайнить приведение типа. Дальше
компилятор сам справится. По идее, даже ассемблер справится. - Nikolay_Po(27.03.2024 11:51)
- Так если определить массив слишком маленького размера, приличная
часть ОЗУ будет неиспользована. Если слишком большого - не взлетит…
А хочется же все 100% выжать из ОЗУ - как и из флеша. - Eddy_Em(27.03.2024 11:56)
- Если ОЗУ и так мало, то баловаться с аллокаторами чревато. Коль уж
буфер такого-то размера рано или поздно будет нужен - надо под него
сразу заложить место. Тем же массивом... POV(350 знак., 27.03.2024 12:03)
- Да мне не аллокаторы, а под входные-выходные буферы более-менее
распределить память. Т.е. если есть возможность - делаем кольцевой
буфер на тот же USB размером с килобайт (и тогда оно весело в
прерываниях "прозрачно" по кускам в 64 байта данные выплевывает),
если нет - сделать поменьше (тогда будет не так весело, и длинные
тексты - скажем, вывод справки - будут блокирующими, что иногда
може быть чревато).. - Eddy_Em(27.03.2024 12:05)
- Делайте так, чтобы блокирующий вывод не создавал проблем. А то
задумка напоминает ардуино-стайл. - Nikolay_Po(27.03.2024 14:39)
- Поэтому и делаю большой кольцевой буфер обычно. Eddy_Em(585 знак., 27.03.2024 14:49)
- Делайте так, чтобы блокирующий вывод не создавал проблем. А то
задумка напоминает ардуино-стайл. - Nikolay_Po(27.03.2024 14:39)
- Да мне не аллокаторы, а под входные-выходные буферы более-менее
распределить память. Т.е. если есть возможность - делаем кольцевой
буфер на тот же USB размером с килобайт (и тогда оно весело в
прерываниях "прозрачно" по кускам в 64 байта данные выплевывает),
если нет - сделать поменьше (тогда будет не так весело, и длинные
тексты - скажем, вывод справки - будут блокирующими, что иногда
може быть чревато).. - Eddy_Em(27.03.2024 12:05)
- Если ОЗУ и так мало, то баловаться с аллокаторами чревато. Коль уж
буфер такого-то размера рано или поздно будет нужен - надо под него
сразу заложить место. Тем же массивом... POV(350 знак., 27.03.2024 12:03)
- Так если определить массив слишком маленького размера, приличная
часть ОЗУ будет неиспользована. Если слишком большого - не взлетит…
А хочется же все 100% выжать из ОЗУ - как и из флеша. - Eddy_Em(27.03.2024 11:56)
- Странно, у меня такого желания не возникало. Определяешь массив
нужного размера с атрибутом aligned=4. И везде используешь
адресацию на основе указателя на этот массив. При необходимости, с
приведением типа. Можно даже задефайнить приведение типа. Дальше
компилятор сам справится. По идее, даже ассемблер справится. - Nikolay_Po(27.03.2024 11:51)
- эмулятор EEPROM abivan(1 знак., 27.03.2024 09:33, картинка)
- У меня знакомый, в достаточной мере живёт тем, что обновляет
прошивки телевизорам, когда те записывают настройки "громкость" или
"каналь" во флэшь и "происходит чота страшное". Ему приносят кирпич
и деньги. Получают телек. Что за промблемма поставиь внешнюю
ЕЕПРОМ? Они щас копейки. - mse homjak(27.03.2024 12:42)