Ada_Ru форум

Обсуждение языка Ада

Re: about_all & gcc

Оставить новое сообщение

Сообщения

Maxim Reznik
Re: about_all & gcc
2007-03-28 14:14:23

On Tue, Mar 27, 2007 at 03:20:25PM +0400, Vladimir S. Troshin wrote:

 

 

Добрый день, Максим!

 

По поводу AdaGIDE вопрос, я думаю, не стоит поднимать, ибо в нём уже никто не пишет, а объём кода уже много раз обсуждали. Пожалуй, я

Да, дискуссии не получилось :(

 

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

Конечно. Кстати, опции очень подробно документированы в GNAT User Guide. Я сам туда лажу, когда не хватает gnatmake -h

 

действительно интересует малый размер кода, с перспективой для

встроенных систем.

Ну тут какбы особых вариантов нет. Ставим -O2 чтоб работала

оптимизация, -gnatn чтобы процедуры описанные через pragma Inline в других модулях подставлялись. Если 100% уверенны в правильности программы можно поставить -gnatp - и задавить любые проверки

предусмотренные языком, типа ограничения границ массива, диапазона и пр. Но это IMHO уже крайняя мера, лучше отключать проверки на

определенных участках используя pragma Suppress (или как там),

если уж хочется что-то сильно ускорить.

 

Естественно на примере Hello_World это все не будет иметь

заметного эфекта, т.к. 99.99% этого исполняемого модуля составляет адский RTL, на него эти опции не распространяются. Во встроенной

системе либо будет своя версия этого RTL, либо вообще не будет,

так называемый bare board режим.

 

 

Ещё интересует gcc - его упомянул Богдан Целлер (Келлер?) - где

скачать стабильную версию 4.2.0 что-ли? Он в письме обещает неплохие результаты, но работает в QNX, что ценно, но пока не имею возможности поставить эту операционку.

 

Вообще исходные тексты и документация доступны на http://gcc.gnu.org/ Бинарные дистрибутивы вроде лежат отдельно.

Для QNX вариант Богдана - единственный, как я понимаю.

Для Windows наверное есть несколько вариантов.

* В составе пакета Cygwin http://www.cygwin.com/

* В составе пакета MinGW http://www.mingw.org/

* на сайте http://gnuada.sourceforge.net/ (ой, что-то он сломился)

Вообще можно попытаться и самому скомпилировать из исходных

текстов, но путь это тернистый. Мы пытались законспектировать,

где какие грабли лежат http://www.ada-ru.org/comp_gnat.html ,

но это было давненько, явно будут и новые.

 

Вообще наилучшие результаты даст GNAT GPL от AdaCore, если

нет затруднений с лицензией GPL я бы рекомендовал использовать

его.

 

 

По gcc из литературы, как понял, с трудом можно раздобыть

Гриффитса. Где же полнее описание, или яснее написано применительно к Ada из его двух книг?

Не читал :(

 

Можно посмотреть документацию по GCC http://gcc.gnu.org/onlinedocs/ Там есть GNAT User Guide и GNAT Reference Manual. На буржуйском,правда.

Кстати, о литературе. Небезызвестный Корочкин с

сайта не скачивается, а Гавва хорош, - кто спорит? - но нет в .doc формате - в .pdf, однако, очень долго распечатывается.

Ммм... (астдай?)

 

Дополнительное неудобство: Акробат шлёпает

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

Может взять Акробат по новее? У меня 7.0, умеет распечатать сначало четные, затем нечетные страницы в заданном диапазоне.

 

Конечно, так сохраняется авторское право, но - ёлки

зелёные - всякое правообладание уже затормозило продвижение Ады в массы.

 

А может Александр нам ответит? :)

 

 

С уважением,

 

from V.S.

 

--

Maxim Reznik

Maxim Reznik wrote:

On Tue, Mar 27, 2007 at 03:20:25PM +0400, Vladimir S. Troshin wrote:

действительно интересует малый размер кода, с перспективой для

встроенных систем. Ну тут какбы особых вариантов нет. Ставим -O2 чтоб работала

 

Есть. :-) За оптимизацию по размеру кода отвечает -Os :-)

 

-- Olleg Samoylov

Olleg wrote:

 

действительно интересует малый размер кода, с перспективой для

встроенных систем.

Ну тут какбы особых вариантов нет. Ставим -O2 чтоб работала

 

 

Есть. :-) За оптимизацию по размеру кода отвечает -Os :-)

 

Простите, что вмешиваюсь, ни черта не понимая во встроенных системах,

но не могу не заметить вот чего. На мой взгляд, вопрос о размере

кода для встроенных систем уже сейчас - третьестепенный, а вскорости

и вовсе будет забыт за ненадобностью. Сами помудите - флешка

на 8 гигабайт сейчас стоит три копейки. А будет - на 40 гигабайт

стоить копейку. И кого в этой ситуации станет волновать размер кода?

Maxim Reznik wrote:

 

Ну тут какбы особых вариантов нет. Ставим -O2 чтоб работала

оптимизация,

Вот кажется мне почему-то, что не очень популярна оптимизация именно в секторе embedded mission critical систем.

 

PS. На собственном опыте не раз нарывался на ошибки оптимизации кода.

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

на 8 гигабайт сейчас стоит три копейки. А будет - на 40 гигабайт стоить копейку. И кого в этой ситуации станет волновать размер кода?

 

А причем тут флешка. Размер внешнего носителя естественно мало

кого волнует, волнует размер в памяти. И волнует этот вопрос по-прежнему, динамика цен на китайские флешдиски с этим не кореллирует никаким образом.

ВФ

Vasiliy Fofanov wrote:

 

А причем тут флешка. Размер внешнего носителя естественно мало

кого волнует, волнует размер в памяти. И волнует этот вопрос по-прежнему,

динамика цен на китайские флешдиски с этим не кореллирует никаким образом.

 

А кого именно и в каких пределах волнует размер в памяти?

 

Ребята из КБ Сухого, что ко мне на спецкурс ходили, говорили, что

у них уже давно нет проблем ни с размером кода, ни с производительностью

(то есть - все и влезает с запасом, куда надо, и успевает с запасом чего надо)

On Wed, 28 Mar 2007 18:59:56 +0400, you wrote:

 

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

 

Возможно, хотя, в зависимости от целевой платформы, размер памяти может быть существенно ограничен. О том, с чем я сталкивался. В системах контроля моторов (клапаны, впрыск, и.т.д.) это - 1Мб. Для персональных приборов измерения концентрации газов это еще в 3-4 раза меньше. Особенно в последнем случае типичная отговорка, помимо очевидного вопроса стоимости (миллионные серии), это еще потребление тока. Аккумуляторы - самая слабая деталь.

 

Ну и конечно, сертификация, хотя к оптимизации это отношения не имеет, но чем больше размер исходного кода - дороже будет.

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

Dmitry A. Kazakov wrote:

 

Ну и конечно, сертификация, хотя к оптимизации это отношения не имеет, но

чем больше размер исходного кода - дороже будет.

 

Кстати, интересный вопрос. Он - действительно отдельный от оптимизации

и размера. Позволю себе две реплики, если будет интересно - давайте новую

тему откроем.

 

1. Во-первых, далеко не всегда "чем больше размер исходного кода - дороже будет".

Еще ж от хитрозакрученности кода зависит!

 

2. Ада - единственный язык, позволяющий *эффективно* автоматизировать,

процесс сертификации. Скоро выйдет очередной GNAT GPL - посмотрите

в нем такую штуку, как gnatcheck. Этот инструмент проверяет

выполнение на исходном тексте тех или иных правил. Набор правил

может быть расширен относительно малой кровью. Если добавить

правила, соответствующие конкретной процедуре сертификации -

сертификация пройдет на порядок быстрее и будет стоить куда дешевле.

28.03.07, Sergey I. Rybin<rybin@adacore.com> написал(а):

Vasiliy Fofanov wrote:

 

> А причем тут флешка. Размер внешнего носителя естественно мало

> кого волнует, волнует размер в памяти. И волнует этот вопрос по-прежнему,

> динамика цен на китайские флешдиски с этим не кореллирует никаким образом.

 

А кого именно и в каких пределах волнует размер в памяти?

 

Ребята из КБ Сухого, что ко мне на спецкурс ходили, говорили, что

у них уже давно нет проблем ни с размером кода, ни с производительностью

(то есть - все и влезает с запасом, куда надо, и успевает с запасом чего

надо)

 

авиация - плохой пример embedded

там нет ограничений по мощности потребления(на спутниках уже лучше :) ),

и, главное, цена в общем-то тоже не критична

 

Хуже всего поделки вроде клавитатуры(5$ в розницу),

хотя это я уже сильно круто хватил :)

 

Ну хотябы PDA или сотовые телефоны. Особенно в нижнем

ценовом диапазоне.

 

Vladimir

hi,

 

Дополнительное неудобство: Акробат шлёпает

страницу за страницей, а Вордом можно разложить их на нечётный ряд и

затем на чётный (перевернув стопку бумаги) - то есть печатать с двух

сторон листа.

Может взять Акробат по новее? У меня 7.0, умеет распечатать сначало

четные, затем нечетные страницы в заданном диапазоне.

хм... акробат ешшо и задом-на-перёд распечатывать умеет, и не только под Windows-ами.

Да и верстку я делал на Linux в LaTeX-е, а Акробат тогда у меня был, вообще 4-й.

В общем, формат PDF, потому что это portable(!), а DOC-файл надо только каким-то

офисом смотреть (и бывают глюковарианты даже под Windows-ами).

 

Конечно, так сохраняется авторское право, но - ёлки

зелёные - всякое правообладание уже затормозило продвижение Ады в

массы.

А может Александр нам ответит? :)

э-э-э... чё-т я не понял чьё/какое "правообладание уже затормозило продвижение Ады в массы"?

 

Alex

hi,

 

Vadim Godunko wrote:

 

Maxim Reznik wrote:

Ну тут какбы особых вариантов нет. Ставим -O2 чтоб работала

оптимизация,

Вот кажется мне почему-то, что не очень популярна оптимизация именно в секторе embedded mission critical систем.

 

PS. На собственном опыте не раз нарывался на ошибки оптимизации кода.

На моей памяти (или по моему опыту) все оптимизации в embedded поделках делались строго ручками, а не с помощью компилятора. Так как-то надёжнее получалось. Правда, давненько это было...

 

Alex

30.03.07, Oleksandr Havva<alex@lviv.bank.gov.ua> написал(а):

hi,

 

>>Дополнительное неудобство: Акробат шлёпает

>>страницу за страницей, а Вордом можно разложить их на нечётный ряд и

>>затем на чётный (перевернув стопку бумаги) - то есть печатать с двух

>>сторон листа.

>>

>>

>Может взять Акробат по новее? У меня 7.0, умеет распечатать сначало

>четные, затем нечетные страницы в заданном диапазоне.

>

>

хм... акробат ешшо и задом-на-перёд распечатывать умеет, и не только под

Windows-ами.

Да и верстку я делал на Linux в LaTeX-е, а Акробат тогда у меня был,

вообще 4-й.

В общем, формат PDF, потому что это portable(!), а DOC-файл надо только

 

это потому что кое-кто очень хотел на чем-нить бабок срубить,

ну а придумать ничего лучше PDF не смогли :)

 

в общем PDF легко конвертиться в HTML, куда уж портабельнее HTML?

И весит при этом в 2 раза меньше...

 

каким-то

офисом смотреть (и бывают глюковарианты даже под Windows-ами).

 

вообще-то умные люди в .DOC пишут обычный RTF,

ну а вордовский док пишут те кто увидели что кто-то пишет в док,

а разобраться что там внутри ума не хватило :)

В общем давить надо эти DOC как класс чтобы не было

путанницы и ламерам не надо было разъяснять что посылать

форматы зависящие от версии и платформы как миниум не прилично...

 

Vladimir

03.04.07, Vladimir S. Troshin<vstro@front.ru> написал(а):

 

 

> 28.03.07, Sergey I. Rybin<rybin@adacore.com> написал(а):

>> Vasiliy Fofanov wrote:

>>

>> > А причем тут флешка. Размер внешнего носителя естественно мало

>> > кого волнует, волнует размер в памяти. И волнует этот вопрос

> по-прежнему,

>> > динамика цен на китайские флешдиски с этим не кореллирует никаким

> образом.

>>

> авиация - плохой пример embedded

> там нет ограничений по мощности потребления(на спутниках уже лучше :)

> ),

> и, главное, цена в общем-то тоже не критична

>

> Хуже всего поделки вроде клавитатуры(5$ в розницу),

> хотя это я уже сильно круто хватил :)

>

> Ну хотябы PDA или сотовые телефоны. Особенно в нижнем

> ценовом диапазоне.

>

> Vladimir

>

> Есть, конечно, возможность использования в Ада-программах написанное

> на ассемблере, Си, их дядюшке "Jo" - который встраивается в

> Ада-написанное, но нам недоступен. Была тема и прошла мимо -

> заказчик не состоялся, ибо посчитал Аду устаревшим языком - по

 

;)

 

> обработке сигнала ч/з Фурье. В результате стали они писать то-ли на

 

такие вещи вообще-то делаются на ассемблере с оптимизацией

под архитектуру. Для интела и многих DSP есть готовые библиотеки...

(такие процедуры обычно не большие и их не трудно написать хоть на чем,

а вот там где уже будет обработка результатов fft или коррелятора и вся

остальная сложная логика лучше уже писать красиво, а то глюки не заметишь :)

Вон у американов помниться ракетная установка из-за ошибки в программе

вообще на прицел своих брала :) )

Сама программа уже использует готовые функции fft.

 

> Си, то-ли на Форте. Думаю, не успеют, ибо как сообщил корифей по этой

> части - "прокоррелировать множество сигналов даже в медленной

> гидроаккустике мы не успеваем на Си". Другие ребята нашли выход:

> обработка радиолокационного сигнала на входе в ПЛИС, а остальное в Си

 

тоже вариант

 

кстати поройся на elhpel.com, там должны быть ссылки на sf.net где схемы

и прошивки лежат - у него блок на fpga делает часть работы по обработке

изображения. Не совсем коррелятор конечно, но для примера пойдет...

 

> (они в другом не пишут). То есть Богу - богово, а Кесарю - понятно. Но

> Ада хорошо документируется, а потребность в шустрых и/или компактных

> вставках существует.

 

вставки в кодах никто не запрещает делать,

а вот остальную логику уже удобнее и надежнее писать на Ада.

 

Vladimir

Александр, прошу простить - без личностей и упрёков! Каждая книга на русском по Аде на вес золота. Хотелось бы модифицировать текст (добавить колонтитулы, изменить формат и пр.) и распечатать в удобном виде, для себя. И не нести за это ответственность.

 

За распечатывание для себя вы ответственность уж точно нести не будете.

 Претензии же к МО США, ревнителям правообладания.

 

По-моему вам каких-то страшилок нарассказывали по этому поводу :)

ВФ

03.04.07, Vasiliy Fofanov<fofanov@act-europe.fr> написал(а):

> Александр, прошу простить - без личностей и упрёков! Каждая книга на

> русском по Аде на вес золота. Хотелось бы модифицировать текст (добавить

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

> себя. И не нести за это ответственность.

 

За распечатывание для себя вы ответственность уж точно нести не будете.

 

ну это смотря где

 

в России вроде нет (по крайней мере раньше так было,

а сейчас там вроде какую-то новую революцию всвязи с 4й главой ГК

готовят - надо будет еще почитать, а то чую ща примут че-нить :) ) - типа

использование петентов в личных не коммерческих целях не считалось

нарушением. Впрочем книга это под копирайт попадает, тут при желании

какой-нить контрафакт можно подтянуть (это пока пофиг всем тк никто этим

не занимается просто, ну а законы еще со времен СССР были очень крутые,

при желании до фонарного столба можно докапаться :) )

 

а во Франции?

 

В США я так понял докапаться можно и до домашнего использования - можешь

спросить у Юрия подробнее, он на патентных делах специализируется...

Кстати вот рассылка по околопатентной :) тематике, там можно поболтать

на околопатентные :) и околокопирайтные :) темы, Юрий вроде на нее подписан...

http:groups.google.ru/group/z9_invent_talk

 

 

> Претензии же к МО США, ревнителям правообладания.

 

По-моему вам каких-то страшилок нарассказывали по этому поводу :)

 

эти по-моему нынче только за торговую марку могут подтянуть,

так что если переименовать, то вроде как можно делать все что угодно...

 

Vladimir

Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти