comp.lang.ada
 help / color / mirror / Atom feed
* runtime systems
@ 2008-05-03 19:35 emconuk
  2008-05-04  2:51 ` Lucretia
  2008-05-04  5:57 ` anon
  0 siblings, 2 replies; 5+ messages in thread
From: emconuk @ 2008-05-03 19:35 UTC (permalink / raw)


Hello.

I would like to find out some more about available Ada runtime
systems.

I know that Adacore have a runtime system ported to various cross
platforms (but I can't figure out its licensing), and I know about the
other commercial offerings from GHS and Aonix.  I'm also aware of
MarteOS and RTEMS as possible non-commericial offerings.

However, I would like to hear about any other solutions out there.  I
used to use xd-ada and it had quite a simple little rts that could be
customised for different hardware platforms.  I don't want an OS - I
just want to hear about baremetal runtime systems.

For example, I really like the look of the latest Gaisler Reasearch
LEON3 processor and perhaps other FPGA soft-cores.  Anyone have a non-
commericial Ada rts running on those type of platforms ?

thanks.
Martyn





^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: runtime systems
  2008-05-03 19:35 runtime systems emconuk
@ 2008-05-04  2:51 ` Lucretia
  2008-05-04 16:44   ` Ed Falis
  2008-05-04  5:57 ` anon
  1 sibling, 1 reply; 5+ messages in thread
From: Lucretia @ 2008-05-04  2:51 UTC (permalink / raw)


On 3 May, 20:35, emconuk <emco...@googlemail.com> wrote:
> Hello.
>
> I would like to find out some more about available Ada runtime
> systems.
>
> I know that Adacore have a runtime system ported to various cross
> platforms (but I can't figure out its licensing), and I know about the
> other commercial offerings from GHS and Aonix.  I'm also aware of
> MarteOS and RTEMS as possible non-commericial offerings.

MarteOS and RTEMS are both operating systems, not runtimes.

> However, I would like to hear about any other solutions out there.  I
> used to use xd-ada and it had quite a simple little rts that could be
> customised for different hardware platforms.  I don't want an OS - I
> just want to hear about baremetal runtime systems.

You need to look into the GNAT sources and work out how to port the
GNAT runtime to your preferred hardware.

I don't think it'd be possible to move an Ada runtime from 1 compiler
to another without porting it properly as the compilers create code
that references the runtime in compiler-specific ways.

Luke.



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: runtime systems
  2008-05-03 19:35 runtime systems emconuk
  2008-05-04  2:51 ` Lucretia
@ 2008-05-04  5:57 ` anon
  1 sibling, 0 replies; 5+ messages in thread
From: anon @ 2008-05-04  5:57 UTC (permalink / raw)


In <5b8b9ed2-e03b-4f97-8666-9a11a5450a32@w74g2000hsh.googlegroups.com>, emconuk <emconuk@googlemail.com> writes:
>Hello.
>
>I would like to find out some more about available Ada runtime
>systems.
>
>I know that Adacore have a runtime system ported to various cross
>platforms (but I can't figure out its licensing), and I know about the
>other commercial offerings from GHS and Aonix.  I'm also aware of
>MarteOS and RTEMS as possible non-commericial offerings.
>

First, for commercial Ada(s). Most Ada vendors are Intel/Mac systems.
There are others such as IBM versions which can be use on AIX, Linux, 
or Windows systems.

Now, for non-commericial Ada most programmers use GNAT.

For "GNAT Ada 2005" and a number of "GNAT Ada 95" versions, the 
license is GPL 2 which has been updated to GPL 3 in a number of ports. 
All ports of the compiler must also be under GPL 2 or 3 and open source 
only (see "GNAT Technology FAQ" at libre.adacore.com). 


As for MarteOS and RTEMS OSs they use GNAT as their main language and 
have ported the existing GNAT RTL to fit their code. But the bootstrap 
and startup code is still written in C and ASM. License is GPL 2 or 3.


>
>However, I would like to hear about any other solutions out there.  I
>used to use xd-ada and it had quite a simple little rts that could be
>customised for different hardware platforms.  I don't want an OS - I
>just want to hear about baremetal runtime systems.
>
>For example, I really like the look of the latest Gaisler Reasearch
>LEON3 processor and perhaps other FPGA soft-cores.  Anyone have a non-
>commericial Ada rts running on those type of platforms ?
>



As for a new RTL.  The GNAT RTL uses both Ada and interface C 
routines to link into the OS which must be rewritten. The C code is 
used because Ada and GNAT does not support conditional compiling.

The RTL is only part of the problem the main isuue is the compiler.

The GNAT compiler uses a two phases compiler system to generate 
code. The main compiler program is called GNAT1 and starts in file 
"gnat1drv.adb" which translates the Ada source code into the target 
processor assembly code.  This is done by GNAT1 first calling the 
frontend compiler ("Frontend.adb") which is written in Ada (no 
modification is needed). Then if code is to be generated, GNAT1 
calls the Backend routine ("back_end.adb") which in turn calls a C 
routine (GNAT GIGI) found in file "trans.c" to perform the source code 
generation for the object computer (major modification is needed to 
produce code for new processor). (Up to 500K lines of code). Then the 
second phase is to call the an assembler (GCC "as") to processor the 
object code for that processor if GNAT1 finishes with no errors (must 
have or write a ported version of the GCC "as"). These two phases are 
perform at the request of the GCC "gcc" compiler.

So, first look for a GCC C compiler package for the processor that you 
wish to use. This package should have the GCC C compiler "gcc", an 
assembler "as" as well as the linker "ln" with libraries. And if your 
luck you may find an GNAT Ada port or links to an Ada project, there.


>
>thanks.
>Martyn
>
>




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: runtime systems
  2008-05-04  2:51 ` Lucretia
@ 2008-05-04 16:44   ` Ed Falis
  2008-05-04 19:08     ` Lucretia
  0 siblings, 1 reply; 5+ messages in thread
From: Ed Falis @ 2008-05-04 16:44 UTC (permalink / raw)


On Sat, 03 May 2008 22:51:42 -0400, Lucretia <lucretia9@lycos.co.uk> wrote:

> I don't think it'd be possible to move an Ada runtime from 1 compiler
> to another without porting it properly as the compilers create code
> that references the runtime in compiler-specific ways.

I presented a paper at SigAda '82 on a portable run-time library interface  
based on my post-grad work of the time.  Boy, that sure went over big ;-)



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: runtime systems
  2008-05-04 16:44   ` Ed Falis
@ 2008-05-04 19:08     ` Lucretia
  0 siblings, 0 replies; 5+ messages in thread
From: Lucretia @ 2008-05-04 19:08 UTC (permalink / raw)


On 4 May, 17:44, "Ed Falis" <fa...@verizon.net> wrote:
> On Sat, 03 May 2008 22:51:42 -0400, Lucretia <lucret...@lycos.co.uk> wrote:
> > I don't think it'd be possible to move an Ada runtime from 1 compiler
> > to another without porting it properly as the compilers create code
> > that references the runtime in compiler-specific ways.
>
> I presented a paper at SigAda '82 on a portable run-time library interface  
> based on my post-grad work of the time.  Boy, that sure went over big ;-)

Got a link? What compilers did it work with? Any? :D

Luke.



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-05-04 19:08 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-05-03 19:35 runtime systems emconuk
2008-05-04  2:51 ` Lucretia
2008-05-04 16:44   ` Ed Falis
2008-05-04 19:08     ` Lucretia
2008-05-04  5:57 ` anon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox