comp.lang.ada
 help / color / mirror / Atom feed
From: Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>
Subject: Re: What are POSIX Ada Bindings?
Date: 1998/06/20
Date: 1998-06-20T00:00:00+00:00	[thread overview]
Message-ID: <358BE76B.2BE24710@cl.cam.ac.uk> (raw)
In-Reply-To: 6mgb5r$ukh$1@eskinews.eskimo.com


Rick Morneau wrote:
> I recently obtained the package florist980427.tar.gz from Florida State
> University.  The documentation says that the package provides "POSIX Ada
> Bindings".  Can anyone explain what this means?  What is the function of
> these bindings, and who would need to use them?

The POSIX.1 standard specifies large parts of the C application
programming interface available on Unix systems. It describes
functions for handling processes, threads, files, signals, terminals,
IPC, and much more that goes far beyond the standard C library defined
in the C standard.

Similarly, POSIX.5 provides the functionality of the Unix
application programming interface for Ada programs. POSIX.5
is not a "thin" binding in which there exists exactly a one-to-one
mapping between C functions and Ada functions, but it is a "thick"
binding that presents the POSIX.1 functionality structured in a way
that is customary for Ada programmers. For instance, most of the
pthread POSIX.1 system calls for controlling threads are missing
in POSIX.5, because the same functionality is already provided
by the Ada language in the form of tasks. Also the way signals
are handeled under POSIX.5 is quite different from POSIX.1.

If you do not want to have to mess around with writing your own
Ada/C Interfacing functions each time in order to access Unix
system calls but prefer a portable predefined library, then you
need Florist or a similar POSIX.5 implementation.

It would be nice if Florist would soon become a part of the GNAT
run-time system on all GNAT versions for Unix. Unfortunately,
the current prerelease seems to be only tested under Solaris.

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-06-20  0:00 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-06-20  0:00 What are POSIX Ada Bindings? Rick Morneau
1998-06-20  0:00 ` Markus Kuhn [this message]
replies disabled

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