comp.lang.ada
 help / color / mirror / Atom feed
From: Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>
Subject: Linux/POSIX packages for GNAT
Date: 1998/02/22
Date: 1998-02-22T00:00:00+00:00	[thread overview]
Message-ID: <34F007C5.7D9F2D7@cl.cam.ac.uk> (raw)
In-Reply-To: 34ef8225.83906260@enews.newsguy.com


frc@stellar1.com wrote:
> Agreed. What I am after is a means - more than a C transliteration -
> of accessing I/O hardware which requires this kind of read/write
> functionality. My only basis of description is the C functions that I
> have used to do this.

inp and outp are Intel assembler instructions and you can include
assembler code directly into your Ada program (check the GNAT docs
for details). Under Linux, normal user processes are not allowed to
access the IO ports. Root processes are only allowed to access
the IO ports after they have requested this right from the kernel
with a special system call (for instance the XFree86 X11 server under
Linux does this to set the video modes directly via hardware IO
register access).

What would be nice to have is a Linux Ada package that implements all
those low-level accesses to the operating system and processor (such
as directly making a system call, inp/outp, access to sockets, MMX
functions, etc.), such that not every user of those facilities has
to learn Intel/Alpha/SPARC assembler but can use nice documented
Ada procedures.

It seems the standard packages that come with GNAT only cover
what is defined in the Ada95 RM plus a few GNAT specific extentions.
What is urgently missing for real Linux system development is Linux
low-level access as well as an implementation of the full POSIX.5
Ada API. Has this already been done somewhere or is any work on
this in progress?

How widely implemented is the POSIX.5 API (standardized Ada versions
of the common Unix system calls) anyway?

Markus

-- 
Markus G. Kuhn, Security Group, Computer Lab, Cambridge University, UK
email: mkuhn at acm.org,  home page: <http://www.cl.cam.ac.uk/~mgk25/>




  reply	other threads:[~1998-02-22  0:00 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-02-21  0:00 question re Ada equivalent of C function David Fisher
1998-02-21  0:00 ` Robert Dewar
1998-02-21  0:00 ` Corey Ashford
1998-02-22  0:00   ` Nick Roberts
1998-02-21  0:00 ` Brian Rogoff
1998-02-21  0:00   ` Robert Dewar
1998-02-22  0:00     ` Brian Rogoff
1998-02-21  0:00   ` Jerry van Dijk
1998-02-21  0:00     ` David Fisher
1998-02-22  0:00       ` Jerry van Dijk
1998-02-22  0:00         ` Robert Dewar
1998-02-22  0:00           ` Andi Kleen
1998-02-22  0:00       ` Simon Wright
1998-02-22  0:00         ` Simon Wright
1998-02-22  0:00   ` Nick Roberts
1998-02-22  0:00     ` frc
1998-02-22  0:00 ` Larry Kilgallen
1998-02-22  0:00   ` Robert Dewar
1998-02-22  0:00   ` frc
1998-02-22  0:00     ` Markus Kuhn [this message]
1998-02-22  0:00       ` Linux/POSIX packages for GNAT Robert Dewar
1998-02-23  0:00         ` Markus Kuhn
1998-02-23  0:00           ` Robert Dewar
1998-02-23  0:00             ` Markus Kuhn
1998-02-24  0:00               ` question re Ada equivalent of C function Dale Stanbrough
1998-02-23  0:00         ` Linux/POSIX packages for GNAT Andi Kleen
1998-02-22  0:00           ` Robert Dewar
1998-02-23  0:00             ` Markus Kuhn
1998-02-23  0:00               ` Robert Dewar
1998-02-22  0:00       ` Andi Kleen
1998-02-22  0:00         ` Samuel Tardieu
1998-02-23  0:00           ` Nick Roberts
1998-02-23  0:00             ` Samuel Tardieu
1998-03-05  0:00             ` Testing exception handlers James M. Darlack
1998-02-22  0:00         ` Linux/POSIX packages for GNAT Markus Kuhn
1998-02-22  0:00           ` Robert Dewar
replies disabled

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