Thread View: comp.std.unix
14 messages
14 total messages
Started by Stephen R. Walli
Wed, 23 Dec 1992 21:33
POSIX - Caving In Under Its Own Weight (Long)
Author: Stephen R. Walli
Date: Wed, 23 Dec 1992 21:33
Date: Wed, 23 Dec 1992 21:33
605 lines
31998 bytes
31998 bytes
Submitted-by: sef@ftp.uu.net
``Standards are commercial and international politics dressed up as
technical arguments.''
I think POSIX is caving in under its own weight. All of the hard
nuts-and-bolt work effort of defining a technical programming
specification is slowly being mired in the mud. POSIX exists to ``...
support application portability at the source-code level. It is
intended to be used by both application developers and system
implementors.'' (ISO/IEC IS 9945-1:1990, 1.1 Scope, p.1, lines:2-3).
It has been floundering for sometime in a mess of its own making. I
want to look at this mess, describing it and its historical context,
and offer up a few possibilities for solutions. This article is long,
but there is a lot of context that needs to be understood to see
what's happening to an otherwise useful standards effort. The article
ends with a list of e-mail addresses to which you may wish to send any
questions and concerns. In fact, I encourage it, and hope that you'll
be convinced by the end of the article.
The Problem
There are two sets of people doing work in the POSIX working groups.
The first set sit in the individual working groups, distilling
historical practice and experience into a technical specification
``for application developers and systems implementors.''
The second set of people have typically been involved at the working
group level for quite some time. They are often chairs of the groups
or other officers. These people have begun to have co-ordination
meetings and form steering committees outside the working group
structure. All of the pieces of POSIX are related to one another, and
there is a genuine need to co-ordinate between the different groups of
heads-down-over-the-specification-technicians. The bureaucracy has
grown because of need rather than desire to hold extra meetings. Most
of the people involved can think of more enjoyable ways to spend their
time.
I wander these steering committees, sub-committees, and the hallways
of POSIX. It quickly became apparent to me that this is where the
politics that drives POSIX is most on display. I was eventually
around long enough to get involved in some of these committees. (Fool
me.)
There has been a strange tension in these rooms for quite some time,
coupled with a terrible confusion and sense of apathy. This is not
noticable in the working groups themselves. Heads down and oblivious
to the politics of POSIX, the working groups are buried in the
religious wars and politics of their own technical specification.
A couple of POSIX meetings back, it began. First in one steering
committee, then another, and another. The group would hit a crisis
point, and throw up its hands. Despite the fact that each room
contained people with a long history and knowledge of POSIX, they
would reach a point of apparent confusion as to how to co-ordinate
with another steering committee or sub-committee. (The running joke is
that we need a steering committee steering committee, but it really
isn't seriously contemplated.)
Finally, someone would suggest we need to define the problem. I
offered to go away and write it up. (More fool me.) Then the next
sub-committee meeting. The same process. Tension, confusion, ``let's
define the problem.'' It started in the Project Management Committee.
I later saw it in the Steering Committee for Conformance Testing, then
the System Interface Co-ordination Committee. These are all really
fundamental sub-committees, with a lot of POSIX history in their
membership.
The co-ordination complexity is amazing. The major areas of POSIX
requiring co-ordination are the base documents themselves, their test
methods, and their structure with respect to language independent
specifications (LIS) and programming language bindings. (This
complexity has spawned profiles, about which I've yelled enough for
now.)
Steering committees were thought to be a way out of the mire. If we
just communicate with one another, the problems will all become
apparent, sort themselves out and go away. But ultimately this falls
down. POSIX is too big. The steering committees have no authority to
impose their collective will. POSIX is a volunteer effort. There are
no sticks and there are no carrots.
If it becomes too much trouble to build the standards, then the
volunteers will cease to arrive at the meetings. The POSIX standards
effort will fail. Or worse yet, they will continue to be defined by
fewer and fewer people with sound technical background and a proper
perspective on the subject. This will cast doubt on the good work
which has already been done.
Test Method Madness
To ensure that implementations of the POSIX.1 standard could somehow
be tested and certified in a uniform way, the POSIX.3 standard (Test
Methods) was created. This work was heavily supported and resourced by
the United States government, along with the testing agencies that were
supporting the actual testing requirements.
The POSIX.3 standard is not a bad thing. It defines a methodology by
which test methods and results of test cases written to these methods
can be uniformly described.
If you are creating a standard it's a useful tool to ask yourself
``how would I test this functionality or feature'' as you write the
specification. It ensures you read and possibly re-write the
specification properly. You may wish to deliberately not be complete
in the definition, but these areas in a standard specification should
be intentional.
This ``testing'' tool has even been proven. Several working groups
have written test methods for their specifications, with some help
from people historically involved in the original POSIX.3 effort. Many
of these POSIX.3 members have formed the Steering Committee on
Conformance Testing (SCCT) that oversees how test methods are applied
and created in the working groups. The SCCT has been too busy to
review these test methods in depth, but without judging whether the
new test methods are good or bad, the working groups that have gone to
the trouble of creating them have all felt that their base
specifications are better defined for the effort. It seems that the
tool works!
Now for the problem. Some time ago, the SCCT recommended to the
Sponsor Executive Committee (SEC) that all POSIX standards must have
associated test methods. These test methods would be standards as
well. They convinced the SEC to make this a requirement.
Now, a standard cannot offically exit balloting without having a test
method specification that is also a standard. This instantly sets up
a directly competing body of text to the original standard. This is
not a competing functional standard a la IEEE 802.n LAN standards.
This is a competing body of text. (Note: ALL discussions of formal
testing languages and formal specifications are red herrings here.
Anyone wishing to hear my three Canadian cents worth on the subject
can email me.)
Test methods standards will become the annointed specification for the
test suite to demonstrate conformance by organisations with the funds
or market presence to demand as much. Implementations can hit the
narrower mark of the test suite (embodying the standard test methods)
to naively certify rather than hit the standard itself. If you don't
realise the subtle and nasty differences that can appear, spend some
time with the POSIX.1 standard (IEEE Std 1003.1- 1990), and with its
newly declared standard test methods (IEEE Std 1003.3.1-1992).
And what happens when there are holes in the test methods? Some
things cannot be tested. The standard still has requirements on these
areas of behaviour, but they may not translate nicely. And there are
some places where the test methods simply aren't complete. A
reasonably recent draft of the POSIX.3.1 test methods had test methods
for the POSIX.1 environment variables required by U.S. FIPS PUB 151-1,
(the U.S. government profile of POSIX.1,) but none for the other
environment variables. The international community might wish to take
note of this oversight on all LC_ environment variables, should the
POSIX.3.1 standard get to ISO. What other holes are there?
There is a terrible balloting problem. Balloting apathy or overload is
striking many places. The test methods documents are as big as the
standards they repeat. Fewer people care about the test methods,
they've seen the original specification and the job is done, right?
We run the terrible risk of passing bad test methods documents if these
documents are quickly processed through balloting groups whose members
have little time on their hands. In the current commercial climate
for standards, this is dangerous.
Then, of course, there is the maintenance problem. All useful
standards have the same problem as all useful software. They need to
be maintained. It's just slower and more tedious. One has added a
level of complexity to the administration of the interpretations.
POSIX.1 has the fun little contradiction that PATH_MAX is the length
of the pathname both explicitly including and excluding the
terminating null byte. An interpretation was requested, and came back
that it was an inconsistency and that both can be right.(2)
(2) IEEE Std 1003.1-1988/INT, 1992 Edition, Interpretation
Number: 15, p. 36.
Now what happens when someone requests an interpretation of a standard
with its test methods?
If the request is leveled against the base, what guarantees are there
that the test methods, i.e. a separate standard, will be kept
synchronized? If it's against an inconsistency between the base and
its test method standard, which one wins? If the PATH_MAX argument
holds, then both are correct. Since one of them is implemented as a
test suite to demonstrate conformance, which one wins in the real
world?
Do test methods need to be standards? Who wins by forcing working
groups to completely re-specify their work as test methods? Testing is
expensive, but the market ultimately protects itself. What has been
done in the TCP/IP space? (If you don't think TCP/IP is a successful
widely implemented specification, stop reading now.) What about the C
language? No one specified a set of test methods for the ANSI C
standard. People in the know wanted to see how to test the C standard,
and through a lot of hard work built the Plum-Hall test suite. The
U.S. government created a FIPS for C, and chose an available suite.
There were no test methods for this work. No added burden on the
volunteer standards community to respecify itself.
A great tool; But only a tool!
LIS - The Great Experiment
Language Independent Specification (LIS) is burden Number #2 on
working group members. Two working groups have been operating in the
POSIX space for quite some time in programming languages other than C.
One is the POSIX.5 Ada Bindings group, which has re-cast the POSIX.1
standard into Ada, and is now working on POSIX.4 (Real-time
Extensions.) The second is POSIX.9 which has similarly cast POSIX.1
into FORTRAN 77, and is now considering what to do with Fortran 90.
The two groups have finished their work. Two real standards exist
within the IEEE standards realm:
- IEEE Std 1003.5-1992 (Ada Bindings to IEEE Std 1003.1-
1990.)
- IEEE Std 1003.9-1992 (F77 Bindings to IEEE Std 1003.1-
1990.)
A small digression is required on ISO POSIX. Along the way, IEEE
POSIX entered the international community and an ISO Working Group
(WG15) was created as its home in the Subcommittee on Programming
Languages (SC22). WG15 is not a standards development group per se, in
that it does no drafting of specifications. Its job is to review the
draft IEEE documents and make recommendations to the IEEE, through the
ANSI sponsored U.S. Technical Advisory Group (TAG) on POSIX, back to
the POSIX Sponsor Executive Committee.
Do not be fooled. There is a substantial overlap in the key personnel
of the IEEE working groups and people sitting in the WG15 meetings as
individual technical specialists from their respective national POSIX
standards groups.
ISO began trying to specify programming interface standards in
programming language independent ways, such that the functional
specification appears once, with multiple bindings. It seems expensive
to continually re-specify a standard from one language into a standard
in another language. There is the feeling that there is twice the work
effort, plus the co-ordination effort.
A different international group, WG11, is working at defining abstract
data types and such. All programmatic interfaces could eventually be
described in some abstract functional way and each individual language
binding would just ``fall-out'' once the mapping from the abstract
types to program language types had been established. Because of early
experiments in specifying standards this way, language independence
was inflicted on POSIX as a requirement from WG15. POSIX the Guinea
Pig. WG11 had never been faced with POSIX.
All this means every standard becomes two standards. There is a book
describing the functional specification in abstract data types, and a
book specifying a mapping to a real programming language's syntax,
along with additional required semantics. Try re-reading each of the
last few paragraphs, and after each repeat, ``It is intended to be
used by both application developers and system implementors.''
Ideally, ISO WG members believed that the functional specification
would be a ``thick'' book, and that the language binding would be
``thin''.
The Ada group, POSIX.5, chose not to split their work. They argued it
was too late in their project and that a sufficiently mature POSIX.1
LIS did not exist. They further argued that they had to produce a
``thick'' language binding reproducing much of the semantic content of
the POSIX.1 book, re-cast into Ada-speak, in-line. Programmer
usability was very high on their list of priorities. Think about that
for a minute.
I work in an environment where we regularly refer to the POSIX.1
standard. We write code that needs to be portable to many non-Unix
based architectures that provide POSIX.1 interfaces. All of our many
copies of POSIX.1 are very dog- eared and marked up. We use our copies
daily. It is a useful book from which to program. It is not a
tutorial. It is a programmer's reference.
I recently had to go through the POSIX.5 and POSIX.9 standards. I am
not an Ada programmer, but still found the information I needed to
find, in an easily understandable form. The POSIX.5 group did their
job well. Yes, it is a thick binding repeating the semantic functional
material of POSIX.1. And yes, even though the POSIX.5 standard is
supposed to exactly mirror the POSIX.1 standard, I found a bug, (or at
least something about which to request an interpretation.) But I found
the information, clearly laid out; even the bug!
The POSIX.9 (FORTRAN 77) working group chose to attempt a thin
language binding to POSIX.1. They were very tight for resources and
they wanted to do the right thing with respect to the ISO WG15
requirements. Through no fault of their efforts, I found it to be a
difficult book to use, and I was a Fortran programmer in a previous
incarnation.
First, you immediately run into the two book issue. Look up the syntax
in POSIX.9 which immediately punts you to the semantics in POSIX.1. So
you jockey about two books in your lap, continually cross referencing.
Second, you continually switch frames of reference. In one book, there
is a solid real world line of language syntax; in the other book, a
description of that syntax's semantics in a different specification
language (C.)
In balloting the POSIX.1 Language Independent Specification (LIS), I
ran into the same problems. Two books, two frames of reference. At
least POSIX.1 Classic (IEEE Std 1003.1-1990 == ISO/IEC IS
9945.1:1990) stands as an existing reference against which to compare
these models. When we begin balloting drafts of API standards as LIS
and attendent bindings in at least one language, will we be able to
catch all the holes?
The IEEE paid to have the initial drafts of POSIX.1 LIS and its
C-binding (POSIX.16) produced. They couldn't get the work done any
other way. Paul Rabin worked long and hard to produce guidelines for
writing LIS and language bindings. This work was done within the IEEE
POSIX realm, although Paul liaised closely with ISO WG11 and WG15. The
few IEEE POSIX working groups that have attempted partial or complete
drafts of their work using these guidelines, have immediately started
finding problems in their previous C language specific descriptions.
Just like test methods, prodding the text by attempting to re-cast it
into a different form made a better specification.
Again, one has to ask if this is a good way to define standards. A
tool to test the specification, yes. The specification itself? One has
to assume that the standard has an audience, and that usability is an
important factor. One should assume that the standard is based on
existing practice for the most part. That existing practice is in a
particular programming language for API type standards. Those will be
the first people to come forward to develop the standard. (There has
to be a need to standardize.)
If others with a different programming language background
participate, this would be ideal. If the experience with the
functionality exists in more than one language, and they all want to
come to the table, this is even better. But we do not live in ideal
worlds. Specifying the functionality in a hard to use (2 document/2
context) format is error prone, especially when the document is being
balloted. Until formal methods become a common method of expression,
we are stuck with English descriptions, and the exacting programming
language syntax of the existing body of experience in that area of
functionality.
Language Independent Test Methods
Yes, you read the title correctly. If the functionality can be
abstracted, described exactly, then bound in various programming
language syntaxes, so to can the test methods of that functionality.
Think about how you would test an Ada run-time implementation of
POSIX.1.
And each is a standard. So there is a base programming language
independent functional specification (LIS) standard, a programming
language binding standard, the LIS test methods standard, and the
language binding standard for those test methods. Balloting will kill
us. We will produce unusable junk if we continue.
Simple economics says we're doomed. The IEEE is being forced to pay up
into ANSI for its international standards efforts. To cover the costs
of simply balloting the quantity of paper, the IEEE has been forced to
start charging $25 US to join balloting groups. To cover the
international participation, they've considered raising this to $50 US.
That means it will cost the individual professional programming member
of the IEEE $200 dollars to join the balloting groups for a set of
standards that represent a simple piece of functionality in which they
are interested.
One might argue that a programmer will only join two balloting groups,
for the LIS and language binding. Because the test methods (LIS and
language binding) are a competing body of text, however, they will
need to check the test methods to confirm they are accurate. Because
of government procurement policies here and abroad, the test methods
will be important!
An Architect's Nightmare
LIS, language bindings, LIS test methods, and their bindings. Now
imagine that we start amending the four standards at once. POSIX.6
(Security Extensions to POSIX.1 and POSIX.2) will amend POSIX.1 and
POSIX.2 somehow at some point in the not too distant future. So will
POSIX.4 (Real-time Extensions), POSIX.8 (Transparent File Access), and
POSIX.12 (Sockets/XTI).
The original POSIX.6 document, which did contain all the information
they could put together on POSIX security has just needed to be split
SIX ways.
- The API as an LIS, to amend POSIX.1/LIS,
- The API as a C-binding, to amend POSIX.16,
- The API test methods in LIS form, to amend POSIX.3.1,
(which currently isn't in LIS form,)
- The API test methods as a C-binding, to amend POSIX.3.1
(in its current C form?)
- The utilities, to amend POSIX.2,
- The utility test methods, to amend POSIX.3.2.
Can't wait.
The Problem Revisited
If POSIX continues on its current course, one of two things will
happen.
ONE - They will succeed. The useful standards which do exist will be
amended to an user unfriendly form. An ugly unusable set of standards
will eventually be born. Because of the lack of use, they will fail.
People will not use them. It will be too easy to ignore them.
Programmers will not be able to rely on a certain portability model.
The vendors will continue to sell completely proprietary
implementations.
TWO - They will fail. Under it's own weight, it will collapse. If not
with a bang, then with a slow sickening crunching sound. The people
with the knowledge will get tired, or lose support (as they obviously
aren't producing anything to show their management in recessionary
times.) POSIX.1 will become unusable as it is amended and amended and
almost amended. (``If we wait for another 6 months, we'll be able to
get all the wizzy features in POSIX.42....'')
ONE AND HALF - Life isn't this black or white. The ugly truth will lay
in the middle. We're talking about several thousands of pages of
functional specification. We're talking several hundred people in
working groups, plus hundreds more in balloting groups, plus the
unsuspecting time-delayed purchasing public. The death will be long and
painful. Senility will set in first.
Solutions!
Ok. Let's stop the gloom and doom. Let's take an optimistic pro-active
view! What to do about the problems of POSIX? Let's put it on a diet.
Remove the continued requirement on balloting the test methods as
standards. The Steering Committee of Conformance testing would no
longer have a function. It's members could go do real work in the
POSIX.3 update effort, adding to a useful document which provides a
tool for testing the specifications developed in working groups.
These working groups would immediately cease worrying about developing
complete test methods documents. Those that cared, would when
occasionally confronted with ugly passages in their drafts have a
useful tool (POSIX.3) to use to try asking the question, ``how would I
test this?''
Ballot groups could concentrate on the real specification in front of
them. Repeat again: Bad test methods standards will be dangerous in
the marketplace.
Individual technical members in working groups could stop worrying
about completely re-specifying their document. Possibly some that
cared, with the newly found time, might actually write some real
honest-to-god test cases. These would surface, instead of everyone
waiting to see which way the testing wind was going to blow by large
governmental agencies here and abroad. These test cases might even be
used, therefore useful.
Should these large governmental testing concerns wish to compare the
merits of test suites, they could require that they are documented,
and record results according to POSIX.3. Render unto the standards
community that which is the standards community's, and render unto the
marketplace that which is the marketplace's.
Who can act on this recommendation? The IEEE POSIX Sponsor Executive
Committee can. They are made up of the working group chairs, the
steering committee chairs, and institutional representatives. There is
a list of these at the end of the article, with email addresses. Send
them e- mail. It really only takes a minute. It will save you a lot of
future grief to take the minute to ask questions NOW!
There is also a list of some important heads of delegation within the
ISO POSIX WG15. WG15 is considering forwarding IEEE test methods
documents as standards at the international level. Then we can all
live with any mistakes in the U.S. government procurement policies!
E-mail soon! E-mail often!
Let's continue the POSIX diet. Programming Language Independent
Specifications should be stopped for the time being. The IEEE has put
forward an incredible good faith attempt. The experiment should be
considered a success! We have demonstrated that we don't yet know
enough about specifying API standards in this abstract way. We should
cease to hold up the working process.
Once the problem is better understood, and our methods of describing
things in an LIS improve, we can begin exporing the possibilites.
Notice that I didn't say retrofit or recast. I said explore the
possibilities. Until we actually add a few of the large amendments to
the base standard, changing its format midstream just opens things up
for abuse and error. Let's do it a few times in languages that many
of us understand, ie. C, Fortran, Ada, before tackling the problem
with little understood methods, which have been untried at this scale.
What would happen? Working groups would spend less time trying to
re-cast their work (again!) into LIS. They would spend more time on
the real specification, making it usable ``for application developers
and systems implementors.''
When the existing working groups want to bind something in more than
one language, they arrange to attend one anothers' meetings, and they
work together. This sometimes takes the form of the complex strained
negotiations that are the consensus process. This process is already
in place in POSIX and has been for some time. It works. The LIS has
not been required in producing the usable standards documents to date.
Who can act on this recommendation? Once again, the IEEE POSIX
Sponsor Executive Committee can. This one is harder, however, as ISO
WG15 is also involved.
First, the SEC has to be willing to say ``no''. This is not a surly
uncooperative ``no''. A huge work effort has gone into the LIS
experiment. There is real experience in the IEEE POSIX projects with
this. The SEC can say ``no'' with confidence based on experience. ISO
cannot claim the same experience. (If they could, they would have been
helping us a long time ago.)
Second, ISO WG15 has to be willing to say ``no''. Remember that there
is a sizable overlap in the small membership of WG15, and members of
the SEC. The IEEE POSIX working groups have many international members
who show up in the Canadian, UK, American, and German delegations.
Education is certainly not the problem here, however, communication
might be.
Other special working groups within ISO may be concerned with this
approach, but again the experience lies within the IEEE POSIX working
groups, which overlap with ISO WG15. Other ISO concerns should be
acknowledged and put to rest. Once again I say: E-mail soon! E-mail
often!
Ultimately, in a worst case scenario some level within ISO could
refuse to accept IEEE POSIX drafts for ISO ballotting. I believe even
this case should not be of concern, based on the following examples:
- ISO WG15 has not accepted the perfectly useful IEEE POSIX.5 for
international standardization, since it did not fit the ISO
requirements. ISO WG9 (ISO Ada Working Group) has been very
concerned by this action and is attempting to fast track the IEEE
POSIX document.
- A representative from AFNOR (France's National standards
organization) voiced strong support for the IEEE POSIX groups to
continue to bring forward the standards as LIS at the last ISO
WG15 meeting. He then immediately expressed grave concerns that
POSIX.4 be brought forward as quickly as possible in its current
C-based form to the Draft International Standard (DIS) state. You
see the French government can procure against a DIS.
Ultimately, if the IEEE POSIX working groups do their job right and
produce useful and usable standards, the market will demand their use,
even if they have to be fast-tracked into the back door to make them
international standards for the international market place. Twisting
the standardization process away from defining detailed specifications
towards suiting procurement processes from organizations that are too
big to change is wrong!
POSIX has market momentum. It will effect the way you do things. The
working groups have produced useful standards, but that is now in
jeopardy. You can effect the process. If you can't get directly
involved, e-mail the appropriate people below and ask questions!
Explain your concerns! Otherwise, you'll have to live with their
decisions.
Who Ya Gonna Call?
Position Name E-mail
IEEE Concerns
Chair SEC Jim Isaak isaak@decvax.dec.com
Vice Chair Interpretations Andrew Twigger att@root.co.uk
Vice Chair Balloting Lorraine Kevra l.kevra@att.com
Chair Steering Comm on
Conf Testing Roger Martin rmartin@swe.ncsl.nist.gov
Chair Project Management
Committee Shane McCarron s.mccarron@ui.org
Chair POSIX.1 Paul Rabin rabin@osf.org
Chair POSIX.2 Hal Jespersen hlj@posix.com
Chair POSIX.3 Lowell Johnson 3lgj@rsvl.unisys.com
Chair POSIX.4 Bill Corwin wmc@littlei.intel.com
Chair POSIX.5 Jim Lonjers lonjers@prc.unisys.com
Chair POSIX.6 Ron Elliot elliott%aixsm@uunet.uu.net
Chair POSIX.7 Martin Kirk m.kirk@xopen.co.uk
Chair POSIX.8 Jason Zions jason@cnd.hp.com
Chair POSIX.9 Michael Hannah mjhanna@sandia.gov
Chair POSIX.12 Bob Durst durst@mitre.org
USENIX Institutional Rep Jeff Haemer jsh@canary.com
EurOpen IR Stephen Walli stephe@mks.com
Uniforum IR Ralph Barker ralph@uniforum.org
DECUS IR Loren Buhle buhle@xrt.upenn.edu
OSF IR John Morris jsm@osf.org
Unix International IR Shane McCarron s.mccarron@ui.org
X/Open IR Derek Kaufman d.kaufman@xopen.co.uk
WG15 Concerns
Convenor WG15 Jim Isaak isaak@decvax.dec.com
US Head of Delegation John Hill hill@prc.unisys.com
Canadian HoD Arnie Powell arniep@canvm2.vnet.ibm.com
UK HoD David Cannon cannon@exeter.ac.uk
German HoD Ron Elliot elliott%aixsm@uunet.uu.net
Dutch HoD Herman Wegenaar (phone: +31 50 637052)
Japanese HoD Yasushi Nakahara ynk@ome.toshiba.co.jp
French HoD Jean-Michel Cornu jean-michel.cornu@afuu.fr
Danish HoD Keld Simenson keld@dkuug.dk
Volume-Number: Volume 29, Number 86
Re: POSIX - Caving In Under Its Own Weight (Long
Author: Chris Flatters
Date: Wed, 23 Dec 1992 23:21
Date: Wed, 23 Dec 1992 23:21
20 lines
1339 bytes
1339 bytes
Submitted-by: cflatter@NRAO.EDU (Chris Flatters) In article 1halvbINN9kd@ftp.UU.NET, stephe@usenix.org (Stephen R. Walli) writes: >.... One should assume that the standard is based on >existing practice for the most part. That existing practice is in a >particular programming language for API type standards. Those will be >the first people to come forward to develop the standard. (There has >to be a need to standardize.) Actually, producing a language independent specification plus language bindings is already an existing practice for API standards. Both the ISO/ANSI GKS and PHIGS standards have this form. The only aspect of the POSIX effort that cuts new ground is the use of LI specifications to approximate existing APIs. Chris Flatters cflatter@nrao.edu Volume-Number: Volume 29, Number 88
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Chuck Karish
Date: Thu, 24 Dec 1992 03:03
Date: Thu, 24 Dec 1992 03:03
147 lines
6848 bytes
6848 bytes
Submitted-by: karish@pangea.Stanford.EDU (Chuck Karish) In article <1halvbINN9kd@ftp.UU.NET> stephe@usenix.org (Stephen R. Walli) writes, as part of a well-considered analysis that points out some critical problems: >I think POSIX is caving in under its own weight. I agree. >Test Method Madness >Now, a standard cannot offically exit balloting without having a test >method specification that is also a standard. This instantly sets up >a directly competing body of text to the original standard. I've been under the impression that the test methods must always defer to the semantics defined in the base document. The competition for developers' attention is real! >Test methods standards will become the annointed specification for the >test suite to demonstrate conformance by organisations with the funds >or market presence to demand as much. Implementations can hit the >narrower mark of the test suite (embodying the standard test methods) >to naively certify rather than hit the standard itself. This is always the case, as far as I can tell. Implementations of a standard are tested (and used!) according to their behavior. It is problematic whether aspects of the base specification that are not testable belonged there in the first place. >If you don't >realise the subtle and nasty differences that can appear, spend some >time with the POSIX.1 standard (IEEE Std 1003.1- 1990), and with its >newly declared standard test methods (IEEE Std 1003.3.1-1992). It's to be called 2003.1-1992. Is the problem with the many errors in 2003.1 or with the philosophy of certification based only on testable behavior? My observation has been that the nasty differences arise because the writers of the base standard don't consider carefully enough how the standard will be implemented. The discipline of considering test methods helps focus attention on these problems before errors in the standards are immortalized as hacks in the implementations. >Now what happens when someone requests an interpretation of a standard >with its test methods? In the past, people who wondered about the meaning of an aspect of a base standard asked the relevant interpretations committee for a ruling. I don't see that the situation is much different now. Each assertion in a test methods document is a very specific statement about the meaning of the base standard. The interpretations committee for the base standard should be able to assess assertion accuracy easily. >If the request is leveled against the base, what guarantees are there >that the test methods, i.e. a separate standard, will be kept >synchronized? People who use test suites will either demand it or will volunteer and do it themselves. From a practical viewpoint, it's a tremendous amount of work for a certifying authority to continually make allowances for errors in test methods; it's much easier to fix them. This requires that an active ongoing interpretation and maintenance process be supported. >Do test methods need to be standards? If the test methods aren't standardized, test suites will become de facto standards without adequate review. I don't see a viable alternative to standardizing the test methods. I hope we can continue to move away from the practice of hacking our implementations to work around inadequacies in test suites, just as every implementation of a specification no longer has to be a bug-for-bug clone of a reference implementation now that we have a process to standardize specifications. >Testing is >expensive, but the market ultimately protects itself. What has been >done in the TCP/IP space? (If you don't think TCP/IP is a successful >widely implemented specification, stop reading now.) This example is not completely analogous to the POSIX operating system standards. Communication systems are worthless without complete interoperability, so the marketplace is quite efficient in requiring conformance. Move away from that a bit and look at specifications like SCSI, NFS, and the One True GUI, and you'll see that the marketplace does not always cause implementors to see the need to compromise and converge. >What about the C >language? No one specified a set of test methods for the ANSI C >standard. People in the know wanted to see how to test the C standard, >and through a lot of hard work built the Plum-Hall test suite. The >U.S. government created a FIPS for C, and chose an available suite. >There were no test methods for this work. No added burden on the >volunteer standards community to respecify itself. Here's where politics become a problem. It's difficult to design test methods and implement a test suite that do not favor one implementation over another. Moreover, it's expensive: sufficiently expensive that it's too risky to develop a test suite that may not be accepted. This is problematic even with standardized test methods. [ The solution: don't ballot on test methods. ] >Ballot groups could concentrate on the real specification in front of >them. Repeat again: Bad test methods standards will be dangerous in >the marketplace. Without the balloting, there won't be any test methods standards. And if we think back to the misgivings expressed above about naively certifying against test suites rather than against standards, we'll come to expect the bad test methods to drive out the good. The question of who will be willing to take on all the work of doing the interpretations is a good one. The 1003.1 interpretations folks will be swamped for some time to come with questions about the accuracy of 2003.1 assertions. The situation would be an absolute nightmare if they were in the position of having to answer corresponding sets of questions relating to multiple test methods specifications that had not been through a review process. It's much more efficient to get a standard right the first time than by patching it through the review and maintenance process. Without balloting on test methods, we'll wind up with more wasted effort and less to show for it, both in the base standards and in the test methods. -- Chuck Karish karish@mindcraft.com (415) 323-9000 x117 karish@pangea.stanford.edu Volume-Number: Volume 29, Number 90
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Andrew Hume
Date: Thu, 24 Dec 1992 06:12
Date: Thu, 24 Dec 1992 06:12
90 lines
5908 bytes
5908 bytes
Submitted-by: andrew@alice.att.com (Andrew Hume) i wanted to add some commentary to stephe's treatise (epic? opus? kidney stone?). rather than trying to coherently fit my thoughts to his story line, i thought it better to just dump them out. i therefore assume the reader has the jist of what stephe said in his or her head (and like me, is listening to Front 242 or the Sex Pistols). first of all, i think LIS are a good idea. as some of the readers of this group know, i am the technical editor for an ECMA standard on file system formats (its now DIS 13346!!). i ``had'' to change the draft to follow essentially a thick/thin binding format. what this meant was that there were prose sections that defined the semantics of the standard; for example, how logical volumes were connected to volumes and volume partitions. these prose sections by and large mentioned no field names; for example, logical volumes have identifiers -- it didn't say what the field name was. this prose section corresponds to the LIS; the descriptor formats (in the latter part of the draft) corresponds to a binding to specific descriptor formats (or the thin binding). i objected to this in the beginning but by the end, i was a staunch advocate. it really helps root out spurious details and you get a much better logical consistency in the overall design. But, there are a few field names in there because to get rid of them would have signficantly hurt the readability of the standard; i was not willing to do that just for pedagogy's sake. i have been involved with a few large projects within at&t (and outside at&t) and like most observers, have noticed an inevitable trend for the methodologists to take over. admittedly, you need some administrative goo to manage a few thousand programmers, but you know that things have gone way too far on the day you go to a meeting and someone SERIOUSLY suggests forming an ad hoc group to meet in order to develop ground rules for a (yet-to-be-formed) committee whose job is to develop a methodology for writing a project proposal for the WORK that the original meeting decided had to be done. i have called this the triumph of process over product. to a large extent, this has happened to the posix committees. someone has a good idea: ``test methods''! so far, so good. encourage people developing standards to think about them. so far, even better. develop a standard way to write them up. so far, even betterer. suggest to some over-arch-steering-bignose committee that they be made mandatory. plausible, if not wise. committee accepts this idea. BIG MISTAKE. put in more stark terms (and far less diplomatic terms than stephe did), the question really was 'should test methods be compulsory when we're not sure how far they can go, they will delay every useful posix standard from 1-3 years for NO technical gain, they combine in unpredictable ways with another experimental idea (thick/thin bindings), and will probably drive 30-70% of the skilled volunteers out of the standards process because of the huge increase of arbitrary BS such folks would have to wade through just to stand still?' (actually, even if put in such terms, it might have got through anyway because the people on such over-arch committees TEND to be more concerned with ``purity of essence'' than with ``timely, useful standards''.) again, as a practical matter, my file system committee several times voted against certain additions or changes because the nominal improvement did not justify another draft or slipping the finish date by a month or two. this is not to say that you should get a standard out quick and dirty. however, for the size of standards that posix works on, you WILL have mistakes. so live with it, stop polishing turds and get the bastard out. particularly for some of the older posix commitees, it would have made much more sense to get the original standard out and get some experience with it in the field while you dick around doing the thick/thin stuff. it all has to be reviewed in 5 years anyway; for some of these documents, that is nearly the MTTTT (mean time to thick/thin) and might be less than the MTTTMTT (mean time to test methods & thick/thin). as a final comment, the committment to attend meetings is a significant drain on smaller companies (especially individual consultants). if someone told you that you had to get to meetings for an additional two years because some watery bint had lobbed a methodology at you, you'd think they were crazy. again, don't rush things but you gotta understand that a standard is no good to anyone while its in committee. seriously, if i were involved with a draft that was just about to go out for (near) final ballot and someone said do test methods first, you have just lost me as a future standards volunteer. either i give up in disgust immediately, or i put on a hair shirt and get the job done and then give up forever because i was so pissed off. i have had a fairly pleasant experience working on my standard. i am disturbed that it seems a singular experience; everyone i talk to about their experience (almost all posix) has at best an unhappy experience; some, like stephe and others, have had terrible or worse. my prayers go out to them. andrew hume Volume-Number: Volume 29, Number 91
Re: POSIX - Caving In Under Its Own Weight (Long
Author: Stephen Walli
Date: Fri, 25 Dec 1992 01:12
Date: Fri, 25 Dec 1992 01:12
36 lines
2463 bytes
2463 bytes
Submitted-by: stephe@mks.com (Stephen Walli) >In article 1halvbINN9kd@ftp.UU.NET, stephe@usenix.org (Stephen R. Walli) writes: >Actually, producing a language independent specification plus language >bindings is already an existing practice for API standards. Both the >ISO/ANSI GKS and PHIGS standards have this form. The only aspect of the >POSIX effort that cuts new ground is the use of LI specifications to >approximate existing APIs. When IEEE POSIX began the LIS efforts, the ISO GKS model was investigated and found to be wanting. Hopefully without sounding trite, the GKS LIS proved you could write Fortran programs in any language. POSIX is trying to come up with a model that will take into account different language models, the three it has to take into account immediately being: C, Ada, F77. A lot of effort has gone into this. The IEEE POSIX person responsible for the TCOS LIS Guidelines *is* the liaison to ISO WG11 (Language Binding Techniques) and we have already overreached the WG11 work in a number of areas. Operating system APIs are apples. Graphic objects are oranges. The requirements placed on POSIX were different from the start in that there were anywhere from 6-12 Fortran programmers, and 20-30 Ada programmers looking over our shoulders at any one point in time. These were people who were active in their own working groups, so only had time to provide critical comment over the wall. In separate conversations, I have heard a number of Ada programmers complain bitterly about the GKS Ada binding. ------------------------------------------------------------------------------ Stephen R. Walli, stephe@mks.com | Standards are commercial and Mortice Kern Systems Inc. | international politics dressed up phone: +1 (519) 884-2251 | as technical arguments. Volume-Number: Volume 29, Number 92
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Stephen Walli
Date: Fri, 25 Dec 1992 01:16
Date: Fri, 25 Dec 1992 01:16
75 lines
4003 bytes
4003 bytes
Submitted-by: stephe@mks.com (Stephen Walli)
In <1hbkbtINNmh8@ftp.UU.NET> andrew@alice.att.com (Andrew Hume) writes:
> i wanted to add some commentary to stephe's treatise (epic? opus?
>kidney stone?).
Angst. And thanks for taking the time to read it.
> first of all, i think LIS are a good idea. as some of the readers
>of this group know, i am the technical editor for an ECMA standard on
>file system formats (its now DIS 13346!!). i ``had'' to change the draft
>to follow essentially a thick/thin binding format. what this meant was that
>there were prose sections that defined the semantics of the standard;
> ....
>it really
>helps root out spurious details and you get a much better logical
>consistency in the overall design. But, there are a few field names in
>there because to get rid of them would have signficantly hurt the readability
>of the standard; i was not willing to do that just for pedagogy's sake.
I agree very much with your statement about the ability to better specify
the standard, by stressing it and re-casting it. A couple of questions,
because it sounds like you've been able to do something useful with your
LIS.
1. I haven't seen your spec (and I know its electronically available :-)
but how big is it wrt POSIX.1? I think size and scope has a lot to
do with some of the problems in POSIX.
2. I found the two book/two context problem really hurts usability.
( I don't believe this is the simple publishing problem some people
think it is.) Are their similar concerns with your spec?
3. How many language bindings are there to your LIS? And what languages
are they?
4. Have you seen the current POSIX.1/LIS and POSIX.16 C-binding?
If so, what did you think?
> to a large extent, this has happened to the posix committees.
>someone has a good idea: ``test methods''!
>....
>they will delay every useful
>posix standard from 1-3 years for NO technical gain, they combine
>in unpredictable ways with another experimental idea (thick/thin bindings),
>and will probably drive 30-70% of the skilled volunteers out of the
>standards process because of the huge increase of arbitrary BS such
>folks would have to wade through just to stand still?' (actually, even if
>put in such terms, it might have got through anyway because the
>people on such over-arch committees TEND to be more concerned with
>``purity of essence'' than with ``timely, useful standards''.)
To give a real example: POSIX.4 (Real-time Extensions to POSIX.1) is almost
done. It will go in front of the IEEE Standards Board in June. There are no
test methods. To construct test methods, they should do so in an LIS form,
plus C binding. But then the standard is not yet in LIS form. Plain old
fashioned C. If I found out, as a poor individual programmer in the
industry, that this useful specification was being withheld by the IEEE
standards board because it didn't have this other thing (of NO value to
me as programmer) called test methods, I would yell VERY LOUDLY at ANSI,
which certifies the IEEE to produce standards.
As always, my two cents.
cheers,
stephe
------------------------------------------------------------------------------
Stephen R. Walli, stephe@mks.com | Just say ``NO'' to anticipatory
Mortice Kern Systems Inc. | standards.
phone: +1 (519) 884-2251 |
Volume-Number: Volume 29, Number 93
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Jerry M. Carlin
Date: Fri, 25 Dec 1992 01:17
Date: Fri, 25 Dec 1992 01:17
18 lines
1262 bytes
1262 bytes
Submitted-by: jmcarli@srv.pacbell.com (Jerry M. Carlin) There is yet another problem: scope. I'm in the process of reviewing 1003.6 draft 13. Lots of good work went into it and there is lots that I can agree with but my biggest problem is what they left out. IMHO 1003.6 won't REALLY be complete until the year 2000, if then, given that I&A and lots of other things are not currently in the standard. Even for what is being standardized, my biggest problem is usability. For example, you can have audit, but no commands (none!) that deal with audit. I'm not sure what the answer is, but if we're not careful it will be Windows NT:-( -- Jerry M. Carlin (510) 823-2441 jmcarli@srv.pacbell.com Alchemical Engineer and Virtual Realist Volume-Number: Volume 29, Number 94
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Andrew Hume
Date: Fri, 25 Dec 1992 07:26
Date: Fri, 25 Dec 1992 07:26
41 lines
2438 bytes
2438 bytes
Submitted-by: andrew@alice.att.com (Andrew Hume) In article <1hdndfINNi52@ftp.UU.NET>, stephe@mks.com (Stephen Walli) writes: > 1. I haven't seen your spec (and I know its electronically available :-) > but how big is it wrt POSIX.1? I think size and scope has a lot to > do with some of the problems in POSIX. the spec all up is 120-odd pages, including system requirements etc. so it is maybe a third of 9945-1 and some infinitesimal fraction of 1003.2. the size is a second order effect, i think; the thing that hurts you most is the precision you need, and the need to cover a bunch of extent systems. > 2. I found the two book/two context problem really hurts usability. > ( I don't believe this is the simple publishing problem some people > think it is.) Are their similar concerns with your spec? nup. we were smart enough to insist on the 5 parts of our spec being published together as a single volume. and another standard being done at the same time which uses two of our parts verbatim is also including those two parts in their volume for mainly readability issues. > 3. How many language bindings are there to your LIS? And what languages > are they? As we are a format standard, and not an application interface standard, we have no languages as such. however, specific descriptor formats are analogous to languages; we include one such binding (that is, one set of descriptors) in the standard. (as an example, i know of some work on another binding with rather different performance characteristics.) > 4. Have you seen the current POSIX.1/LIS and POSIX.16 C-binding? > If so, what did you think? regrettably, not for some time. is it possible to get something electronic? andrew hume Volume-Number: Volume 29, Number 95
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Chuck Karish
Date: Fri, 25 Dec 1992 23:53
Date: Fri, 25 Dec 1992 23:53
35 lines
2325 bytes
2325 bytes
Submitted-by: karish@pangea.Stanford.EDU (Chuck Karish) In article <1hdndfINNi52@ftp.UU.NET> stephe@mks.com (Stephen Walli) writes: >To give a real example: POSIX.4 (Real-time Extensions to POSIX.1) is almost >done. It will go in front of the IEEE Standards Board in June. There are no >test methods. To construct test methods, they should do so in an LIS form, >plus C binding. But then the standard is not yet in LIS form. Plain old >fashioned C. If I found out, as a poor individual programmer in the >industry, that this useful specification was being withheld by the IEEE >standards board because it didn't have this other thing (of NO value to >me as programmer) called test methods, I would yell VERY LOUDLY at ANSI, >which certifies the IEEE to produce standards. Remember that a lot of the functionality in POSIX.4 is invented, either extending what's in existing implementations or specifying the behavior differently. It will be even more important for this standard than for POSIX.1 and POSIX.2 to have agreed-upon test methods. The fact that the IEEE Standards Board won't publish the standard yet does nothing to prevent OS vendors from implementing the C binding, and thus has little effect on the individual programmer's ability to use its features. The tradeoff, from the programmer's point of view, is that the sooner test methods are agreed upon, the sooner it will be possible to write portable code that can be expected to work on all POSIX.4 systems that support the applicable option(s). Language independence is of lesser importance to C programmers, except as it impedes the rest of the process. -- Chuck Karish karish@mindcraft.com (415) 323-9000 x117 karish@pangea.stanford.edu Volume-Number: Volume 29, Number 96
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: James Buster
Date: Fri, 25 Dec 1992 23:55
Date: Fri, 25 Dec 1992 23:55
24 lines
1575 bytes
1575 bytes
Submitted-by: bitbug@netcom.com (James Buster) In article <1hdnejINNi74@ftp.UU.NET> jmcarli@srv.pacbell.com (Jerry M. Carlin) writes: >There is yet another problem: scope. I'm in the process of reviewing >1003.6 draft 13. Lots of good work went into it and there is lots that I >can agree with but my biggest problem is what they left out. IMHO 1003.6 >won't REALLY be complete until the year 2000, if then, given that I&A and >lots of other things are not currently in the standard. Even for what is >being standardized, my biggest problem is usability. For example, you can >have audit, but no commands (none!) that deal with audit. I thought the audit commands were being done as an addendum to 1003.2. Has this idea been dropped? Not to mention the fact (opinion?) that the interfaces specified by 1003.6 are so complex that verification and minimality of the TCB is extremely (impossible?) difficult to assure. Anybody know where I can get a copy of the Trusix spec? -- James Buster bitbug@netcom.com Volume-Number: Volume 29, Number 97
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Casey Schaufler
Date: Tue, 29 Dec 1992 22:14
Date: Tue, 29 Dec 1992 22:14
26 lines
1611 bytes
1611 bytes
Submitted-by: casey@anchovy.wpd.sgi.com (Casey Schaufler) > I thought the audit commands were being done as an addendum to 1003.2. > Has this idea been dropped? All of 1003.6 should be considered an addendum. > Not to mention the fact (opinion?) that the interfaces specified by 1003.6 > are so complex that verification and minimality of the TCB is extremely > (impossible?) difficult to assure. The POSIX ACL spec is Most Heinous. The priviledge mechanism is designed primarily to ease retrofitting existing sysadmin programs, not to provide for the principle of least priviledge. The audit section doesn't actually nail anything down. > Anybody know where I can get a copy of the Trusix spec? The Trusix spec is available from the NSA. Don't strain any muscles getting it, however. The Trusix working group (which I was privileged to be part of) did not (in my opinion) produce anything of real value, primarily because they didn't want to be incompatible with the POSIX efforts. -casey Volume-Number: Volume 30, Number 4
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Stephen Walli
Date: Wed, 30 Dec 1992 22:55
Date: Wed, 30 Dec 1992 22:55
76 lines
4493 bytes
4493 bytes
Submitted-by: stephe@mks.com (Stephen Walli) In <1hg6ucINNft5@ftp.UU.NET> karish@pangea.Stanford.EDU (Chuck Karish) writes: Thank you for taking the time to comment, but I believe I disagree with your comments. >In article <1hdndfINNi52@ftp.UU.NET> stephe@mks.com (Stephen Walli) writes: >>To give a real example: POSIX.4 (Real-time Extensions to POSIX.1) is almost >>done. It will go in front of the IEEE Standards Board in June. There are no >>test methods. >>.... >Remember that a lot of the functionality in POSIX.4 is invented, >either extending what's in existing implementations or specifying >the behavior differently. >It will be even more important for this standard than for POSIX.1 >and POSIX.2 to have agreed-upon test methods. Why? I fail to see the connection between the above two paragraphs. If a lot of POSIX.4 *is* invented, then I would be *real* scared of trusting them to get the test method specification correct without the benefit of real implementations of the base standard upon which to cut real test suites. I would hope that large procurement groups such as the U.S. government would never choose so naive a specification for testing for a possible FIPS of POSIX.4. >The fact that the IEEE Standards Board won't publish the standard yet >does nothing to prevent OS vendors from implementing the C binding, >and thus has little effect on the individual programmer's ability to >use its features. I disagree. VMS implemented to POSIX.4/Draft 9. QNX has implemented a few chapters out of Draft 9 as well, (I think.) I'm not sure how current Lynx is. There is at least one other vendor I know of, implementing to Draft 10. The sooner the working group's work is done, the sooner the IEEE Standards Board can approve it, and the sooner the IEEE can publish it. Until then, there is no definitive reference for a programmer to follow or brow beat a vendor. >The tradeoff, from the programmer's point of view, >is that the sooner test methods are agreed upon, the sooner it will >be possible to write portable code that can be expected to work on >all POSIX.4 systems that support the applicable option(s). Again I ask, why? The sooner the POSIX.4 *standard* exists, the sooner a programmer can write portable code. Test methods *standards* do not matter. The only organizations that seem to really care about test methods *standards* are large governmental procurement agencies. Testing is expensive. They don't have the money to develop the suites in house anymore, in these recessionary times. There is nothing preventing them when they are evaluating possible suites to test conformance to a standard, from laying down the criteria that the suites document individual test cases according to the grammar laid out in POSIX.3 (Test Methodologies for POSIX Standards), and that they report status accordingly. This would give them a basis for judging test suites, one against the other. They could even request that individual test cases are tagged with some sort of Section.subsection.page.line# identifier, and the quoted text from the base standard, so someone could go through the standard with a high-liter, (crude as this may seem,) to check for coverage. They will likely get a better suite, if they have more than one real suite to judge against, than by asking the standards working groups to second guess what a test suite will look like. Or they can pay the testing houses like Mindcraft, Unisoft, Datafocus, and Perennial to develop the suites in this manner. This is not work that should be hoisted onto the standards development working groups any longer. cheers, stephe -- Stephen R. Walli, stephe@mks.com | Just say ``NO'' to anticipatory Mortice Kern Systems Inc. | standards. phone: +1 (519) 884-2251 | Volume-Number: Volume 30, Number 15
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Scott E. Preece
Date: Tue, 05 Jan 1993 00:29
Date: Tue, 05 Jan 1993 00:29
39 lines
2526 bytes
2526 bytes
Submitted-by: preece@urbana.mcd.mot.com (Scott E. Preece) The problem is that in the current environment saying "Don't make us write test methods" really means "We think it's better to send the standard our a little half-baked than to take the time to remove another round of ambiguities." That *may* be the right answer. It may very well be that more ambiguities will be exposed and interpreted by getting the standard out for people to implement. On the other hand, it also may be that each implementor will guess and interpret when faced with ambiguity, rather than seeking interpretation through inconvenient and possibly slow official channels. What is important about the test method requirement is that it requires the standard writers to translate the specification into another form. There is no structural guarantee that the alternative form will be complete or perfect, but there is a high probability that *some* ambiguities will be exposed. My experience with trying to get a system to meet a standard that was intended to be quite unambiguous (the 88000 version of the SVR4 ABI) is that none of the existing standards is there yet and that forcing the authors to think about them a little longer and in a different form is for the good, though I must also acknowledge that I don't know how my own work group is going to get that work done, either. If we can't keep our people and our companies interested, we're going to be stuck with one unambiguous standard: what runs successfully on NT on the architecture whose name I prefer to leave unuttered... I think that would be for the worse, and I hope I would feel that way even if it were our architecture that were the common reference. -- scott preece motorola/mcg urbana design center 1101 e. university, urbana, il 61801 uucp: uunet!uiucuxc!udc!preece, arpa: preece@urbana.mcd.mot.com phone: 217-384-8589 fax: 217-384-8550 Volume-Number: Volume 30, Number 17
Re: POSIX - Caving In Under Its Own Weight (Long)
Author: Jason Zions
Date: Thu, 28 Jan 1993 19:17
Date: Thu, 28 Jan 1993 19:17
28 lines
1587 bytes
1587 bytes
Submitted-by: jason@jazz.cnd.hp.com (Jason Zions) In article <1hqil1INN8tg@ftp.UU.NET> casey@anchovy.wpd.sgi.com (Casey Schaufler) writes: > I thought the audit commands were being done as an addendum to 1003.2. > Has this idea been dropped? >All of 1003.6 should be considered an addendum. Almost. 1003.6 is actually an *amendment*, and to IEEE Std 1003.1-1990. The putative audit commands would be developed in a separate standard which would be an amendment to IEEE Std 1003.2-1992. Jason Zions Chair, 1003.8 Transparent File Access This is not an official statement of The Hewlett-Packard Company. No war- ranty is expressed or implied. The information included herein is not to be construed as a committment on HP's part. Save a tree - disband an ISO working group today. Jason Zions The Hewlett-Packard Company Colorado Networks Division 3404 E. Harmony Road Mail Stop 102 Ft. Collins, CO 80525 USA jason@cnd.hp.com (303) 229-3800 Volume-Number: Volume 30, Number 43
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads