home *** CD-ROM | disk | FTP | other *** search
- This article mentions some changes to the P1003.D4 draft by section,
- sometimes with discussion of the motivation for the changes.
- There were far too many changes to record them all, and I do not
- have the minutes which have the details anyway. Thus I am trying
- here merely to mention changes which strongly affect the reader
- of P1003.D4, in hopes of reducing duplicate effort.
-
- Section 2.2, General Terms, has been expanded to include many
- previously missing definitions. There was a proposal to change the
- format to be more tutorial, with definitions of specific terms embedded
- in paragraphs discussing related concepts (in fact, the writeup in that
- form was considered to be the text of that section for D4 instead of
- what appears in the current copy, which is older). The consensus was
- that, while there is certainly a need for such tutorial material,
- a standard is a reference, not a place to learn the operating system.
- The result is the same general form as that of P1003.D4, though
- somewhat more detailed.
-
- Much attention has been paid to error codes throughout the document.
- Many of the definitions in 2.3, Error Numbers, have been revised.
-
- The spurious last sentence about structure elements in section 2.4
- has been deleted.
-
- Most places where the numeric values of symbolic constants were
- given, such as section 2.8, Symbolic Constants, the numeric values
- have been removed, and the form of the display has been changed
- from C preprocessor definitions to a table. I believe there is
- an intention to give the numeric values in appendices as examples
- of what they historically have been. The main exception is section
- 14. Data Interchange Format, as the values of the bytes on the tape
- or other interchange medium must be defined.
-
- In section 4.2, User Identification, it was decided that there
- was no need for three methods of getting the user's login name
- (cuserid, getlogin, and getlogname). Getlogname was removed,
- and the writeups of the other two were redone to emphasize when
- it was appropriate to use each. Note that though the logname
- function was removed, the LOGNAME environment variable was not.
- These changes are different from what is in the SVID or X/OPEN
- documents.
-
- Ustat, and its containing section 7.9.1, File System Statistics,
- no longer exist. The reasoning was that only a very few programs
- used it (df and ed) and it does not generalize easily to networked
- file systems. Df is not defined by the standard, and the use
- of ustat in ed is not necessary and not sufficient. Also, ustat
- required the definition of a "mounted file system" which was otherwise
- not in the standard (as mount and umount are not).
-
- In section 8.3, Pipes, much work was put into producing a description
- which permitted most known existing implementations while retaining
- enough specificity to be useful. There are a few areas which will
- affect existing implementations, but this is more because there
- already were conflicting implementations, not that P1003 wishes
- to legislate one version as the better one. A table will appear
- in an appendix showing what happens with various attempts at
- writing with O_NDELAY on or off, and with differing buffer sizes.
- The Version 8 manual was an inspiration for some of the wording.
-
- In section 8.6, Input and Output, a proposal to change the
- nbyte arguments of read and write from type int to unsigned
- failed to pass the committee, as has apparently happened many
- times before. Verbiage was added to the Errors subsections
- to clarify what may happen if a negative nbyte argument is passed.
-
- In section 8.7.3, File Record Locking, the last vestiges of references
- to enforcement mode were removed. There were only two known
- implementations of enforcement mode, and the representatives of both
- companies (AT&T and HP) said they had done it only because the
- /usr/group standard had included it, and they would be happy to have it
- removed.
-
- Section 9.1.1, Termios, does not appear in the copy of the draft which
- is currently available, but was supplied to the committee as a separate
- document which I believe was considered to be part of P1003.D4. The
- subcommittee which considered it at the meeting recommended removing it
- from the draft standard altogether. The reasons for this were various,
- including that the wording was too stringent in places (it would
- apparently require an X.25 or TCP/IP/RS232C connection to act like an
- ordinary terminal port) and too vague in others (it was not clear what
- a line discipline was). Also, there was no provision for speeds other
- than the traditional ones up to 19200 baud, only one direction of
- XON/XOFF protocol was supported, etc.
-
- In the full committee, several members objected to the removal of the
- termio section on the grounds that a) many of the objections to the
- section were internationalization issues, and the committee had
- otherwise explicitly avoided addressing such issues, and b) the draft
- standard really needed a termio section, as it would risk being voted
- down by the balloting committee if it lacked one. It was speculated
- that the /usr/group standard would have had more influence if it had
- included a similar section.
-
- The resolution was to put the existing termio section in an appendix,
- while letting section 9.1.1 refer to the appendix, saying something
- to the effect that the committee did intend to have a section similar
- to the one currently in the appendix, but possibly not until after
- trial use. This prohibits anyone from specifying compliance to the
- current termio section, while making the intention to include one clear.
-
- In section 12. Passwords, there are no longer any references to text
- files for the /etc/passwd or /etc/group information. Only the getpwent
- and getgrent functions are defined: the internal storage format is
- not defined.
-
- Once again, remember that these are only my opinions, and not those
- of the P1003 committee, IEEE, or anyone else.
-
- Volume-Number: Volume 2, Number 15
-
-