|
Распределение ОЗУ, в STM32F4 и FreeRTOS |
|
|
|
 |
Ответов
|
Oct 7 2016, 08:10
|
Местный
  
Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102

|
Цитата(Сергей Борщ @ Oct 7 2016, 08:28)  Что такое в вашем понимании "куча процессора" и где, по вашему мнению, она находится? В оперативной памяти выделяется некая область heap. Я программирую в Keil, поэтому для меня это значения в файле startup: Heap_Size - размер области и __heap_base - это видимо начальный адрес. То есть выделяется данная область в памяти, которая служит для динамического выделения памяти. Иными словами, объявляя переменную в программе я точно знаю, что в область heap она не попадет, а если я буду использовать malloc, то эта функция вернет мне адрес выделенной памяти из области heap (если конечно я не запрошу выделить памяти больше, чем эта область)
|
|
|
|
|
Oct 7 2016, 09:06
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (Atlantis- @ Oct 7 2016, 11:10)  В оперативной памяти выделяется некая область heap. Я программирую в Keil, поэтому для меня это значения в файле startup: Heap_Size - размер области и __heap_base - это видимо начальный адрес. То есть выделяется данная область в памяти, которая служит для динамического выделения памяти. Иными словами, объявляя переменную в программе я точно знаю, что в область heap она не попадет, а если я буду использовать malloc, то эта функция вернет мне адрес выделенной памяти из области heap (если конечно я не запрошу выделить памяти больше, чем эта область) Пока Вы совершенно не понимаете, что творите, и произносите слова типа " из кучи процессора" и путать компиляторы с процессорами, возьмите просто обертку над тем malloc, который находтся в кейловских библиотеках. Обертки находятся в одном из вариантов heap_x из компелкта поставки FreeRTOS. Потом, когда нибудь, научитесь под heap просто отдавать ВСЮ свободную память.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Oct 7 2016, 09:32
|
Местный
  
Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102

|
Цитата(zltigo @ Oct 7 2016, 12:06)  Пока Вы совершенно не понимаете, что творите, и произносите слова типа " из кучи процессора" и путать компиляторы с процессорами я просто хотел разделить две кучи, имея ввиду, что у RTOS она своя
|
|
|
|
|
Oct 7 2016, 15:23
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (Atlantis- @ Oct 7 2016, 12:32)  я просто хотел разделить две кучи, имея ввиду, что у RTOS она своя С какого бодуна требуется иметь две кучи? Что бы потерять возможность гибко делить память и увеличить дефрагментацию? Хотя все даже хуже - та которая "не RTOS" не используется в принципе, раз работает RTOS. Посему выбор ОДНОГО из менеджеров кучи предлагаемых в комлекте RTOS, или какого либо из стронних, например, того-же кейловского. Я так-же на этом форуме выкладывал свой менеджер кучи и объяснял причины его появления.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
Сообщений в этой теме
Atlantis- Распределение ОЗУ Oct 6 2016, 12:52 jcxz Всю память распределяете Вы сами посредством коман... Oct 7 2016, 04:12     Atlantis- Цитата(zltigo @ Oct 7 2016, 18:23) С како... Oct 8 2016, 14:31      zltigo QUOTE (Atlantis- @ Oct 8 2016, 17:31... Oct 8 2016, 15:40       Atlantis- Цитата(zltigo @ Oct 8 2016, 18:40) Это со... Oct 8 2016, 18:46        zltigo QUOTE (Atlantis- @ Oct 8 2016, 21:46... Oct 8 2016, 21:16 HardEgor Цитата(Atlantis- @ Oct 6 2016, 19:52... Oct 7 2016, 16:03
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|