Defect Report concerning: IEEE Std. 1003.1-1996, ISO/IEC 9945-1:1996 - C API
Clause: 7.1
PASC Interpretation Ref: pasc-1003.1-56
Topic: asynchronous terminals layered


This is an unapproved interpretation of PASC 1003.1-1996, ISO/IEC 9945-1:1996 - C API.

Use of the information contained in this unapproved document is at your own risk.

Last update: 10 April,2001


								1003.1-90  #56
        Classification:  No Change 
 

Category: The unambiguous situation; the standard says what it says.

This response will be incorporated in an IEEE interpretations
publication, and will be also made available on-line on the IEEE 
SPAsystem.

 _____________________________________________________________________________


	Interpretation Number:	XXXX
	Topic:			asynchronous terminals layered
	Relevant Sections:	7.1


Interpretation Request: (Defect Report)
-----------------------

Consider the case of an implementation of POSIX.1 that runs on a hardware
platform where the hardware has physical asynchronous communication ports.
The POSIX.1 implementation does not provide access to the asynchronous
communication ports even through the hardware exists. The implementation
does provide the general terminal interface as specified in Section 7, in
the manner defined for an implementation that does not have asynchronous
communication ports. The POSIX.1 implementation treats these ports as if
they do not exist at all: there is no support to open(), read(), or write()
the ports.

The two interpretations we request are:

 1. Does such an implementation conform to the requirements of POSIX.1?

 2. Does such an implementation conform to POSIX.1 if it is layered on
    another operating environment and that base environment does provide
    support for the asynchronous communication ports, although it does not
    make them accessible to the POSIX.1 environment?

Rationale

I believe that the answer to both of these questions is "yes".

Just as there is freedom in POSIX.1 for the implementor to decide that a
hardware platform will be built without serial ports, there is freedom to
define the scope of the integrated hardware/software implementation such that
it does not encompass all the facilities available on the hardware.

The central question is whether the term "implementation" as used in 7.1,
applies to the hardware or to the hardware/software system. My understanding
is that POSIX.1 consistently uses "implementation" in a general sense to avoid
constraining how particular functionality is provided, so the hardware/software
interpretation is the correct one.


IEEE Interpretation for 1003.1-1990 (9945-1:1990):
--------------------------------------------------


Such an implementation does conform to the requirements of POSIX.1.
Section 7.1 is quite clear about support being contingent upon the
implementation providing ayncronous communications ports. The
implementation is not required by the Standard to provide these ports,
regardless of hardware or underlying OS (in the "hosted" case).


Rationale for Interpretation:
-----------------------------
None.

 _____________________________________________________________________________