Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
16.09.2014, 16:13
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
Здравствуйте. Пишу в Keil под STM32 микроконтроллер на C/C++. Такой вопрос, как узнать количество свободной памяти доступное для malloc() ? Если это сделать не возможно то можно ли как-то переопределить функции malloc()/free() чтобы вести подсчёт самому? Естественно лучше первый вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.09.2014, 18:17
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
Есть важный момент. Память - фрагментируется. И суммарно может свободной памяти хватать, но одним куском выделить не получится. Т.е. что считать количеством свободной памяти? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.09.2014, 18:34
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
ZyK_BotaNЕсть важный момент. Память - фрагментируется. И суммарно может свободной памяти хватать, но одним куском выделить не получится. Т.е. что считать количеством свободной памяти? Это я понимаю. Мне нужно просто число свободных блоков для учёта чтобы отслеживать отсутствие утечек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.09.2014, 19:09
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
xneoТакой вопрос, как узнать количество свободной памяти доступное для malloc() ?выделить-освободить. Выделить больше-освободить. Выделить еще больше - освободить. Как не смог выделить, значит достиг предела. xneoЕсли это сделать не возможно то можно ли как-то переопределить функции malloc()/free() чтобы вести подсчёт самому?Читать документацию на свою платформу. Смотреть как организован рантайм в используемом компиляторе, потом заменять стандартную библиотеку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.09.2014, 09:58
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
xneoможно ли как-то переопределить функции malloc()/free() чтобы вести подсчёт самому? кто ж запретит: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.09.2014, 10:10
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
RWolfxneoможно ли как-то переопределить функции malloc()/free() чтобы вести подсчёт самому? кто ж запретит: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. есть трудности: ODR , но в принципе -- возможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.09.2014, 04:38
|
|||
|---|---|---|---|
|
|||
Вопросы по malloc() |
|||
|
#18+
Здравствуйте. MasterZivRWolfпропущено... кто ж запретит: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. есть трудности: ODR , но в принципе -- возможно. А есть ли аналогичные правила для Си ? Или подразумевается что они применяются к этому языку ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.09.2014, 18:33
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
SashaMercuryЗдравствуйте. MasterZivпропущено... есть трудности: ODR , но в принципе -- возможно. А есть ли аналогичные правила для Си ? Или подразумевается что они применяются к этому языку ? Они ровно одинаковые. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.09.2014, 20:49
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
Думаю что ответ на вопрос лежит в плоскости спецификации контроллера STM32. Возможно и свободная память заведомо известна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.09.2014, 21:32
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
Там вообще памяти маловато, есть ли смысл связываться с менеджером памяти? Может выделять все на стеке? Тогда можно простой арифметикой угадать сколько памяти использовалось и сколько осталось. Хотя, может быть подключена внешняя память через FSMC. Ее уже могут быть мегабайты и можно шикануть, но, наверное и вопрос бы не возник :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.09.2014, 21:52
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
Кстати если подходить с транзактивной точки зрения то такие две операции Код: plaintext 1. 2. 3. для "посмотреть сколько" могут быть принципиально неверными ведь между ними другой процесс может затребовать память. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.09.2014, 22:02
|
|||
|---|---|---|---|
|
|||
Вопросы по malloc() |
|||
|
#18+
maytonмежду ними другой процесс Другой процесс на микроконтроллере?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.09.2014, 23:38
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
Dimitry Sibiryakovmaytonмежду ними другой процесс Другой процесс на микроконтроллере?.. Запросто. Процессы не обязательно выполняются параллельно, можно приостановить один и начать выполнять другой. Ну вспомни хотя бы TSR в досе которые вешались на IRQ. Запрашивать в них память на куче это конечно извращение, но вполне возможная вещь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.09.2014, 11:20
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
maytonКстати если подходить с транзактивной точки зрения то такие две операции Код: plaintext 1. 2. 3. для "посмотреть сколько" могут быть принципиально неверными ведь между ними другой процесс может затребовать память. Проверка пудинга заключается в том, что его съедают (английская пословица) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.09.2014, 12:33
|
|||
|---|---|---|---|
Вопросы по malloc() |
|||
|
#18+
Dimitry Sibiryakovmaytonмежду ними другой процесс Другой процесс на микроконтроллере?.. Я долго думал перед тем как писать поток/процесс но потом всё таки решил написать процесс. Не суть важно как будет реализован конкурирующий вычислительный трафик. Будь это кооперативность, прерывания или continuation. Но думаю что мемберы в топике поняли суть того что я хотел сказать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.09.2014, 17:52
|
|||
|---|---|---|---|
|
|||
Вопросы по malloc() |
|||
|
#18+
Когда году в 96-97 гг. писал свой парсер - везде между блоками вставил getfreememory() /условно/. При прогоне на тестовых данных, очень помогало своевременно обнаружить ошибку. Хотя, давно это было... вроде с тех пор, стандартный библиотеки Debug от MS VC сами научились такое делать. При запуске в Debug режиме, искать утечки памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2019297]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 292ms |
| total: | 455ms |

| 0 / 0 |
