QNX RTP Logo QNX Realtime Platform: Русский Портал QNX
Thursday, 4 Dec 2008 00:21
Меню

Проект OpenNET - все о Unix
Главная

 · Начало · Статистика · Поиск ·

  QNX.ORG.RU —› Языки и алгоритмы —› ADA и QNX

<< . 1 . 2 . 3 . 4 . 5 . 6 .

Посл.ответ Сообщение


Дата: 10 Июл,  18:54

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

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


Дата: 16 Мар,  12:14

Привет всем в новым году - я пишу первый раз в 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.


Дата: 15 Май,  12:45

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


Дата: 15 Май,  12:50

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

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


Дата: 18 Май,  00:52

Каждый раз я использую для измерения скорости выполнения
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 каторая только что появилась.


Дата: 18 Май,  01:01

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


Дата: 26 Июл,  12:27

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


Дата: 25 Фев,  00:20

Имеем новые версии 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"[img]http://qnx.org.ru/components/minibb/img/smilies/wink.gif[/img];
To_Stderr (Nline);
.....................................................
Я продолжаю работу над проблемой. Можеть у каго то возникнуть какие то идеи ?


Дата: 25 Июн,  00:35

Прошло доволно много времени от последнего моего поста и я все таки немножко удивляусь что количество просмотров провисило 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.


Дата: 19 Авг,  12:08

Это немножко не по теме но я наткнулся на ответ почему
чясто 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 до сих пор не понятно


Дата: 19 Авг,  13:26

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

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

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

<< . 1 . 2 . 3 . 4 . 5 . 6 .

You must login to post.

©   2000-2003 Команда проекта QNX.ORG.RU // QNX.ORG.RU Team
Авторы проекта: Дмитрий Алексеев [dmi] и Дмитрий Васильев. Техническое сопровождение проекта: Игорь Сорокин [isorokin]. Информационное сопровождение: Дмитрий Алексеев [dmi]
QNX - зарегистрированная торговая марка QNX Software Systems, Ltd., Canada. Остальные упоминаемые на сайте торговые марки и логотипы являются исключительно собственностью их уважаемых владельцев. Ничьи права не затронуты. Материалы сайта не могут быть скопированы и где-либо использованы в той или иной форме без письменного разрешения разработчиков сайта.
Powered by Mambo Open Source