реклама на сайте
подробности

 
 
> Использование операторов new и delete в embedded
_Макс
сообщение Jun 15 2010, 08:03
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 691
Регистрация: 24-05-07
Пользователь №: 27 945



Слышал мнение, что использовать new и delete в embedded системах не желательно. Так ли это? С чем это связано? Как можно поступить иначе?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
_Макс
сообщение Jun 15 2010, 11:48
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 691
Регистрация: 24-05-07
Пользователь №: 27 945



Сэкономил 200 байт RAM и 100 байт ROM smile.gif
Если new вызвано статически разве компилятор не выделит место сразу?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 15 2010, 12:06
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(_Макс @ Jun 15 2010, 14:48) *
Сэкономил 200 байт RAM и 100 байт ROM smile.gif
Значит где-то еще new осталось. Менеджер кучи в 100 байт ну никак не уместится.
Цитата(_Макс @ Jun 15 2010, 14:48) *
Если new вызвано статически
Это как? "Ппереведи!"


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
_Макс
сообщение Jun 15 2010, 12:19
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 691
Регистрация: 24-05-07
Пользователь №: 27 945



Цитата(Сергей Борщ @ Jun 15 2010, 15:06) *
Значит где-то еще new осталось. Менеджер кучи в 100 байт ну никак не уместится.
Это как? "Ппереведи!"

Точно new больше нету, искал по исходнику.
Я имел в виду например new int, на этапе компиляции известно о том сколько нужно выделить, значит это можно сделать заранее. Хотя сколько раз такой блок будет вызван неизвестно, только если это не конструктор...
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 15 2010, 13:09
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(_Макс @ Jun 15 2010, 15:19) *
Точно new больше нету, искал по исходнику.
Искать надо в .map Возможно, new или malloc использует какая-то из библиотечных функций.
Цитата(_Макс @ Jun 15 2010, 15:19) *
Хотя сколько раз такой блок будет вызван неизвестно, только если это не конструктор...
Вот именно. И даже если конструктор - может быть создано несколько таких объектов. Часть статически, часть автоматически (локально), часть динамически.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
_Макс
сообщение Jun 15 2010, 16:37
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 691
Регистрация: 24-05-07
Пользователь №: 27 945



Цитата(Сергей Борщ @ Jun 15 2010, 16:09) *
Искать надо в .map Возможно, new или malloc использует какая-то из библиотечных функций.

Только __data_Aldata 8 байт и free 132 байта.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- _Макс   Использование операторов new и delete в embedded   Jun 15 2010, 08:03
- - kurtis   Действительно ли у вас есть такая необходимость в ...   Jun 15 2010, 08:14
- - aaarrr   Использование динамического выделения памяти неизб...   Jun 15 2010, 08:14
- - _Макс   Да собственно ресурсов то Cortex-M3, нужен канал F...   Jun 15 2010, 09:09
|- - aaarrr   Цитата(_Макс @ Jun 15 2010, 13:09) Неужел...   Jun 15 2010, 09:14
||- - _Макс   Цитата(aaarrr @ Jun 15 2010, 12:14) Вот э...   Jun 15 2010, 09:17
||- - aaarrr   Цитата(_Макс @ Jun 15 2010, 13:17) За сче...   Jun 15 2010, 09:21
|- - MrYuran   Цитата(_Макс @ Jun 15 2010, 13:09) Да соб...   Jun 15 2010, 09:33
|- - XVR   Цитата(_Макс @ Jun 15 2010, 13:09) В функ...   Jun 16 2010, 07:35
|- - _Макс   Цитата(XVR @ Jun 16 2010, 10:35) Вызывать...   Jun 16 2010, 08:21
|- - demiurg_spb   Потому что блоки, выделяемые менеджером, обычно мн...   Jun 16 2010, 09:24
|- - _Макс   Цитата(demiurg_spb @ Jun 16 2010, 12:24) ...   Jun 16 2010, 09:30
|- - XVR   Цитата(_Макс @ Jun 16 2010, 13:30) Как мо...   Jun 16 2010, 10:01
- - Dima_G   Еще один из минусов - нереентерабельность операций...   Jun 15 2010, 10:07
|- - _Макс   Переписал push и pop, было: Код9 030 bytes of read...   Jun 15 2010, 10:38
|- - MrYuran   Цитата(_Макс @ Jun 15 2010, 14:38) Без ос...   Jun 15 2010, 10:46
|- - jorikdima   Цитата(_Макс @ Jun 15 2010, 15:48) Если n...   Jun 15 2010, 11:52
- - sigmaN   Так, для информации http://www.ibm.com/developerw...   Jun 15 2010, 15:42
|- - Dima_G   Цитата(sigmaN @ Jun 15 2010, 22:42) Так, ...   Jun 15 2010, 16:01
- - sigmaN   А сам я не читал её..так, просмотрел когда-то и в ...   Jun 15 2010, 16:18
- - skripach   ЦитатаПочему? Написано выше, читайте. Поинтересуйт...   Jun 16 2010, 09:22
- - sigmaN   Цитатаи регулировать работу менеджера? не использо...   Jun 16 2010, 14:05


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 12:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01426 секунд с 7
ELECTRONIX ©2004-2016