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

 
 
> где посмотреть сколько места занимает приложение под Nios
Fynjisx
сообщение Feb 29 2012, 13:12
Сообщение #1


студент
****

Группа: Свой
Сообщений: 571
Регистрация: 3-07-08
Из: Russia
Пользователь №: 38 712



Доброго времени.
где в Eclipse можео увидеть размер кода и даных занимаемых написанной программой?
Заранее благодарю...


--------------------
С Уважением...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
juvf
сообщение Mar 2 2012, 05:04
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



ключ -х вывел 100500 строчек "матрицы". хрен посмотришь в терминале. пришлось вывод в файл отправлять. см аттач


Цитата
набор на все случаи жизни
этот набор генерирует дамп <project>.elf.objdump файла <project>.elf >. Зачем мне дамп<project>.elf.objdump? И где размер программы?

Сообщение отредактировал juvf - Mar 2 2012, 05:08
Прикрепленные файлы
Прикрепленный файл  matrix.txt ( 117.99 килобайт ) Кол-во скачиваний: 156
 
Go to the top of the page
 
+Quote Post
barabek
сообщение Mar 2 2012, 05:55
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(juvf @ Mar 2 2012, 15:04) *
ключ -х вывел 100500 строчек "матрицы". хрен посмотришь в терминале. пришлось вывод в файл отправлять. см аттач


этот набор генерирует дамп <project>.elf.objdump файла <project>.elf >. Зачем мне дамп<project>.elf.objdump? И где размер программы?

1. Да, в консоли не посмотришь.

2. Давайте разбираться. Смотрим раздел sections. Вся информация, интересующая Вас, здесь. Видно, где располагается каждая секция и какой она занимает размер. Расположение это - VMA и LMA, т.е. виртуальный и логический адрес начала секции. Без использования мощных ОСей они одинаковы. Размер (size) - тут вообще все понятно. Теперь что касается самих секций. Есть основные, пользовательские. И есть служебные. Про них я молчу, ничего не знаю. А про пользовательские можете почитать. Вкратце опишу. Секция .text - основная Ваша программа, т.е. код написанных Вами функций. Rodata - readOnlyData - константы. rwdata - read/write data - переменные. bss - это тоже секция данных, инициализируемая нулями. exceptions - из названия понятно, что в ней располагается код исключений (в том числе и прерываний). entry - код "входа", если он есть, например, бутлоадера (но у Вас 0). Где располагаются те или иные секции - управляете Вы настройками линкера. Судя по Вашему вложению - все они в области памяти с 08000000. И Ваша секция bss занимает аж 0x00810a5f(8 456 799)байт. Эту секцию во флэш хранить не нужно, т.к. при запуске программы там будут одни нули.


Go to the top of the page
 
+Quote Post
Fynjisx
сообщение Mar 2 2012, 06:57
Сообщение #4


студент
****

Группа: Свой
Сообщений: 571
Регистрация: 3-07-08
Из: Russia
Пользователь №: 38 712



Цитата(barabek @ Mar 2 2012, 08:55) *
Где располагаются те или иные секции - управляете Вы настройками линкера.

Подскажите где это место в котором я могу задавать расположение секций? Задавал кажись уже такой вопрос на форуме...
Есть настройки BSP-editor, в которых отображаются имена секций и регионы памяти. А как задать их место положение и размер, я так и не нашел
Цитата(barabek @ Mar 2 2012, 08:55) *
Судя по Вашему вложению - все они в области памяти с 08000000.

Откуда такой вывод?


--------------------
С Уважением...
Go to the top of the page
 
+Quote Post
barabek
сообщение Mar 2 2012, 07:15
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(Fynjisx @ Mar 2 2012, 16:57) *
Подскажите где это место в котором я могу задавать расположение секций? Задавал кажись уже такой вопрос на форуме...
Есть настройки BSP-editor, в которых отображаются имена секций и регионы памяти. А как задать их место положение и размер, я так и не нашел


Во вкладке linker script. Там Вы выставляете, куда, в какую физическую память поместить конкретную секцию. Размер - зачем он Вам нужен? Что Вы под этим подразумеваете? Как можно знать, допустим, какой будет размер у секции .text до завершения компиляции? Теоретически, конечно, можно sm.gif, и то при выключенной оптимизации. И зачем этот размер задавать? Скомпилировался проект, появились данные о размерах всех секций. Дальше линкер их распихивает. В простейшем случае при одной физической памяти подряд друг за другом, а остатки под кучу. В некоторых ситуациях можно делать дополнительные секции. В общем, непонятен контекст вопроса.

Цитата
Откуда такой вывод?


Так в его файле все пользовательские секции идут одна за другой, начиная с адреса 0x08000000 секция exceptions.




Go to the top of the page
 
+Quote Post



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

 


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


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