Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!husc6!cmcl2!brl-adm!brl-smoke!gwyn From: gwyn@brl-smoke.ARPA (Doug Gwyn ) Newsgroups: comp.lang.c Subject: Re: ANSI standard and open() Message-ID: <6049@brl-smoke.ARPA> Date: Fri, 3-Jul-87 22:39:37 EDT Article-I.D.: brl-smok.6049 Posted: Fri Jul 3 22:39:37 1987 Date-Received: Sun, 5-Jul-87 00:16:56 EDT References: <18346@ucbvax.BERKELEY.EDU> <8042@utzoo.UUCP> Reply-To: gwyn@brl.arpa (Doug Gwyn (VLD/VMB) ) Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 19 In article <2343@hoptoad.uucp> farren@hoptoad.UUCP (Mike Farren) writes: >... He says that in persuing H&S's discussion of the ANSI >standard, the low-level I/O functions (such as open(), read(), etc.) >do not seem to exist. I'm posting the response rather than mailing it, because this is an issue worth understanding. The (proposed) ANS for C (X3.159) limits itself to the "raw" language and to that portion of the hosted run-time environment (library routines etc.) that are believed to be usefully implementable on as wide a range of host architectures and operating systems as possible. The UNIX functions open(), read(), etc. can be adequately implemented on some systems but not on others. Consequently the C standard will define the STDIO interface in a way believed to be universally implementable, rather than a UNIX-like set of primitive I/O functions. The latter, however, are being standardized by IEEE 1003.1 (POSIX), which has its scope specifically limited to UNIX-like systems. ANS X3.159-198x should be implementable on any POSIX-supporting system, but not the converse.