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

 
 
> malloc и free в прерывании
Atlantis-
сообщение Dec 1 2016, 15:06
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102



Здравствуйте!
Подскажите пожалуйста, можно ли использовать функции динамического выделения памяти malloc и free в обработчике какого либо прерывания? Если да, то как примерно оценить время выполнения этой функции?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AlexandrY
сообщение Dec 1 2016, 15:17
Сообщение #2


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Atlantis- @ Dec 1 2016, 17:06) *
Здравствуйте!
Подскажите пожалуйста, можно ли использовать функции динамического выделения памяти malloc и free в обработчике какого либо прерывания? Если да, то как примерно оценить время выполнения этой функции?


Где-то можно, а где-то нельзя.
Время оценивают по таймеру и статистике. Для этого есть инструменты профайлинга.
Go to the top of the page
 
+Quote Post
Atlantis-
сообщение Dec 1 2016, 15:41
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102



Цитата(AlexandrY @ Dec 1 2016, 18:17) *
Где-то можно, а где-то нельзя.

А с чем связана разница? Где можно и где нельзя? Мне надо использовать malloc и free в обработчике прерывания USB. То есть приходит команда по USB и в обработчике я выделяю или освобождаю память.


Go to the top of the page
 
+Quote Post
novikovfb
сообщение Dec 2 2016, 05:47
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 518
Регистрация: 29-09-11
Пользователь №: 67 450



Цитата(Atlantis- @ Dec 1 2016, 18:41) *
А с чем связана разница? Где можно и где нельзя? Мне надо использовать malloc и free в обработчике прерывания USB. То есть приходит команда по USB и в обработчике я выделяю или освобождаю память.

Почитайте про понятие реентерабельности функций и посмотрите, как работают функции malloc и free в Вашей системной библиотеке. Может получиться, что прерывание возникнет в момент выполнения функции malloc или free, в прерывании будет вызвана функция malloc или free, может получиться либо выделение одного и того же буфера двум разным указателям или полное разрушение структуры кучи.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Atlantis-   malloc и free в прерывании   Dec 1 2016, 15:06
|- - zltigo   QUOTE (Atlantis- @ Dec 1 2016, 17:41...   Dec 1 2016, 15:47
|- - Atlantis-   Цитата(novikovfb @ Dec 2 2016, 08:47) Поч...   Dec 2 2016, 06:20
|- - novikovfb   Цитата(Atlantis- @ Dec 2 2016, 09:20...   Dec 2 2016, 06:46
|- - k155la3   Цитата(Atlantis- @ Dec 2 2016, 09:20...   Dec 2 2016, 07:07
|- - esaulenka   Цитата(k155la3 @ Dec 2 2016, 10:07) В пре...   Dec 2 2016, 07:48
|- - megajohn   Цитата(esaulenka @ Dec 2 2016, 10:48) А в...   Dec 2 2016, 09:21
|- - zltigo   QUOTE (esaulenka @ Dec 2 2016, 09:48) А в...   Dec 2 2016, 09:56
||- - novikovfb   Цитата(zltigo @ Dec 2 2016, 12:56) время ...   Dec 2 2016, 10:15
|||- - zltigo   QUOTE (novikovfb @ Dec 2 2016, 12:15) с к...   Dec 2 2016, 12:03
||- - Atlantis-   Цитата(zltigo @ Dec 2 2016, 12:56) Что Вы...   Dec 2 2016, 11:17
||- - AlexandrY   Цитата(Atlantis- @ Dec 2 2016, 13:17...   Dec 2 2016, 11:52
||- - Atlantis-   Цитата(AlexandrY @ Dec 2 2016, 14:52) Реж...   Dec 2 2016, 12:18
||- - AlexandrY   Цитата(Atlantis- @ Dec 2 2016, 14:18...   Dec 5 2016, 14:23
|- - k155la3   Цитата(esaulenka @ Dec 2 2016, 11:48) (1)...   Dec 2 2016, 12:54
|- - jcxz   Цитата(esaulenka @ Dec 2 2016, 10:48) Есл...   Dec 3 2016, 10:50
- - Atlantis-   Понятно, а если эта куча выделена во внешней SDRAM...   Dec 2 2016, 07:06
- - Atlantis-   Померял осциллографом время выполнения malloc, вып...   Dec 2 2016, 09:33
- - haker_fox   QUOTE (Atlantis- @ Dec 1 2016, 23:06...   Dec 2 2016, 15:54
- - jorikdima   Если ксть СДРАМ, которой обычно много, вы уверены,...   Dec 2 2016, 18:49
|- - Atlantis-   Цитата(jorikdima @ Dec 2 2016, 21:49) Есл...   Dec 5 2016, 07:33
|- - novikovfb   Цитата(Atlantis- @ Dec 5 2016, 10:33...   Dec 5 2016, 10:04
|- - Atlantis-   Цитата(novikovfb @ Dec 5 2016, 13:04) есл...   Dec 5 2016, 12:10
- - Valentine Loginov   Просто пройду мимо и плюсану тех, кто говорил про ...   Dec 8 2016, 07:42
- - Atlantis-   Цитата(Valentine Loginov @ Dec 8 2016, 10...   Dec 8 2016, 08:45


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

 


RSS Текстовая версия Сейчас: 23rd June 2025 - 20:52
Рейтинг@Mail.ru


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