comp.lang.ada
 help / color / mirror / Atom feed
From: Freejack <Freejack@nomail.com>
Subject: Re: GNAT and Memory Maps?
Date: Sat, 05 Jul 2003 23:24:15 GMT
Date: 2003-07-05T23:24:15+00:00	[thread overview]
Message-ID: <pan.2003.07.05.23.30.12.155895.763@nomail.com> (raw)
In-Reply-To: m3n0ftp19v.fsf@insalien.org

On Sat, 05 Jul 2003 09:10:36 -0400, Ludovic Brenta wrote:
 
> My first idea is to use your own storage pool; see ARM 13.11 for
> information on storage pools. However, I'm not sure this approach works
> with pagma No_Run_Time.
> 
> By the way, I came across a post by Robert Dewar where he said
> No_Run_Time is obsolete.  Here is the URL:
> 
> http://gcc.gnu.org/ml/gcc/2002-11/msg00321.html
> 
> What is your situation?  Are you writing a Linux kernel module in Ada?
> (that's the only reason I can think of to use No_Run_Time) In this case,
> I'm not sure you can use glibc either.

My initial development platform is a customized Debian Linux x86
installation. I'm using it for developing a prototype application.(Which
will eventually be released as OSS, but I'm keeping it under wraps for
the moment.)

Basically, were a team of three people. We have an experimental logic
board with four Ignite Processors (Patriot Scientific Corps.) wired in
parallel. The Ignite Processors werent designed to be used in this way(at
least that's how our hardware junky explained it to me.) But we found
that it was very workable.
The other two are CS/CE students. I'll be going back into a CE program
once the bills are paid up. This is a summertime project. At least for
now.

The initial software is designed to run in an essentially embedded
environment, with very little Operating System support. Perhaps an
exokernel at the most.
However, the intent is to keep the software-logic portable, so that it
can be run on a regular server (i.e. QNX or a Unix most likely) platform.
The only modifications necessary would be between the high level functions
and the platform specific interfaces. 

We considered using Forth for this(and indeed Forth will play an
important role.) However maintaining Forth, for this kind of app, across
multiple platforms would not be trivial to say the least.

I have experience with Ada in high level applications(database
programming, some trivial web hacks) but I'm doing some research and
getting up to speed with very low level work.

Essentially this is going to be a network proxy, which couples
high level network metadata (Web, FTP, SSH, and ect..) with low level
"network" metadata(all the way down to the Frame Layer) which is able to
route data(not just encapsulated "packets") according to the most
efficient route for it's type.
There are routers which do some of these things already. Hence the idea is
not to replace the routers, but rather to work in conjunction with
routers to perform much more efficient and reliable network filtering,
analysis, and secure communications.  

One of the goals is to enable the proxie(s) to open secure tunnels to
each other, creating a virtual X400 network. Which, if implemented 
wisely, can guarantee the message will traverse the Internet in 90
minutes or less.

Now, I suppose I could port the GNAT runtime. But I'm not at that stage
yet.
All in all, working with Ada is cake. A little tedious to write at times,
but a hell of a lot simpler to use. And I havent had any trouble 
with it fudging up at a critical moment.
And, as you can see, this is large project. Hence, one of my reasons for
using Ada.

"Where the hell did you guys get this idea?"
Well, our hardware junky traced a circuit board and wondered what kinds 
of things she could use it for. So we came up with this idea at the
suggestion of our network guru. Where do I fit in? I read TAOCP, which
"inspired" me to read a lot of math books(Heh.) 

Enough rambling.

That's the lowdown. I've remained purposely vague, because we know what
we want right now, but we havent decided where this project is going.
Like I said, it's a summertime hack. I suppose kinda like modding the
Xbox. Might end up in our collection of computer junk, but for now it's a
lot of fun. I decided to indulge my anal retentiveness and try to build
a system that wont crash(or at least will be very difficult to crack or
crash.) Either way, were learning a boatload of stuff.

Thanks.


Freejack



  reply	other threads:[~2003-07-05 23:24 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-05  3:36 GNAT and Memory Maps? Freejack
2003-07-05  4:42 ` Freejack
2003-07-05 13:10 ` Ludovic Brenta
2003-07-05 23:24   ` Freejack [this message]
2003-07-08  1:40   ` John Kern
2003-07-08  8:20     ` Freejack
2003-07-08 14:56     ` Rod Chapman
2003-07-05 16:22 ` Simon Wright
2003-07-07  3:50   ` Hyman Rosen
2003-07-08 20:20     ` Simon Wright
2003-07-05 19:59 ` Florian Weimer
2003-07-07  7:44 ` Jean-Pierre Rosen
replies disabled

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