summaryrefslogtreecommitdiff
path: root/libc/manual/llio.texi
diff options
context:
space:
mode:
authorjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2012-03-03 18:18:04 +0000
committerjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2012-03-03 18:18:04 +0000
commitc0102611b1f1bd1ce2a2952e9b74ff33fa02717e (patch)
tree31177266a6797f3c30d0493619d0f06f3f59afe1 /libc/manual/llio.texi
parent33f3f8954d202664c7c7a224d13ba5a0c14a0e01 (diff)
downloadeglibc2-c0102611b1f1bd1ce2a2952e9b74ff33fa02717e.tar.gz
Merge changes between r17194 and r17384 from /fsf/trunk.
git-svn-id: svn://svn.eglibc.org/trunk@17385 7b3dc134-2b1b-0410-93df-9e9f96275f8d
Diffstat (limited to 'libc/manual/llio.texi')
-rw-r--r--libc/manual/llio.texi39
1 files changed, 13 insertions, 26 deletions
diff --git a/libc/manual/llio.texi b/libc/manual/llio.texi
index 8154de741..f3ed54272 100644
--- a/libc/manual/llio.texi
+++ b/libc/manual/llio.texi
@@ -332,7 +332,7 @@ some input. But if the @code{O_NONBLOCK} flag is set for the file
reading any data, and reports this error.
@strong{Compatibility Note:} Most versions of BSD Unix use a different
-error code for this: @code{EWOULDBLOCK}. In the GNU library,
+error code for this: @code{EWOULDBLOCK}. In @theglibc{},
@code{EWOULDBLOCK} is an alias for @code{EAGAIN}, so it doesn't matter
which name you use.
@@ -483,7 +483,7 @@ flow control, where output has been suspended by receipt of a STOP
character.
@strong{Compatibility Note:} Most versions of BSD Unix use a different
-error code for this: @code{EWOULDBLOCK}. In the GNU library,
+error code for this: @code{EWOULDBLOCK}. In @theglibc{},
@code{EWOULDBLOCK} is an alias for @code{EAGAIN}, so it doesn't matter
which name you use.
@@ -776,8 +776,8 @@ character.
@comment sys/types.h
@comment POSIX.1
@deftp {Data Type} off_t
-This is an arithmetic data type used to represent file sizes.
-In the GNU system, this is equivalent to @code{fpos_t} or @code{long int}.
+This is a signed integer type used to represent file sizes. In
+@theglibc{}, this type is no narrower than @code{int}.
If the source is compiled with @code{_FILE_OFFSET_BITS == 64} this type
is transparently replaced by @code{off64_t}.
@@ -844,7 +844,7 @@ null pointer is returned instead.
In some other systems, @code{fdopen} may fail to detect that the modes
for file descriptor do not permit the access specified by
-@code{opentype}. The GNU C library always checks for this.
+@code{opentype}. @Theglibc{} always checks for this.
@end deftypefun
For an example showing the use of the @code{fdopen} function,
@@ -1000,21 +1000,10 @@ for linked channels; see @ref{Linked Channels}.
@node Cleaning Streams
@subsection Cleaning Streams
-On the GNU system, you can clean up any stream with @code{fclean}:
-
-@comment stdio.h
-@comment GNU
-@deftypefun int fclean (FILE *@var{stream})
-Clean up the stream @var{stream} so that its buffer is empty. If
-@var{stream} is doing output, force it out. If @var{stream} is doing
-input, give the data in the buffer back to the system, arranging to
-reread it.
-@end deftypefun
-
-On other systems, you can use @code{fflush} to clean a stream in most
+You can use @code{fflush} to clean a stream in most
cases.
-You can skip the @code{fclean} or @code{fflush} if you know the stream
+You can skip the @code{fflush} if you know the stream
is already clean. A stream is clean whenever its buffer is empty. For
example, an unbuffered stream is always clean. An input stream that is
at end-of-file is clean. A line-buffered stream is clean when the last
@@ -1028,12 +1017,10 @@ not random access, there is no way to give back the excess data already
read. When an input stream reads from a random-access file,
@code{fflush} does clean the stream, but leaves the file pointer at an
unpredictable place; you must set the file pointer before doing any
-further I/O. On the GNU system, using @code{fclean} avoids both of
-these problems.
+further I/O.
Closing an output-only stream also does @code{fflush}, so this is a
-valid way of cleaning an output stream. On the GNU system, closing an
-input stream does @code{fclean}.
+valid way of cleaning an output stream.
You need not clean a stream before using its descriptor for control
operations such as setting terminal modes; these operations don't affect
@@ -1056,8 +1043,8 @@ with multiple calls to @code{read} and @code{write}, it is inefficient
because there is overhead associated with each kernel call.
Instead, many platforms provide special high-speed primitives to perform
-these @dfn{scatter-gather} operations in a single kernel call. The GNU C
-library will provide an emulation on any system that lacks these
+these @dfn{scatter-gather} operations in a single kernel call. @Theglibc{}
+will provide an emulation on any system that lacks these
primitives, so they are not a portability threat. They are defined in
@code{sys/uio.h}.
@@ -1229,7 +1216,7 @@ systems. They are also useful to share data between multiple tasks
without creating a file.
On some systems using private anonymous mmaps is more efficient than using
-@code{malloc} for large blocks. This is not an issue with the GNU C library,
+@code{malloc} for large blocks. This is not an issue with @theglibc{},
as the included @code{malloc} automatically uses @code{mmap} where appropriate.
@c Linux has some other MAP_ options, which I have not discussed here.
@@ -2511,7 +2498,7 @@ At the point of this writing, the available implementation is a userlevel
implementation which uses threads for handling the enqueued requests.
While this implementation requires making some decisions about
limitations, hard limitations are something which is best avoided
-in the GNU C library. Therefore, the GNU C library provides a means
+in @theglibc{}. Therefore, @theglibc{} provides a means
for tuning the AIO implementation according to the individual use.
@comment aio.h