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

 
 
> STM32F103 - Кейл. (3.85), ZI DATA - что это такое и как им управлять
Serj78
сообщение Jun 21 2010, 08:07
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499



при работе линкера после успешной сборки появляется сообщение
о размере программы:
Code= .... это размер самого кода
RO-data - это, очевидно константы во флеш
RW-data размер памяти переменных в SRAM

ZI data - мне непонятно. нечто, инициализируемое нулем.Если пытаться объявить массив его размер прибавляется к этой области.
Это понять можно, эти данные по умолчанию 0.

Нашел как управлять этой областью и включить предупреждение когда она больше чем RAM..
Но почему при минимуме переменных это значение около 8000 !
Куда зарезервировано столько памяти и как это отключить?

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение Jun 21 2010, 13:05
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Нашел в одной из статей хэлпа:
Uninitialized variables are placed in a section with type ZI

Может быть, ZI означает, что в этой области не размещены конкретные (статические) переменные? Стек - как раз такое...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 21 2010, 13:44
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(ViKo @ Jun 21 2010, 17:05) *
Может быть, ZI означает, что в этой области не размещены конкретные (статические) переменные? Стек - как раз такое...

Нет. К ZI относятся как раз статические объекты без инициализаторов, например:
Код
int a;

int main(void)
{
...
}

Переменная a будет расположена в секции ZI и обнулена во время стартапа.

Стек в данном случае оказался в ZI из-за атрибута NOINIT.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 11:25
Рейтинг@Mail.ru


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