home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / volume.20 / text0067.txt < prev    next >
Encoding:
Internet Message Format  |  1990-08-02  |  32.0 KB

  1. From: <jsh@usenix.org>
  2.  
  3.  
  4.            An Update on UNIX*-Related Standards Activities
  5.  
  6.                               June, 1990
  7.  
  8.                  USENIX Standards Watchdog Committee
  9.  
  10.           Jeffrey S. Haemer, jsh@ico.isc.com, Report Editor
  11.  
  12. Recent Standards Activities
  13.  
  14. This editorial is an overview of some of the spring-quarter standards
  15. activities covered by the USENIX Standards Watchdog Committee.  A
  16. companion article provides a general overview of the committee itself.
  17.  
  18. In this article, I've emphasized non-technical issues, which are
  19. unlikely to appear in official minutes and mailings of the standards
  20. committees.  Previously published articles give more detailed, more
  21. technical views on most of these groups' activities.  If my comments
  22. move you to read one of those earlier reports that you wouldn't have
  23. read otherwise, I've served my purpose.  Of course, on reading that
  24. report you may discover the watchdog's opinion differs completely from
  25. mine.
  26.  
  27. SEC: Standard/Sponsor Executive Committee
  28.  
  29. The biggest hullabaloo in the POSIX world this quarter came out of the
  30. SEC, the group that approves creation of new committees.  At the April
  31. meeting, in a move to slow the uncontrolled proliferation of POSIX
  32. standards, the institutional representatives (IRs) (one each from
  33. Usenix, UniForum, X/Open, OSF, and UI) recommended two changes in the
  34. Project Authorization Request (PAR) approval process: (1) firm
  35. criteria for PAR approval and group persistence and (2) a PAR-approval
  36. group that had no working-group chairs or co-chairs.  Dale Harris, of
  37. IBM Austin, presented the proposal and immediately took a lot of heat
  38. from the attendees, most of whom are working-group chairs and co-
  39. chairs (Dale isn't an IR, but shared the concerns that motivated the
  40. recommendations and asked to make the presentation.)
  41.  
  42. The chair, Jim Isaak, created an ad-hoc committee to talk over the
  43. proposal in a less emotional atmosphere.  Consensus when the committee
  44. met was that the problem of proliferating PARs was real, and the only
  45. question was how to fix it.  The group put together a formal set of
  46. criteria for PAR approval (which John Quarterman has posted to
  47. comp.std.unix), which seems to have satisfied everyone on the SEC, and
  48. passed without issue.  The criteria seem to have teeth: at least one
  49. of the Project Authorization Requests presented later (1201.3, UIMS)
  50.  
  51. __________
  52.  
  53.   * UNIX is a Registered Trademark of UNIX System Laboratories in the
  54.     United States and other countries.
  55.  
  56. June, 1990 Standards Update                Recent Standards Activities
  57.  
  58.  
  59.                 - 2 -
  60.  
  61. flunked the criteria and was rejected.  Two others (1201.1 and 1201.4
  62. toolkits and Xlib) were deferred.  I suspect (though doubt that any
  63. would admit it) that the proposals would have been submitted and
  64. passed in the absence of the criteria.  In another related up-note,
  65. Tim Baker and Jim Isaak drafted a letter to one group (1224, X.400
  66. API), warning them that they must either prove they're working or
  67. dissolve.
  68.  
  69. The second of the two suggestions, the creation of a PAR-approval
  70. subcommittee, sank quietly.  The issue will stay submerged so long as
  71. it looks like the SEC is actually using the approved criteria to fix
  72. the problem.  [ Actually, this may not be true.  Watch for developments
  73. at the next meeting, in Danvers, MA in mid-July.  -jsq]
  74.  
  75. Shane McCarron's column in the July Unix Review covers this area in
  76. more detail.
  77.  
  78. 1003.0: POSIX Guide
  79.  
  80. Those of you who have read my last two columns will know that I've
  81. taken the position that dot zero is valuable, even if it doesn't get a
  82. lot of measurable work done.  This time, I have to say it looks like
  83. it's also making measurable progress, and may go to mock ballot by its
  84. target of fourth quarter of this year.  To me, the most interesting
  85. dot-zero-related items this quarter are the growing prominence of
  86. profiles, and the mention of dot zero's work in the PAR-approval-
  87. criteria passed by the SEC.
  88.  
  89. Al Hankinson, the chair, tells me that he thinks dot zero's biggest
  90. contribution has been popularizing profiles -- basically,
  91. application-area-specific lists of pointers to other standards.  This
  92. organizing principle has been adopted not only by the SEC (several of
  93. the POSIX groups are writing profiles), but by NIST (Al's from NIST)
  94. and ISO.  I suspect a lot of other important organizations will fall
  95. in line here.
  96.  
  97. Nestled among the other criteria for PAR approval, is a requirement
  98. that PAR proposers write a sample description of their group for the
  99. POSIX guide.  Someone questioned why proposers should have to do dot
  100. zero's job for them.  The explanation comes in two pieces.  First, dot
  101. zero doesn't have the resources to be an expert on everything, it has
  102. its hands full just trying to create an overall architecture.  Second,
  103. the proposers aren't supplying what will ultimately go into the POSIX
  104. guide, they're supplying a sample.  The act of drafting that sample
  105. will force each proposer to think hard about where the new group would
  106. fit in the grand scheme, right from the start.  This should help
  107. insure that the guide's architecture really does reflect the rest of
  108. the POSIX effort, and will increase the interest of the other groups
  109. in the details of the guide.
  110.  
  111. June, 1990 Standards Update                Recent Standards Activities
  112.  
  113.  
  114.                 - 3 -
  115.  
  116. 1003.1: System services interface
  117.  
  118. Dot one, the only group that has completed a standard, is in the
  119. throes of completing a second.  Not only has the IEEE updated the
  120. existing standard -- the new version will be IEEE 1003.1-1990 -- ISO
  121. appears on the verge of approving the new version as IS 9945-1.  The
  122. major sticking points currently seem limited to things like format and
  123. layout -- important in the bureaucratic world of international
  124. standards, but inconsequential to the average user.  Speaking of
  125. layout, one wonders whether the new edition and ISO versions will
  126. retain the yellow-green cover that has given the current document its
  127. common name -- the ugly green book.  (I've thought about soaking mine
  128. in Aqua Velva so it can smell like Green Chartreuse, too.)
  129.  
  130. The interesting issues in the group are raised by the dot-one-b work,
  131. which adds new functionality.  (Read Paul Rabin's snitch report for
  132. the gory details.) The thorniest problem is the messaging work.
  133. Messaging, here, means a mechanism for access to external text and is
  134. unrelated to msgget(), msgop(), msgctl(), or any other message-passing
  135. schemes.  The problem being addressed is how to move all printable
  136. strings out of our programs and into external ``message'' files so
  137. that we can change program output from, say, English to German by
  138. changing an environmental variable.  Other dot-one-b topics, like
  139. symbolic links, are interesting, but less pervasive.  This one will
  140. change the way you write any commercial product that outputs text --
  141.  anything that has printf() statements.
  142.  
  143. The group is in a quandary.  X/Open has a scheme that has gotten a
  144. little use.  We're not talking three or four years of shake-out, here,
  145. but enough use to lay a claim to the ``existing practice'' label.  On
  146. the other hand, it isn't a very pleasant scheme, and you'd have no
  147. problem coming up with candidate alternatives.  The UniForum
  148. Internationalization Technical Committee presented one at the April
  149. meeting.  It's rumored that X/Open itself may replace its current
  150. scheme with another.  So, what to do?  Changing to a new scheme
  151. ignores existing internationalized applications and codifies an
  152. untried approach.  Blessing the current X/Open scheme freezes
  153. evolution at this early stage and kills any motivation to develop an
  154. easy-to-use alternative.  Not providing any standard makes
  155. internationalized applications (in a couple of years this will mean
  156. any non-throw-away program) non-portable, and requires that we
  157. continue to have to make heavy source-code modifications on every
  158. port -- just what POSIX is supposed to help us get around.
  159.  
  160. To help you think about the problem, here's the way you'll have to
  161. write the "hello, world" koan using the X/OPEN interfaces:
  162.  
  163. June, 1990 Standards Update                Recent Standards Activities
  164.  
  165.  
  166.                 - 4 -
  167.  
  168.   #include <stdio.h>
  169.   #include <nl_types.h>
  170.   #include <locale.h>
  171.   main()
  172.   {
  173.           nl_catd catd;
  174.  
  175.           (void)setlocale(LC_ALL, "");
  176.           catd = catopen("hello", 0); /* error checking omitted for brevity */
  177.           printf(catgets(catd, 1, 1,"hello, world\n"));
  178.   }
  179.  
  180. and using the alternative, proposed UniForum interfaces:
  181.  
  182.   #include <stdio.h>
  183.   #include <locale.h>
  184.   main()
  185.   {
  186.           (void)setlocale(LC_ALL, "");
  187.           (void)textdomain("hello");
  188.           printf(gettext("hello, world\n"));
  189.   }
  190.  
  191. I suppose if I had my druthers, I'd like to see a standard interface
  192. that goes even farther than the UniForum proposal: one that adds a
  193. default message catalogue/group (perhaps based on the name of the
  194. program) and a standard, printf-family messaging function to hide the
  195. explicit gettext() call, so the program could look like this:
  196.  
  197.   #include <stdio.h>
  198.   #include <locale.h>
  199.   #define printf printmsg
  200.   main()
  201.   {
  202.           (void)setlocale(LC_ALL, ""); /* inescapable, required by ANSI C */
  203.           printf("hello, world\n");
  204.   }
  205.  
  206. but that would still be untested innovation.
  207.  
  208. The weather conditions in Colorado have made this a bonus year for
  209. moths.  Every morning, our bathroom has about forty moths in it.
  210. Stuck in our house, wanting desperately to get out, they fly toward
  211. the only light that they can see and beat themselves to death on the
  212. bathroom window.  I don't know what to tell them, either.
  213.  
  214. June, 1990 Standards Update                Recent Standards Activities
  215.  
  216.  
  217.                 - 5 -
  218.  
  219. 1003.2: Shell and utilities
  220.  
  221. Someone surprised me at the April meeting by asserting that 1003.2
  222. might be an important next target for the FORTRAN binding group.
  223. (``What does that mean?'' I asked stupidly.  ``A standard for a
  224. FORTRAN-shell?'') Perhaps you, like I, just think of dot two as
  225. language-independent utilities.  Yes and no.
  226.  
  227. First, 1003.2 has over a dozen function calls (e.g., getopt()).  I
  228. believe that most of these should be moved into 1003.1.  System() and
  229. popen(), which assume a shell, might be exceptions, but having
  230. sections of standards documents point at things outside their scope is
  231. not without precedent.  Section 8 of P1003.1-1988 is a section of C-
  232. language extensions, and P1003.5 will depend on the Ada standard.  Why
  233. shouldn't an optional section of dot one depend on dot two?  Perhaps
  234. ISO, already committed to re-grouping and re-numbering the standards,
  235. will fix this.  Perhaps not.  In the meantime, there are functions in
  236. dot two that need FORTRAN and Ada bindings.
  237.  
  238. Second, the current dot two standard specifies a C compiler.  Dot nine
  239. has already helped dot two name the FORTRAN compiler, and may want to
  240. help dot two add a FORTRAN equivalent of lint (which I've heard called
  241. ``flint'').  Dot five may want to provide analogous sorts of help
  242. (though Ada compilers probably already subsume much of lint's
  243. functionality).
  244.  
  245. Third, more subtle issues arise in providing a portable utilities
  246. environment for programmers in other languages.  Numerical libraries,
  247. like IMSL, are often kept as single, large source files with hundreds,
  248. or even thousands, of routines in a single .f file that compiles into
  249. a single .o file.  Traditional FORTRAN environments provide tools that
  250. allow updating or extraction of single subroutines or functions from
  251. such objects, analogous to the way ar can add or replace single
  252. objects in libraries.  Dot nine may want to provide such a facility in
  253. a FORTRAN binding to dot two.
  254.  
  255. Anyway, back to the working group.  They're preparing to go to ballot
  256. on the UPE (1003.2a, User Portability Extensions).  The mock ballot
  257. had pretty minimal return, with only ten balloters providing
  258. approximately 500 objections.  Ten isn't very many, but mock ballot
  259. for dot two classic only had twenty-three.  It seems that people won't
  260. vote until they're forced to.
  261.  
  262. The collection of utilities in 1003.2a is fairly reasonable, with only
  263. a few diversions from historic practice.  A big exception is ps(1),
  264. where historic practice is so heterogeneous that a complete redesign
  265. is possible.  Unfortunately, no strong logical thread links the
  266. 1003.2a commands together, so read the ballot with an eye toward
  267. commands that should be added or discarded.
  268.  
  269. June, 1990 Standards Update                Recent Standards Activities
  270.  
  271.  
  272.                 - 6 -
  273.  
  274. A few utilities have already disappeared since the last draft.  Pshar,
  275. an implementation of shar with a lot of bells and whistles, is gone.
  276.  
  277. Compress/uncompress poses an interesting problem.  Though the utility
  278. is based on clear-cut existing practice, the existing implementation
  279. uses an algorithm that is copyrighted.  Unless the author chooses to
  280. give the algorithm away (as Ritchie dedicated his set-uid patent to
  281. public use), the committee is faced with a hard choice:
  282.  
  283.    - They can specify only the user interface.  But the purpose of
  284.      these utilities is to ease the cost of file interchange.  What
  285.      good are they without a standard data-interchange format?
  286.  
  287.    - They can invent a new algorithm.  Does it make sense to use
  288.      something that isn't field-tested or consistent with the versions
  289.      already out there?  (One assumes that the existing version has
  290.      real advantages, otherwise, why would so many people use a
  291.      copyrighted version?)
  292.  
  293. Expect both the first real ballot of 1003.2a and recirculation of
  294. 1003.2 around July.  Note that the recirculation will only let you
  295. object to items changed since the last draft, for all the usual bad
  296. reasons.
  297.  
  298. 1003.3: Test methods
  299.  
  300. The first part of dot three's work is coming to real closure.  The
  301. last ballot failed, but my guess is that one will pass soon, perhaps
  302. as soon as the end of the year, and we will have a standard for
  303. testing conformance to IEEE 1003.1-1988.
  304.  
  305. That isn't to say that all is rosy in dot-one testing.  NIST's POSIX
  306. Conformance Test Suite (PCTS) still has plenty of problems:
  307. misinterpretations of dot one, simple timing test problems that cause
  308. tests to run well on 3b2's, but produce bad results on a 30 mips
  309. machine and even real bugs (attempts to read from a tty without first
  310. opening it).  POSIX dot one is far more complex than anything for
  311. which standard test suites have been developed to date.  The PCTS,
  312. with around 2600 tests and 150,000 lines of code, just reflects that
  313. complexity.  An update will be sent to the National Technical
  314. Information Service (NTIS -- also part of the Department Commerce, but
  315. not to be confused with NIST) around the end of September which fixes
  316. all known problems but, with a suite this large, others are likely to
  317. surface later.
  318.  
  319. By the way, NIST's dot one suite is a driver based on the System V
  320. Verification Suite (SVVS), plus individual tests developed at NIST.
  321. Work has begun on a suite of tests for 1003.2, based, for convenience,
  322. on a suite done originally for IBM by Mindcraft.  It isn't clear how
  323. quickly this work will go.  (For example, the suite can't gel until
  324. dot two does.) For the dot one work, NIST made good use of Research
  325.  
  326. June, 1990 Standards Update                Recent Standards Activities
  327.  
  328.  
  329.                 - 7 -
  330.  
  331. Associates -- people whose services were donated by their corporations
  332. during the test suite development.  Corporations gain an opportunity
  333. to collaborate with NIST and inside knowledge of the test suite.  I
  334. suspect Roger Martin may now be seeking Research Associates for dot
  335. two test suite development.  If you're interested in doing this kind
  336. of work, want to spend some time working in the Washington, D.C. area,
  337. and think your company would sponsor you, his email address is
  338. rmartin@swe.ncsl.nist.gov.
  339.  
  340. By the way, there are a variety of organizational and numbering
  341. changes happening in dot three.  See Doris Lebovits's snitch report
  342. for details.
  343.  
  344. The Steering Committee on Conformance Testing (SCCT) is the group to
  345. watch.  Though they've evolved out of the dot three effort, they
  346. operate at the TCOS level, and are about to change the way POSIX
  347. standards look.  In response to the ever-increasing burden placed on
  348. the testing committee, the SCCT is going to recommend that groups
  349. producing new standards include in those standards a list of test
  350. assertions to be used in testing them.
  351.  
  352. Groups that are almost done, like 1003.2, will be grandfathered in.
  353. But what should be done with a group like dot four -- not far enough
  354. along that it has something likely to pass soon, but far enough to
  355. make the addition of major components to its ballot a real problem.
  356. Should this case be treated like language independence?  If so,
  357. perhaps dot four will also be first in providing test assertions.
  358.  
  359. 1003.4: Real-time extensions
  360.  
  361. The base dot-four document has gone to ballot, and the ensuing process
  362. looks like it may be pretty bloody.  Fifty-seven percent of the group
  363. voted against the current version.  (One member speculated privately
  364. that this meant forty-three percent of the balloting group didn't read
  365. it.) Twenty-two percent of the group (nearly half of those voting
  366. against) subscribed to all or part of a common reference ballot, which
  367. would require that entire chapters of the document be completely
  368. reworked, replaced, or discarded.  Subscribers to this common
  369. reference ballot included employees of Unix International and the Open
  370. Software Foundation, of Carnegie-Mellon University and the University
  371. of California at Berkeley, and of Sun Microsystems and Hewlett-
  372. Packard.  (USENIX did not ballot similarly, but only because of lack
  373. of time.) Some of these organizations have never before agreed on the
  374. day of the week, let alone the semantics of system calls.  But then,
  375. isn't bringing the industry together one goal of POSIX?
  376.  
  377. Still, the document has not been returned to the working group by the
  378. technical editors, so we can assume they feel hopeful about resolving
  379. all the objections.  Some of this hope may come from the miracle of
  380. formality.  I've heard that over half of the common reference ballot
  381. could be declared non-responsive, which means that there's no
  382.  
  383. June, 1990 Standards Update                Recent Standards Activities
  384.  
  385.  
  386.                 - 8 -
  387.  
  388. obligation to address over half the concerns.
  389.  
  390. The threads work appears to enjoy a more positive consensus.  At least
  391. two interesting alternatives to the current proposal surfaced at the
  392. April meeting, but following a lot of discussion, the existing
  393. proposal stood largely unchanged.  I predict that the threads work
  394. which will go to ballot after the base, dot four document, will be
  395. approved before it.  John Gertwagen, dot four snitch and chair of
  396. UniForum's real-time technical committee, has bet me a beer that I'm
  397. wrong.
  398.  
  399. 1003.5: Ada bindings and 1003.9: FORTRAN-77 bindings
  400.  
  401. These groups are coming to the same place at the same time.  Both are
  402. going to ballot and seem likely to pass quickly.  In each case, the
  403. major focus is shifting from technical issues to the standards process
  404. and its rules: forming balloting groups, relations with ISO, future
  405. directions, and so on.
  406.  
  407. Here's your chance to do a good deed without much work.  Stop reading,
  408. call someone you know who would be interested in these standards, and
  409. give them the name of someone on the committee who can put them into
  410. the balloting group.  (If nothing else, point them at our snitches for
  411. this quarter: Jayne Baker cgb@d74sun.mitre.org, for dot five, and
  412. Michael Hannah mjhanna@sandia.gov, for dot nine.) They'll get both a
  413. chance to see the standard that's about to land on top of their work
  414. and a chance to object to anything that's slipped into the standard
  415. that doesn't make sense.  The more the merrier on this one, and they
  416. don't have to go to any committee meetings.  I've already called a
  417. couple of friends of mine at FORTRAN-oriented companies; both were
  418. pleased to hear about 1003.9, and eager to read and comment on the
  419. proposed standard.
  420.  
  421. Next up for both groups, after these standards pass, is negotiating
  422. the IEEE standard through the shoals of ISO, both getting and staying
  423. in sync with the various versions and updates of the base standard
  424. (1003.1a, 1003.1b, and 9945-1), and language bindings to other
  425. standards, like 1003.2 and 1003.4.  (See my earlier discussion of dot
  426. two.) Notice that they also have the burden of tracking their own
  427. language standards.  At least in the case of 1003.9, this probably
  428. means eventually having to think about a binding to X3J3 (Fortran 90).
  429.  
  430. 1003.6: Security
  431.  
  432. This group has filled the long-vacant post of technical editor, and,
  433. so, is finally back in the standards business.  In any organization
  434. whose ultimate product is to be a document, the technical editor is a
  435. key person.  [We pause here to allow readers to make some obligatory
  436. cheap shot about editors.] This is certainly the case in the POSIX
  437. groups, where the technical editors sometimes actually write large
  438. fractions of the final document, albeit under the direction of the
  439.  
  440. June, 1990 Standards Update                Recent Standards Activities
  441.  
  442.  
  443.                 - 9 -
  444.  
  445. working group.
  446.  
  447. I'm about to post the dot six snitch report, and don't want to give
  448. any of it away, but will note that it's strongly opinionated and
  449. challenges readers to find any non-DoD use for Mandatory Access
  450. Control, one of the half-dozen areas that they're standardizing.
  451.  
  452. 1003.7: System administration
  453.  
  454. This group has to solve two problems at different levels at the same
  455. time.  On the one hand, it's creating an object-oriented definition of
  456. system administration.  This high-level approach encapsulates the
  457. detailed implementation of objects interesting to the system
  458. administrator (user, file system, etc.), so that everyone can see them
  459. in the same way on a heterogeneous environment.  On the other hand,
  460. the protocol for sending messages to these objects must be specified
  461. in detail.  If it isn't, manufacturers won't be able to create
  462. interoperable systems.
  463.  
  464. The group as a whole continues to get complaints about its doing
  465. research-by-committee.  It's not even pretending to standardize
  466. existing practice.  I have mixed feelings about this, but am
  467. unreservedly nervous that some of the solutions being contemplated
  468. aren't even UNIX-like.  For example, the group has tentatively
  469. proposed the unusual syntax object action.  Command names will be
  470. names of objects, and the things to be done to them will be arguments.
  471. This bothers me (and others) for two reasons.  First, this confuses
  472. syntax with semantics.  You can have the message name first and still
  473. be object-oriented; look at C++.  Second, it reverses the traditional,
  474. UNIX verb-noun arrangement: mount filesystem becomes filesystem mount.
  475. This flies in the face of the few existing practices everyone agrees
  476. on.  I worry that these problems, and the resulting inconsistencies
  477. between system administration commands and other utilities, will
  478. confuse users.  I have a recurring nightmare of a long line of new
  479. employees outside my door, all come to complain that I've forgotten to
  480. mark one of my device objects, /dev/null, executable.
  481.  
  482. With no existing practice to provide a reality-check, the group faces
  483. an uphill struggle.  If you're an object-oriented maven with a yen to
  484. do something useful, take a look at what this group is doing, then
  485. implement some of it and see if it makes sense.  Look at it this way:
  486. by the time the standard becomes reality, you'll have a product, ready
  487. to ship.
  488.  
  489. 1003.10: Supercomputing
  490.  
  491. This group is working on things many of us us old-timers thought we
  492. had seen the last of: batch processing and checkpointing.  The
  493. supercomputing community, condemned forever to live on the edge of
  494. what computers can accomplish, is forced into the same approaches we
  495. used back when computer cycles were harder to come by than programmer
  496. cycles, and machines were less reliable than software.
  497.  
  498. June, 1990 Standards Update                Recent Standards Activities
  499.  
  500.  
  501.                 - 10 -
  502.  
  503. Supercomputers run programs that can't be run on less powerful
  504. computers because of their massive resource requirements
  505. (cpu/memory/io).  They need batch processing and checkpointing because
  506. many of them are so resource-intensive that they even run for a long
  507. time on supercomputers.  Nevertheless, the supercomputing community is
  508. not the only group that would benefit from standardization in these
  509. areas.  (See, for example, my comments on dot fourteen.) Even people
  510. who have (or wish to have) long-running jobs on workstations, share
  511. some of the same needs for batch processing and checkpointing.
  512.  
  513. Karen Sheaffer, the chair of dot ten, had no trouble quickly recasting
  514. the group's proposal for a batch PAR into a proposal that passed the
  515. SEC's PAR-approval criteria.  The group is modeling a batch proposal
  516. after existing practice, and things seem to be going smoothly.
  517.  
  518. Checkpointing, on the other hand, isn't faring as well.  People who
  519. program supercomputers need to have a way to snapshot jobs in a way
  520. that lets them restart the jobs at that point later.  Think, for
  521. example, of a job that needs to run for longer than a machine's mean-
  522. time-to-failure.  Or a job that runs for just a little longer than
  523. your grant money lasts.  There are existing, proprietary schemes in
  524. the supercomputing world, but none that's portable.  The consensus is
  525. that a portable mechanism would be useful and that support for
  526. checkpointing should be added to the dot one standard.  The group
  527. brought a proposal to dot one b, but it was rejected for reasons
  528. detailed in Paul Rabin's dot one report.  Indeed, the last I heard,
  529. dot-one folks were suggesting that dot ten propose interfaces that
  530. would be called from within the program to be checkpointed.  While
  531. this may seem to the dot-one folks like the most practical approach,
  532. it seems to me to be searching under the lamp-post for your keys
  533. because that's where the light's brightest.  Users need to be able to
  534. point to a job that's run longer than anticipated and say,
  535. ``Checkpoint this, please.'' Requiring source-code modification to
  536. accomplish this is not only unrealistic, it's un-UNIX-like.  (A
  537. helpful person looking over my shoulder has just pointed out that the
  538. lawyers have declared ``UNIX'' an adjective, and I should say
  539. something like ``un-UNIX-system-like'' instead.  He is, of course,
  540. correct.) Whatever the interface is, it simply must provide a way to
  541. let a user point at another process and say, ``Snapshot it,'' just as
  542. we can stop a running job with job control.
  543.  
  544. 1003.12: Protocol-independent interfaces
  545.  
  546. This group is still working on two separate interfaces to the network:
  547. Simple Network Interface (SNI) and Detailed Network Interface (DNI).
  548. The January meeting raised the possibility that the group would
  549. coalesce these into a single scheme, but that scheme seems not to have
  550. materialized.  DNI will provide a familiar socket- or XTI/TLI-like
  551. interface to networks, while SNI will provide a simpler, stdio-like
  552.  
  553. June, 1990 Standards Update                Recent Standards Activities
  554.  
  555.  
  556.                 - 11 -
  557.  
  558. interface for programs that don't need the level of control that DNI
  559. will provide.  The challenge of SNI is to make something that's simple
  560. but not so crippled that it's useless.  The challenge of DNI is to
  561. negotiate the fine line between the two competing, existing practices.
  562. The group has already decided not to use either sockets or XTI, and is
  563. looking at requirements for the replacement.  Our snitch, Andy
  564. Nicholson, challenged readers to find a reason not to make DNI
  565. endpoints POSIX file descriptors, but has seen no takers.
  566.  
  567. 1003.14: Multiprocessing
  568.  
  569. The multiprocessing group, which had been meeting as sort of an ad-hoc
  570. spin-off of the real-time group, was given PAR approval at the April
  571. meeting as 1003.16 but quickly renamed 1003.14 for administrative
  572. reasons.  They're currently going through the standard set of jobs
  573. that new groups have to accomplish, including figuring out what tasks
  574. need to be accomplished, whom to delegate them to, and how to attract
  575. enough working-group members to get everything done.  If you want to
  576. get in on the ground floor of the multiprocessing standard, come to
  577. Danvers and volunteer to do something.
  578.  
  579. One thing that needs to be done is liaison work with other committees,
  580. many of which are attacking problems that bear on multiprocessors as
  581. well.  One example is dot ten's checkpointing work, which I talked
  582. about earlier, Checkpointing is both of direct interest to dot
  583. fourteen, and is analogous to several other problems the group would
  584. like to address.  (A side-effect of the PAR proliferation problem
  585. mentioned earlier is that inter-group coordination efforts go up as
  586. the square of the number of groups.)
  587.  
  588. 1201: Windows, sort of
  589.  
  590. Okay, as a review, we went into the Utah meeting with one official
  591. group, 1201, and four unofficial groups preparing PARs:
  592.  
  593.   1.  1201.1: Application toolkit
  594.  
  595.   2.  1201.2: Recommended Practice for Driveability/User Portability
  596.  
  597.   3.  1201.3: User Interface Management Systems
  598.  
  599.   4.  1201.4: Xlib
  600.  
  601. By the end of the week, one PAR had been shot down (1201.3), one
  602. approved (1201.2), and two remained unsubmitted.
  603.  
  604. The 1201.4 par was deferred because the X consortium says Xlib is
  605. about to change enough that we don't want to standardize the existing
  606. version.  I'll ask, ``If it's still changing this fast, do we want to
  607. even standardize on the next version?'' The 1201.1 PAR was deferred
  608. because the group hasn't agreed on what it wants to do.  At the
  609.  
  610. June, 1990 Standards Update                Recent Standards Activities
  611.  
  612.  
  613.                 - 12 -
  614.  
  615. beginning of the week, the two major camps (OSF/Motif and OPEN LOOK)*
  616. had agreed to try to merge the two interfaces.  By mid-week, they
  617. wouldn't even sit at the same table.  That they'd struck off in an
  618. alternative, compromise direction by the end of the week speaks
  619. extremely highly of all involved.  What the group's looking at now is
  620. a toolkit at the level of XVT**: a layer over all of the current,
  621. competing technologies that would provide portability without
  622. invalidating any existing applications.  This seems like just the
  623. right approach.  (I have to say this because I suggested it in an
  624. editorial about six months ago.)
  625.  
  626. The 1201.3 PAR was rejected.  Actually, 1201 as a whole voted not to
  627. submit it, but the people working on it felt strongly enough that they
  628. submitted it anyway.  The SEC's consensus was that the field wasn't
  629. mature enough to warrant even a recommended practice, but the work
  630. should continue, perhaps as a UniForum Technical Committee.  The study
  631. group countered that it was important to set a standard before there
  632. were competing technologies, and that none of the attendees sponsoring
  633. companies would be willing to foot the bill for their work within
  634. anything but a standards body.  The arguments weren't persuasive.
  635.  
  636. The 1201.2 PAR, in contrast, sailed through.  What's interesting about
  637. this work is that it won't be an API standard.  A fair fraction of the
  638. committee members are human-factors people, and the person presenting
  639. the PAR convinced the SEC that there is now enough consensus in this
  640. area that a standard is appropriate.  I'm willing to believe this, but
  641. I think that stretching the net of the IEEE's Technical Committee on
  642. Operating Systems so wide that it takes in a human-factors standard
  643. for windowing systems is overreaching.
  644.  
  645. X3
  646.  
  647. There are other ANSI-accredited standards-sponsoring bodies in the
  648. U.S. besides the IEEE.  The best known in our field is the Computer
  649. Business Equipment Manufacturers' Association (CBEMA), which sponsors
  650. the X3 efforts, recently including X3J11, the ANSI-C standards
  651. committee.  X3J11's job has wound down; Doug Gwyn tells me that
  652. there's so little happening of general interest that it isn't worth a
  653. report.  Still, there's plenty going on in the X3 world.  One example
  654. is X3B11, which is developing a standard for file systems on optical
  655. disks.  Though this seems specialized, Andrew Hume suggests in his
  656.  
  657. __________
  658.  
  659.   * OSF/Motif is a Registered Trademark of the Open Software
  660.     Foundation.
  661.     OPEN LOOK is a Registered Trademark of AT&T.
  662.  
  663.  ** XVT is a trademark of XVT Software Inc.
  664.  
  665. June, 1990 Standards Update                Recent Standards Activities
  666.  
  667.  
  668.                 - 13 -
  669.  
  670. report that this work may eventually evolve into a standards effort
  671. for file systems on any read-write mass storage device.  See the dot-
  672. four common reference ballot for the kind of feelings new file-system
  673. standards bring out.
  674.  
  675. I encourage anyone out there on an X3 committee who thinks the
  676. committee could use more user exposure and input to file a report.
  677. For example, Doug Gwyn suggests that there is enough activity in the
  678. C++ standards world to merit a look.  If anyone out there wants to
  679. volunteer a report, I'd love to see it.
  680.  
  681. June, 1990 Standards Update                Recent Standards Activities
  682.  
  683. Volume-Number: Volume 20, Number 66
  684.  
  685.