std-unix@longway.TIC.COM (Moderator, John S. Quarterman) (09/01/89)
An Update on UNIX* and C Standards Activities August 1989 Jeffrey S. Haemer, Report Editor USENIX Standards Watchdog Committee IEEE 1003.1: System services interface Update Shane McCarron <ahby@bungia.mn.org> reports of the April, 1989 meeting: "After thinking about it, I realized that 1003.1 did actually do some stuff this quarter." [April -ed] 1003.1 is preparing two supplements, A and B, to 1003.1-88. At the 1003.1 meeting in Minneapolis, the group reviewed draft 0.1 of 1003.1, supplement A. This supplement contains only clarifications and editorial comments, and will be balloted in the Summer. It will be provided to the ISO as the United States' comments on the International Standard IS9945, which is the same as 1003.1-1988. Its goal is to insure that the ISO standard and the the IEEE standard (with supplement) are functionally identical. Supplement B, to be balloted later, contains substantive changes: new facilities absent in IEEE Std 1003.1-1988. Some were missing from 1003.1-88 because they weren't completely specified in time to be included in the first release of the standard. Others are being introduced due to requests from other standards committees or the user community. For example, the ISO working group responsible for POSIX has requested a new archive format. It argues both that the archive formats in the first standard are insufficient for the future needs of POSIX systems and that a dual solution is unacceptable. The new format uses ANSI standard labeling, but extends it to permit POSIX filenames, security information, etc.... Supplement B also includes symbolic links, truncate(), ftruncate(), putenv(), clearenv(), getpass(), seekdir(), telldir(), chroot(), fchmod(), fchown(), and fsync(). Supplement B will also contain additional clarifications and edits to the base standard. The ISO will probably designate this supplement an addendum to IS 9945. All this maneuvering insures that the different standards stay in sync, and prevents large delays in getting the ISO __________ * UNIX is a registered trademark of AT&T in the U.S. and other countries. Jeffrey S. Haemer, Editor USENIX Standards Watchdog Committee August 1989 Standards Update -IE2EE-1003.1: System services interface standard approved. Although 1003.1-88 is now official, the 1003.1 committee's work will continue for some time yet. As other POSIX standards gel, their committees uncover requirements for additional functionality or semantics in the base standard, to support their work. As these committees point out such cavities in the standard, P1003.1 works to fill them. Everyone's hope is that no root canals will be necessary. Jeffrey S. Haemer, Editor USENIX Standards Watchdog Committee Volume-Number: Volume 17, Number 15
gwyn@brl.arpa (Doug Gwyn) (09/01/89)
From: gwyn@brl.arpa (Doug Gwyn) In article <384@longway.TIC.COM> std-unix@uunet.uu.net writes: >.... Supplement B also includes symbolic links, truncate(), ftruncate(), >putenv(), clearenv(), getpass(), seekdir(), telldir(), chroot(), fchmod(), >fchown(), and fsync(). We deliberately left seekdir() and telldir() out of IEEE Std 1003.1, because they cannot be reliably implemented in all reasonable UNIX-based environments. I wish people would quite trying to second-guess the original work. Volume-Number: Volume 17, Number 17
rml@hpfcdc.hp.com (Bob Lenk) (09/07/89)
From: Bob Lenk <rml@hpfcdc.hp.com> In article <386@longway.TIC.COM> gwyn@brl.arpa (Doug Gwyn) writes: > In article <384@longway.TIC.COM> std-unix@uunet.uu.net writes: > >.... Supplement B also includes symbolic links, truncate(), ftruncate(), > >putenv(), clearenv(), getpass(), seekdir(), telldir(), chroot(), fchmod(), > >fchown(), and fsync(). > > We deliberately left seekdir() and telldir() out of IEEE Std 1003.1, > because they cannot be reliably implemented in all reasonable UNIX-based > environments. I wish people would quite trying to second-guess the > original work. The list of functions looks roughly like the list included in the draft (I believe numbered 0) that was brought into the April meeting as a basis for discussion. It included essentially the union of all functions people at the prior meeting had considered including. At the April meeting the working group actually decided to exclude several functions from the supplement, including seekdir() and telldir() (also getpass() and chroot()). While seekdir() and telldir() were certainly considered during the drafting of the original 1003.1 standard, good rationale for omitting them was never captured; Appendix B outlines a technique to use in place of these functions, but that technique is no more (perhaps even less) portable than seekdir()/telldir(). The topic was the subject of some significant discussion during balloting, and not resolved to everyone's satisfaction. At the April meeting the Working Group agreed that the real need was for a portable means to traverse file trees in processes with limited file descriptors, and is pursuing a solution based loosely on ftw(). The draft of revsion 1003.1a, currently being balloted, adds rationale for exclusion of these functions (as well as getpass() and chroot()). The two most recent proposals on file tree traversal are in the August P1003.1 mailing. The current direction seems to be based on the idea of ftopen(), ftread(), and ftclose() outlined at the end of the Fowler-Korn-Vo proposal (P1003.1/N172). I expect this to be discussed at length at the next meeting (October in Brussels), and possibly subsequent meetings. While the USENIX Standards Watchdog Committee and this forum are certainly useful, they are no substitute for direct participation in the committees themselves, either as a source of timely and accurate information or as a mechanism for providing input. In particular, the single sentence about functions in Supplement B is far from a complete account of the topic, and should not be expected to be one. Of course all of the above represents only my opinions and recollections. Bob Lenk rml@hpfcla.hp.com hplabs!hpfcla!rml Volume-Number: Volume 17, Number 24