Перейти к содержанию
    

Ситуация такая:

Код редактирую в Eclipse, при этом IAR находится в свернутом состоянии. Код на проверку ошибок компилю в Eclipse через makefile, а IAR держу только для отладки.

Поскольку комп слабоват, то время от времени наблюдаются торможения. Опытным путем было определено что эти торможения происходят в момент когда IAR просматривает файлы на изменения. Данная процедура происходит у него очень часто, что довольно таки и нервирует.

Галка на параметр "Scan for chenged files" -- не помогла.

Есть ли какие иные варианты настройки в результате использования которых IAR будет сканировать файлы только в тот момент когда я его непосредственно прошу откомпилировать код?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что значит "процедура происходит у него очень часто"? IAR перечитывает файлы, в которых не было изменений? Как это можно проверить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мной было замечено, что антивирусная программа DrWeb сильно тормозит IAR. Причем, не только в процессе работы, но и при запуске (особенно).

Торможение проявляет себя еще и тем, что в нижней строке (где Errors) зеленые кубики двигаются, причем даже после того, как результирующий файл для прошивки уже получен.

 

Поэтому я во время интенсивной работы с IAR антивирусник отключаю.

Как видут себя другие антивирусные программы, не знаю, однако имеет смысл проверить, не изменится ли дело к лучшему при временном отключении активности этих программ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Был момент когда DrWeb удалял несколько DLL от IARa, после этого доктора переключил чтоб не удалял файлы, а перемещал в карантин. В DrWeb написал о ложном срабатывании и после следующего обновления он перестал удалять DLL, но осадок остался :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Был момент когда DrWeb удалял несколько DLL от IARa, после этого доктора переключил чтоб не удалял файлы, а перемещал в карантин. В DrWeb написал о ложном срабатывании и после следующего обновления он перестал удалять DLL, но осадок остался :)

 

Ложное срабатывание антивирусных программ - это совершенно иная категория, нашей темы не касающаяся. Сейчас же мы обсуждем только симптом "торможения".

 

Лично у меня сложилось впечатление, что DrWeb'а шокируют pbi-файлы, которые IAR пишет в директорий OBJ. Отчего-то он над ними очень долго думает. Когда-то такое случалось с pdf-ками. Порой в pdf-файле всего 2 Мб, а DrWeb думал над ним секунд 15-20. А уж скопировать директорий с pdf-ками статей было сплошным мучением. Но потом что-то сделали и задержки на pdf-ках пропали. А теперь мне кажется, что pbi-файлы вызывают у DrWeb аллергию. И хотя к вирусам он их не относит, чешется при их записи на диск очень долго.

 

P.S. Тем не менее, DrWeb - мой любимый антивирусник, и отказываться от него я не собираюсь! :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

IAR перечитывает файлы, в которых не было изменений? Как это можно проверить?

Не знаю, всех или не всех файлов происходит перечитывание, но как упомянула Xenia

Торможение проявляет себя еще и тем, что в нижней строке (где Errors) зеленые кубики двигаются, причем даже после того, как результирующий файл для прошики уже получен.

Вот как раз в данный момент времени и происходит торможение.

У меня никакого антивирусника не стоит. Для данного железа антивирусник -- перебор, а новое купить -- кризис :(

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Торможение проявляет себя еще и тем, что в нижней строке (где Errors) зеленые кубики двигаются, причем даже после того, как результирующий файл для прошивки уже получен.

"Зелёные кубики" :rolleyes: (у меня кстати - синие) двигаются после компиляции не из-за антивируса, а скорей всего потому что у вас вероятно IAR версии >= 6.xx и в настройках

разрешено Tools\Options\Project\Generate browse information.

Это разрешение всяких красивостей типа свёртывания/развёртывания функций и т.п.

При этом IAR генерит кучу индексных файлов (загляните в директорию с объектными файлами).

Отключите эту опцию и, после перезапуска IAR (и предварительного стирания этой директории), сразу увидите насколько она стала меньше (там останутся одни только объектные файлы).

 

А перечитывание изменённых файлов происходит очень быстро и незаметно для глаза и отключать его не стоит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Зелёные кубики" :rolleyes: (у меня кстати - синие) двигаются после компиляции не из-за антивируса, а скорей всего потому что у вас вероятно IAR версии >= 6.xx и в настройках

разрешено Tools\Options\Project\Generate browse information.

Это разрешение всяких красивостей типа свёртывания/развёртывания функций и т.п.

При этом IAR генерит кучу индексных файлов (загляните в директорию с объектными файлами).

Отключите эту опцию и, после перезапуска IAR (и предварительного стирания этой директории), сразу увидите насколько она стала меньше (там останутся одни только объектные файлы).

 

Верно! Отключила. ... Какое счастье! :)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Зелёные кубики" :rolleyes: (у меня кстати - синие) двигаются после компиляции не из-за антивируса, а скорей всего потому что у вас вероятно IAR версии >= 6.xx и в настройках

разрешено Tools\Options\Project\Generate browse information.

Эта чешуя появилась с версии 6.3. Там они начали генерировать информацию о внутренних структурах и типах. Папка с проектом вырасла с 25 Мб до >500 Мб!!!!

И, нехорошие люди, перенесли кнопочку списка функций с нижнего левого угла до верхнего правого! :cranky:

Вот по мне так список функций полезен, для быстрого перехода, а вот информаця по типам, переменным, генерирующая черезчур большой объем - лишняя в данном ее проявлении. А отключаются они только вместе. Печаль. :(

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот по мне так список функций полезен, для быстрого перехода, а вот информаця по типам, переменным, генерирующая черезчур большой объем - лишняя в данном ее проявлении. А отключаются они только вместе. Печаль. :(

Я думаю, что информация по типам, структурам и пр. не должна занимать такой большой объём (в десятки раз больше объёма исходного кода).

По уму объём её должен быть меньше объёма исходников. Даже много меньше. Так как можно хранить компактно в бинарном виде.

И тогда должен влезать просто в ОЗУ без необходимости тормозного сохранения на диск.

Вероятно написано очень криворукими халтурщиками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я думаю, что информация по типам, структурам и пр. не должна занимать такой большой объём (в десятки раз больше объёма исходного кода).

По уму объём её должен быть меньше объёма исходников. Даже много меньше. Так как можно хранить компактно в бинарном виде.

И тогда должен влезать просто в ОЗУ без необходимости тормозного сохранения на диск.

Вероятно написано очень криворукими халтурщиками.

Ну вообще, там хранятся все объявления для всех исходных файлов, всех включаемых файлов, информация об именах файлов и номерах строк объявлений и определений, деревья вызовов и чёрт знает что ещё. Так что про много меньше сомневаюсь.

Ну и про "влезать просто в ОЗУ" - так не бывает. Не, ну есть извращенцы, отключающие своп, но они ж исключение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насчёт "деревьев вызова" - думаю вы ошибаетесь - это уже функция компилятора отслеживать выполнение и вообще - смысл.

Там же скорей всего то что делает препроцессор - собственно парсер синтаксиса, распознавание элементов языка (переменных, констант,

структур, функций и т.п.). Просто определить их границы в тексте и имена чтобы связать для быстрой навигации по исходникам.

Такая информация по уму должна занимать места меньше чем сам текст (ну только если в тексте все символические имена однобуквенные,

и текст максимально сжат, тогда будет сравнимый объём).

А насчёт включаемых файлов - так ведь можно включить просто ссылки на эти файлы, а можно - целиком их содержимое.

В IAR похоже сделали второе.

 

А насчёт парсинга сишного синтаксиса - я делал сам что-то подобное (обработка текста, с выделением синтаксических единиц

и созданием базы информации о тексте). Занимает это по времени (даже для исходников размером порядка мегабайта)

на современном процессоре время, незаметное для глаза.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... так ведь можно включить просто ссылки на эти файлы....

 

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

удаление всех бряков только и спасает...это ещё с 4 студии тянется... :)

Изменено пользователем kolobok0

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я думаю, что информация по типам, структурам и пр. не должна занимать такой большой объём (в десятки раз больше объёма исходного кода).

По уму объём её должен быть меньше объёма исходников. Даже много меньше. Так как можно хранить компактно в бинарном виде.

 

Не всегда. Порой индексные файлы для БД занимают места больше, чем сама таблица. И тут уж ниукуда не денешься!

 

Должен признать, 7.2 по сравнению с 6.3 создаваемая информация имеет куда меньший объем. 60Мб против > 250Мб. Но все равно, это больше, чем 6.2 со своим 0Мб

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насчёт "деревьев вызова" - думаю вы ошибаетесь - это уже функция компилятора отслеживать выполнение и вообще - смысл.

IDE предоставляет возможность навигации по коду, в том числе переход к объявлениям/определениям подсвеченных курсором сущностей и к ссылкам на них.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...