-
- Вообще, поднять SNMPv3 - это круто! - Nikolay_Po(08.10.2024 14:01)
- Да, очень тяжёлый протокол. Видимо, кто-то в шутку его в своё время Simple назвал :-) Меня сейчас смущает только то, что пока не смог mdebTLS свежую к нему прикрутить. Юзаю какую-то старую версию от какого-то проекта на гитхабе под STM32. Но тут надо отдельно будет ещё разбираться. Очень мало информации по всему этому делу, к сожалению. - FDA(08.10.2024 14:08)
- Почитайте по теме кучи. Там способы, типа заполнения свободного места между кучей и стеком известным кодовым узором и регулярная проверка, сколько этого узора осталось не затёртым. Так и узнаете, хватает ли вам памяти на стек и на кучу. - Nikolay_Po(07.10.2024 17:19)
- У меня в некоторых проектах штатные функции выделения памяти в куче
подменены на мои собственные как раз с такой проверкой (и защитой
от одновременного вызова разными процессами). У меня оно прыгает на
принудительную перезагрузку, правда, такого давно уже не случалось. - AlexG(07.10.2024 16:45)
- А я делаю проверку кучи штатными средствами - в цикле с помощью
alloc/free нахожу максимальный размер блока, который может
предоставить система. Надо только быть внимательным в случае
многозадачной системы - запрещать переключение задач в момент между
alloc и free, чтобы не обломать выделение памяти в соседней задаче.
А без RTOS - так вообще нет проблем. - il-2(08.10.2024 07:17)
- А можете пример прислать как именно делаете? У нас программа без
RTOS сейчас. - FDA(08.10.2024 14:06)
- Вот такую функцию я наваял. Это для МК CH57x / 58x / 59x. Там библиотека BLE и событийная ОС использует свою кучу. il-2(774 знак., 08.10.2024 15:04)
- А можете пример прислать как именно делаете? У нас программа без
RTOS сейчас. - FDA(08.10.2024 14:06)
- Спасибо. Как организовали подмену? Переопределением? Или просто
ручками во всех местах вызова? Для меня такое пока не очевидно. - Nikolay_Po(07.10.2024 17:05)
- в IARе в опциях линкера: AlexG(411 знак., 09.10.2024 03:28)
- Спасибо. Интересно было бы узнать, как подобное делается в GCC. - Nikolay_Po(09.10.2024 09:08)
- --wrap >>> SciFi(1 знак., 09.10.2024 09:14, ссылка)
- Отлично. Спасио. Премного благодарен. - Nikolay_Po(09.10.2024 09:55)
- --wrap >>> SciFi(1 знак., 09.10.2024 09:14, ссылка)
- Спасибо. Интересно было бы узнать, как подобное делается в GCC. - Nikolay_Po(09.10.2024 09:08)
- в IARе в опциях линкера: AlexG(411 знак., 09.10.2024 03:28)
- А я делаю проверку кучи штатными средствами - в цикле с помощью
alloc/free нахожу максимальный размер блока, который может
предоставить система. Надо только быть внимательным в случае
многозадачной системы - запрещать переключение задач в момент между
alloc и free, чтобы не обломать выделение памяти в соседней задаче.
А без RTOS - так вообще нет проблем. - il-2(08.10.2024 07:17)
- Был рад помочь. Я глубоко кучу не копал, но, вроде, там могут быть функции: а) узнать какого размера куча; б) Коллбек в случае отказа выделения памяти. Ну или ищите все места аллокации и вставляйте проверки туда вручную. - Nikolay_Po(07.10.2024 16:38)
- Вообще, поднять SNMPv3 - это круто! - Nikolay_Po(08.10.2024 14:01)