Страниц: 1 ... 9 10 [11] 12
  Печать  
Автор Тема: ADA и QNX  (Прочитано 86995 раз)
olej
QOR.Team
****
Offline Offline

Сообщений: 42



Просмотр профиля
« Ответ #150 : Июля 10, 2006, 09:54:54 pm »

mike
bbceler ваши сборки из любви к искусству или для реальных проектов?

А какая, собственно, разница...
Будь у меня некоторая уйма своюодного времени , чтобы засесть за Ada, и перераскрутить на нём все заделы, которые у меня есть на C/C++ ... да не задумываясь сделал бы, беря во внимание те плюсы в "надёжностном" программировании обещает Ada (это - IMHO)!
bbceler делает большое дело, хотя бы поддерживая сборки Ada ... в адекватном состоянии другим, более распространённым, платформам: спасибо большое ему за это.
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #151 : Марта 16, 2007, 03:14:25 pm »

Привет всем в новым году - я пишу первый раз в 2007 году.
На http://www.ajam.org.pl/ я выложил новые версии gcc - gcc 4.1.2, gcc 4.2.0, gcc 4.3.0 и gnat4.1.2, gnat4.2.0, gnat4.3.0.
Я решил делать тестироване на уровне -O3 ( до сих пор было -O2).
Оказываеться, что только gnat4.2.0 дает очень харошие результаты -
        === acats Summary ===   <= -O2 and -O3
         # of expected passes            2311
         # of unexpected failures        1
         *** FAILURES:   c380004
gnat4.1.2 и gnat4.1.3  дають 11 ошибочных тестов. gnat4.3.0 еще очень експериментальный.
Наканец то я нашол время и портировал GTK на QNX . И смог скомпилировать GtkAda-2.10.0.
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #152 : Мая 15, 2007, 03:45:15 pm »

Появилась новая версия gnat - GNAT GPL 2007.
Тепер gnat от Ada Core основан на gcc 4.x
Я выложил новую версию на http://www.ajam.org.pl/  
Как всегда я провёл тесты. Очен интересно выгладят тесты по скорости выполнения. Эта версия опережаеть все предыдуше и это касаеться всех версии тй gnat 4.2 и gnat 4.3.
Записан
olej
QOR.Team
****
Offline Offline

Сообщений: 42



Просмотр профиля
« Ответ #153 : Мая 15, 2007, 03:50:51 pm »

bbceler
Появилась новая версия gnat - GNAT GPL 2007.

bbceler, а можно вас попросить дублировать такие новости ещё и сюда:
http://www.qnxclub.net/modules.php?name=Forums&file=viewforum&f=8
?
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #154 : Мая 18, 2007, 03:52:59 am »

Каждый раз я использую для измерения скорости выполнения
 Dhrystone Benchmark, Version 2.1 (Language: Ada).
Каждый тест делаеть 10 000 000 пробегов. Результат это средная из 5 тестов.
Вот результаты для всех компиляторов gnat  начиная от версии 3.4.6 по 4.3.
1   gnatmake -O3 -fomit-frame-pointer -o dhry_opt1_gcc main
2   gnatmake -O3 -fomit-frame-pointer -gnatp -o dhry_opt2_gcc main
3   gnatmake -gnatn -O3 -fomit-frame-pointer -gnatp -o dhry_opt3_gcc main
4   gnatmake -o dhry_std_gcc main
5   gnatmake -O2 -fomit-frame-pointer -o dhry_opt4_gcc main

                 3.4.6               4.1.2                 4.1.3              GPL-2007          4.2.0                 4.3.0
=================================================================================== ===  
1 => 3.073929616  2.819368570  2.817168907  2.602201802  2.851563644  2.829966948
2 => 2.829966948  2.325444152  2.428428393  2.178866582  2.324044366  2.382035492
3 => 2.832766520  2.326443999  2.428428393  2.177266827  2.323644428  2.385035033
4 => 6.901343932  7.241091943  7.269087659  6.603189557  6.570594545  6.569394728
5 =>                           2.957147487  2.877159727  3.175714041  2.828967101

Обратите внимание на разницу между 4.1.3 а GPL-2007. GPL-2007 основан на gcc4.1.3.
Но gnat 4.1.3 силно отличаеться от gnat GPL-2007  и может из за этого такой результат.
Я еще не провёл проверки для офицяльной версии gnat 4.2.0 каторая только что появилась.
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #155 : Мая 18, 2007, 04:01:33 am »

Извените но эт что я послал не выгладить так как должно.
Я не нашол возможности просмотра сообшеня перед высылкой.
5 линия касаеться только версии 4.1.3, GPL-2007, 4.2.0 и 4.3.0
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #156 : Июля 26, 2007, 03:27:30 pm »

Появилась стабильная версия gnat4.2.1.
С точки зрения ады то изменений по сравнени с версей 4.2.0 немного.
И еще одна новость. Оказываеться что есть не только GtkAda,
но и сушестьвуеть QTAda. Я скомпилировал последнию версию. Проект поко думаю в начальней стади, но работаеть.
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #157 : Февраля 25, 2008, 03:20:34 am »

Имеем новые версии gnat : gnat4.2.3, gnat4.3.0 и gnat4.4.0.
Версии 4.3 а 4.4 с точки зрения языка ada пока одинаковы. Отличаються с точки зрения внутренности gcc.
gnat4.2.3 работаеть стабильно. Без проблем можна скомпилировать самую последную версиу GtkAda. Но эта версия не вполни подделживает аду 2005. Так как я уже наверно писал работа над версей gnat4.2.х практически прекращена. Работы ведутся в 4.3 и тепер думаю над 4.4.
Но все таки я встретил проблему каторая выступаеть при компиляции с исползованием gnat4.3.0 и gnat4.4.0 Вопрос касаеться програм с использованием задачи. И так программа:
main.adb
=======================================
with Ada.Text_IO; use Ada.Text_IO;

procedure Main is

  task Task1 is
    entry Stop;
  end Task1;
  task body Task1 is
    begin
      accept Stop;
    end Task1;

  begin
    Put_Line ( "Please wait..." );
    Delay 3.0;
    abort Task1;
    Put_Line ( "Task Task1 Aborted!" );
  end main;
========================================
main получаеть:
# ./main
Please wait...
Task Task1 Aborted!

Execution terminated by abort of environment task
Press any key to continue...

main2.adb
========================================
with Ada.Text_IO; use Ada.Text_IO;

procedure Main2 is

  task Task1 is
    entry Stop;
  end Task1;
  task body Task1 is
    begin
      accept Stop;
    end Task1;

  begin
    Put_Line ( "Please wait..." );
    Delay 3.0;
    Task1.Stop;
    Put_Line ( "Task Task1 Aborted!" );
  end main2;
========================================
main2 даеть:
# ./main2
Please wait...
Task Task1 Aborted!
Press any key to continue...
..............................................
Я пока нашол что комуникат Execution terminated by abort of environment task описан в a-elchha.adb
begin
   --  Do not execute any task termination code when shutting down the system.
   --  The Adafinal procedure would execute the task termination routine for
   --  normal termination, but we have already executed the task termination
   --  procedure because of an unhandled exception.

   System.Soft_Links.Task_Termination_Handler :=
     System.Soft_Links.Task_Termination_NT'Access;

   --  Let's shutdown the runtime now. The rest of the procedure needs to be
   --  careful not to use anything that would require runtime support. In
   --  particular, functions returning strings are banned since the sec stack
   --  is no longer functional. This is particularly important to note for the
   --  Exception_Information output. We used to allow the tailored version to
   --  show up here, which turned out to be a bad idea as it might involve a
   --  traceback decorator the length of which we don't control. Potentially
   --  heavy primary/secondary stack use or dynamic allocations right before
   --  this point are not welcome, moving the output before the finalization
   --  raises order of outputs concerns, and decorators are intended to only
   --  be used with exception traces, which should have been issued already.

   System.Standard_Library.Adafinal;

   --  Check for special case of raising _ABORT_SIGNAL, which is not
   --  really an exception at all. We recognize this by the fact that
   --  it is the only exception whose name starts with underscore.

   if To_Ptr (Except.Id.Full_Name) (1) = '_' then
      To_Stderr (Nline);
      To_Stderr ("Execution terminated by abort of environment task";
      To_Stderr (Nline);
.....................................................
Я продолжаю работу над проблемой. Можеть у каго то возникнуть какие то идеи ?
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #158 : Июня 25, 2008, 03:35:43 am »

Прошло доволно много времени от последнего моего поста и я все таки немножко удивляусь что количество просмотров провисило 10000. Интересно есть вообще кто то что кроме просмотра темы исползуеть аду в среде QNX.
Я нашел решение проблемы о которой я писал в предыдушим посте.
Появилась новая версия gnat - GNAT GPL 2008 от Ada Core.
Она так как и предыдушаGPL 2007 основана на gcc 4.1.x
Я выложил новую версию на http://www.ajam.org.pl/
С новой версей появились обновления практически всего связанного с адой. Интересно выглядить новый gdb основанный на gdb 6.8. Но с ним пока есть проблема потому что его можна скомпилировать но он не совсем правильно работаеть в QNX. Первый раз Ada Core представила возможность работы с компилятором языка ада в среде Eclipse. Но на сщет того я не могу ничего сказать так как я этим не занимаюсь. Вообще не использую IDE. Можеть и это сработаеть в QNX. Эсли бы кто то нашолся и хотел это проверить, то могу помочь.
Я все таки думал, что новый gnat GPL будеть сделан на основе gcc4.2 или gcc4.3. Но они остаються на gcc4.1.
Тем более что в gcc4.4 практически есть ета новая верся ады. Получаеться интересная картна. Если присматреться новым версям Linux, то можна заметить, что начинають брать за основу gcc4.3. Почему так получаеться ?
Думаю ответь простой. Теперь компютеры строять на основе новых микропроцессоров. Они гороздо лучше чем предыдущие модели. Чтобы можна было вполни воспользоваться ними надо иметь компиляторы которые это умеють делать. Я скоро представю в другой теме какие возможности дають новые версии gcc по сравнени со старшими в QNX.
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #159 : Августа 19, 2008, 03:08:00 pm »

Это немножко не по теме но я наткнулся на ответ почему
чясто QNX проигрываеть с другими Real-Time Operating System - RTOS.
В
EVALUATION OF REAL-TIME OPERATING
SYSTEMS FOR SAFETY-CRITICAL SYSTEMS  
Marcus Hedlund  
Fredrik Aronson
 
EXAMENSARBETE 2002
ELEKTRONIK

есть анализ какой RTOS будеть исползован для Saab Avionics
Вопрос касался safety critical products for military applications. А точнее выбора RTOS и програмного обеспечения для военной авяци - думаю cамалеть Gripen.
Был тоже взять на анализ QNX 6* но проиграл потому что:
QNX seems able to provide a very good RTOS. It was involved in a comparison test, with
VxWorks and Windows CE. It outperformed both of these and has got a good reputation
among people using it. Unfortunately, the vendor could not offer an Ada compiler or a DO-178B certification kit. Due to this, QNX is not able to meet the demands required by Saab Avionics, at this time.
================================
На счет DO-178B я не знаю, но почему QNX так относится к Ada до сих пор не понятно
Записан
Wlad
Участник
*
Offline Offline

Сообщений: 3


Просмотр профиля
« Ответ #160 : Августа 19, 2008, 04:26:24 pm »

Ох, Богдан, на самом деле, всё это - фигня собачья.
Там, где военные разработки и близость к госкорытцу, всякоразные совместимости никого не волнуют...
Тем более, что для большинства чиновников от участка военного ведомства, курирующего разработческие (НИОКР) проекты, всё это - сплошная абракадабра. Побеждает тот, кто по-фигуристие сложит фразочки из неосмысливаемых слов и отработает откаты... Так работают ВЕЗДЕ. Просто в какие-то отрезки времени в той или иной стране, интересы пильщиков бюджета вдруг совпадают с интересами (или покупаются) какими-то более удачливыми претендентами на кусочек национального достояния... ;о)
Любой "стандарт" редко получается путём "собралась куча умных мужиков и напрягла мозги...". Обычно новый стандарт поручается разрабатывать тому, кто создал что-то дышащее. Разрабатывалось это - как везде (посмотреть историю тех же PCI или USB)... По крайней мере в военных ведомствах всех мне известных "плясали" от имеющегося изделия...

Да ещё не известно кто и как всё это "испытывал"...
Ну никогда не поверю, что система с монолитным ядром как-то по надёжности может обойти системы, построенные на микроядре... Это априори и в принципе не возможно. Ну, или возможно, но при диком мозговом напряге...

Действительно факт, заслуживающий удивления, так это крайнее неприятие Ады в QNX. Продукт (язык), дающий дополнительные преимущества при построении надёжных систем, ничего "лишнего" или "перегрузочного" в лучшей ОСи не добавил бы! Тока ещё лучше бы готовые продукты стали...
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #161 : Февраля 22, 2009, 02:45:50 pm »

Ррыближаеться выход оффицяльной версии gcc-4.4.0. А в ней gnat-4.4.0.
Я только что выложил gcc4.4.0-x86-qnx6.4.0.tar.bz2 на маем сайте www.ajam.org.pl
Он основан на gcc-4.4-20090220. gnat-4.4.0 ведеть себе очень хорошо.
gcc-4.4-20090220

                === acats Summary ===
# of expected passes            2314
# of unexpected failures        1
*** FAILURES: c380004
При чем скорость выполнения тестов возросла во много раз.
gcc-4.4-20090206 выполнение тестов acats 3 часа 20 мин 57 сек
gcc-4.4-20090213 выполнение тестов acats 32 мин 45 сек
gcc-4.4-20090220 выполнение тестов acats 32 мин 53 сек
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #162 : Апреля 14, 2009, 03:00:32 pm »

Оффицяльной версии gcc-4.4.0 еще нету, а уже появился gcc-4.5.0. Они как то незаметно перешли на эту новую версию. И опять оказалось что с точки зрения языка ада все силы уже давно переброшены на версию 4.5.х. За эти гдето 4 недели от выхода первой доступной версии 4.5 в сорсах многие изменения для ады. Сам компилятор ведеть себя очень хорошо несмотря на то что
он считаеться эхперименталным. Так что я выбросил со свего сайта gcc4.4.0-x86-qnx6.4.0.tar.bz2
и выложил новый gcc-4.5.0 и есть эстестьвенно ноый gnat-4.5.0
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #163 : Мая 30, 2009, 02:32:29 am »

Появилась новая версия gnat - GNAT GPL 2009 от Ada Core.
Предыдушые версии GPL 2007 и  GPL 2008 были основаны на gcc 4.1.x
Новая GPL 2009 основана на gcc 4.3.4. Точнее они использують 4.3.4 с многими измененниями.
В принципе эти изменения уже находяться в ветке gcc 4.4 и gcc 4.5.
Немного это странновато но тяжело что то сказать. Ada Core выкладываеть сорсы новой версии
и пока не будеть следующей нет возможности смотреть что они делають по дороге к новой версии.
Кроме самого компилятора эсть много другого:
GNAT GPL 2009 Edition Now Available!

We are pleased to announce the release of GNAT GPL 2009, the Ada Toolset for Academic users and FLOSS developers. It introduces many new features including:
Ability to generate byte code for the JVM
Ability to generate byte code for the .NET Framework
Addition of the Ada-Java Interfacing Suite (AJIS) that enables native Ada code to be called from Java.
Availability on the Mac OS X (64 bit) platform
Availability for the LEGO MINDSTORMS robotic building system (coming soon).
Automatic C/C++ binding generators
Addition of the GNAT Component Collection (GNATcoll) providing new APIs that can be extended by the user community.
GNAT GPL 2009 comes with version 4.3.1 of the GNAT Programming Studio IDE and GNATbench 2.3, the GNAT plug-in for Eclipse.
It is available for the GNU Linux, Mac OS X (64 bit), Mindstorms NXT, .NET, JVM and Windows platforms.
GNAT GPL 2009 will be available from the “Download” section on the Libre website.

AdaCore is dedicated to developing the finest tools available for software development with Ada. The GNAT GPL Edition is the Ada 2005 development environment for Free Software development and the GNAT Academic Program for use in Academia. GNAT Pro for comercial/industrial development.
The GNAT GPL Edition consists of the following technologies:
The GNAT Ada 2005 compilation system
Various tools such as heap monitoring, unit testing, program browsing, etc.
Ada 2005 and GNAT libraries (Containers, pattern matching, sorting, etc.)
The GNAT Programming Studio (GPS) visual IDE

Related technologies are also available for download alongside the GNAT GPL Edition:
AWS: to web-enable Ada applications (Ada Web Server)
XML/Ada: to process XML streams in Ada applications
ASIS: to develop tools for Ada software
GtkAda: to develop modern native GUIs in Ada
GLADE: to build distributed systems using Ada 95 DSA
PolyORB: to build distributed systems using CORBA and Ada
===============================================
Это из https://libre.adacore.com/libre/tools/gnat-gpl-edition/
Эстественно что не все это доступно в QNX но есть новые вещи которые возможно будуть
работать. Поко я занимаюсь самим компилятором
Записан
bbceler
Full Member
***
Offline Offline

Сообщений: 149


Просмотр профиля WWW
« Ответ #164 : Января 14, 2010, 01:19:44 am »

Во первых всем всех благ в Новом Году.
И так видно, что интерес к языку ada в QNX не очень велик.
Я тоже занялся другими темами.
Но вообще то GNAT GPL 2009 уже немножко устарел. gnat от  gcc 4.4.2 в принципе стоить.
В новом gcc 4.5.0 появились новые проблемы с компилятором ады а сам gcc 4.5.0 не очень готов.
К сожалению довольно часто не удаеться довести до конца компиляцию прежде всего систем на языке c++. Так что я пока использую только gcc 4.4.2.
Но я нашол думаю очень инетересную информацию о том что создали студенты вместе с Prof. Lars Asplundem:
Learn how Prof. Lars Asplund, and a team of 21 students created Dasher, a human sized robot designed to run using its own locomotion and balance. Behind it all is AdaCore’s GNAT Ada toolsuite.
http://electronicdesign.com/content.aspx?topic=science_fiction_meets_science_fact_in_today_s_robot_research&catpath=embedded-software
Так что в языке ada можно много делать.
Записан
Страниц: 1 ... 9 10 [11] 12
  Печать  
 
Перейти в: