POSIX JTC1/SC22/WG15 N244 _________________________________________________________________ Date: December 4, 1991 Supersedes: n/a Title: IEEE 1003.1LIS and IEEE 1003.16 Open Issues Source: U.S. Action Requested: none Detail: This document contains information relevant to the re- view of WG15 N222 and N223. IEEE 1003.1LIS and IEEE 1003.16 Open Issues U.S. Contribution December 4, 1991 Reviewers of WG15 N222 and N223 are invited to consider the fol- lowing issues and to include responses to these issues in submit- ted comments. 1. conformance model The current drafts of 1003.1LIS and 1003.16 specify a rather complex conformance model, in which language bindings con- form to the language-independent standard, and implementa- tions and applications conform to the language-independent standard, the language standard, and the language binding. Simpler conformance models should be considered. 2. storage model The language-independent standard needs a storage model, in addition to the abstract datatype and procedure model, in order to specify the requirements associated with the terms "byte", "address space", and "process image"; the limits {ARG_MAX}, {NAME+MAX}, and {FILE_MAX}; and the functions read() and write(). What concepts should be included in such a model, and which additional features of the standard need to be specified in terms of that model? 3. object model The language-independent standard would be improved by a clearer model of the system objects. Object classes and subclasses should be specified, along with the attributes and operations associated with each, and consistent termi- nology should be used to refer to objects, object classes, object attributes, and operations. Is an explicit object model needed? Should Section 2 of 1003.1LIS be reorganized to include more complete object definitions? 4. event model The language-independent standard would be improved by a clearer model of requirements relating to time. Areas that might be covered by such a model include: the atomicity or non-atomicity of procedures; process blocking and synchroni- zation; signal generation and delivery; and read/write con- sistency. What concepts should be included in such a model, and which additional features of the standard need to be specified in terms of that model? 5. requirements on extensions ISO/IEC 9945-1: 1990 includes a variety of specifications relating to implementation extensions, such as additional fields in structures and additional bits set in arguments of type mode_t. How should these specifications be factored into language-independent and language-specific components? What general requirements can be stated to subsume the variety of particular requirements? 6. 1003.1LIS Section 8 Section 8 in the current draft of 1003.1LIS is in a transi- tional state, having been partially reorganized from draft 1, but still containing all of the specific requirements on language-specific I/O functions. Should these specific re- quirements be made more general, or weakened, or strengthened? What analogous requirements are appropriate for language-specific process management functions? And where does this section belong? Should it go in Section 2 or in an Annex? 7. 1003.1LIS abstract datatypes The current draft of 1003.1LIS includes tentative specifica- tions of the abstract datatypes corresponding to each C- Language type defined in ISO/IEC 9945-1: 1990. These were the subject of great debate during the early stages of development of 1003.1LIS, but attention to them has been temporarily displaced by other matters, and the hope has been entertained that the final choice of abstract datatypes will be easier when the surrounding document is more solid. Suggestions and rationale for better choices are welcome. 8. specification of headers in 1003.16 The current draft of 1003.16 goes farther than the 1990 standard in specifying the requirements on headers. Further improvement is possible. Should requirements on headers be specified in separate sections, apart from the specification of requirements on functions that use types or macros de- fined in those headers? If so, where should these new sec- tions be inserted?