From owner-man-jp-reviewer@jp.freebsd.org  Mon Apr  2 15:33:11 2001
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id PAA13741;
	Mon, 2 Apr 2001 15:33:11 +0900 (JST)
	(envelope-from owner-man-jp-reviewer@jp.FreeBSD.org)
Received: from www.ccn-net.ne.jp (www.ccn-net.ne.jp [211.1.203.10])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id PAA13727
	for <man-jp-reviewer@jp.freebsd.org>; Mon, 2 Apr 2001 15:33:10 +0900 (JST)
	(envelope-from ohsawa@catv1.ccn-net.ne.jp)
Received: from catv1.ccn-net.ne.jp ([10.16.64.85])
	by www.ccn-net.ne.jp (8.9.3+Sun/3.7W-00060811) with ESMTP id PAA18712
	for <man-jp-reviewer@jp.freebsd.org>; Mon, 2 Apr 2001 15:32:51 +0900 (JST)
Message-ID: <3AC81D28.DB4DF27B@catv1.ccn-net.ne.jp>
Date: Mon, 02 Apr 2001 15:33:13 +0900
From: OHSAWA Chitoshi <ohsawa@catv1.ccn-net.ne.jp>
X-Mailer: Mozilla 4.75 [ja] (Win98; U)
X-Accept-Language: ja
MIME-Version: 1.0
To: man-jp-reviewer@jp.freebsd.org
Content-Type: text/plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Reply-To: man-jp-reviewer@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+010328
X-Sequence: man-jp-reviewer 3507
Subject: [man-jp-reviewer 3507] (man2 catchup4.3R)man2c2 kqueue.2
Errors-To: owner-man-jp-reviewer@jp.freebsd.org
Sender: owner-man-jp-reviewer@jp.freebsd.org
X-Originator: ohsawa@catv1.ccn-net.ne.jp

$BBg_7!w4tIl$G$9!#(B# $B:y$O:i$$$?$1$I$3$N4($5$G(B 3 $BJ,:i$-$N$^$^$G$9!#(B

$B%(!<%W%j!<%k%U!<%k$b=*$o$C$F(B 4.3R $B$N%j%j!<%9$^$G(B 2 $B=54V$G$9!#(B

kqueue.2 $B$ODI2C$,>/$7$"$C$F$=$NItJ,$N0UL#$,<h$l$^$;$s$G$7$?!#(B
$BG:$s$G$$$F$b;EJ}$,$J$$$N$G$=$NItJ,$rN.$7$^$9!#(B
$BE::o$r$*4j$$$7$^$9!#(B

$BB>$b4^$a$FA4J8$H(B diff $B$r@hBe85Dy$a!"7'C+$5$s$KAw$j$^$7$?!#(B
-----------------------------------------------------------------------
OHSAWA Chitoshi        mailto:ohsawa@catv1.ccn-net.ne.jp
MAY THE SOURCE BE WITH YOU!
 $BBg_7@iIR(B
-----------------------------------------------------------------------
list catch up 4.3R 2c2

getlogin.2:
$B85Lu(B:$B%(%i!<%3!<%I$,%0%m!<%P%k0LCV(B
$B2~Lu(B:$B%(%i!<%3!<%I$,%0%m!<%P%kJQ?t(B

.St -p1003.1-96
$B$,E83+$G$-$J$$$N$G(B
ISO/IEC 9945-1:1996 (``POSIX.1'')
$B$rKd$a9~$s$G$"$j$^$9!#(B

$BDI2C1Q8l86J8(B:
The return value of
     getlogin_r() was changed from earlier versions of FreeBSD to be confor-
     mant with ISO/IEC 9945-1:1996 (``POSIX.1'').
$B=iLu(B:
 getlogin_r() $B$NLa$jCM$O(B
     ISO/IEC 9945-1:1996 (``POSIX.1'') $B$K=`5r$9$k$?$a$K(B FreeBSD $B$N=i4|$N%P!<(B
     $B%8%g%s$+$iJQ99$5$l$^$7$?!#(B
"earlier versions" $B$r$=$N$^$^!V=i4|$N%P!<%8%g%s!W$H$7$^$7$?$,!"(B
$B$3$N%P!<%8%g%s$GJQ99$5$l$?$N$G(B $B!V0JA0$N%P!<%8%g%s!W$NJ}$,$$$$$N$+$H$b;W$$$^$9!#(B

getpid.2:ok
getsid.2:ok
setsid $B"*(B getsid 
$B$I$C$+$G8+$?$3$H$,$"$k$H;W$C$?$i1n4]$5$s$K(B send-pr $B$7$F$b$i$C$?$d$D$G$7$?!#(B
$BOBLu$NJ}$,@h$KD>$C$F$$$^$7$?!#(B

getsockopt.2
gettimeofday.2
kill.2:
.St -p1003.1-90 $B"*(B
$B1Q8l(B man $B$G$O(B:ISO/IEC 9945-1:1990 (``POSIX.1'')
jman $B$G$O(B    : IEEE Std 1003.1-1990 (``POSIX'')
kldstat.2:
.\" $FreeBSD: src/lib/libc/sys/kldstat.2,v 1.5.2.5 2001/03/06 16:46:06 ru Exp $

$B$N9TKv$K(B TAB $B%3!<%I$,F~$C$F$$$^$7$?!#LuJ8$G$O:o=|$7$^$7$?!#(B
listen.2:ok
lseek.2:ok
madvise.2:ok
poll.2:ok

kqueue.2:# $B$3$l$,Fq2r$J$s$G$9!#<u$1?H$N9=J8$,<h$l$J$$(B(~_~;)(~_~;)(~_~;)
$B1Q8l86J8(B
                    there is data available to read.  The behavior of the fil-
                    ter is slightly different depending on the descriptor
                    type.

                    Sockets
                        Sockets which have previously been passed to listen()
                        return when there is an incoming connection pending.
                        data contains the size of the listen backlog.

                        Other socket descriptors return when there is data to
                        be read, subject to the SO_RCVLOWAT value of the sock-
                        et buffer.  This may be overridden with a per-filter
                        low water mark at the time the filter is added by set-
                        ting the NOTE_LOWAT flag in fflags, and specifying the
                        new low water mark in data.  On return, data contains
                        the number of bytes in the socket buffer.

                        If the read direction of the socket has shutdown, then
                        the filter also sets EV_EOF in flags, and returns the
                        socket error (if any) in fflags.  It is possible for
                        EOF to be returned (indicating the connection is gone)
                        while there is still data pending in the socket
                        buffer.

                    Vnodes
                        Returns when the file pointer is not at the end of
                        file.  data contains the offset from current position
                        to end of file, and may be negative.

                    Fifos, Pipes
                        Returns when the there is data to read; data contains
                        the number of bytes available.

                        When the last writer disconnects, the filter will set
                        EV_EOF in flags.  This may be cleared by passing in
                        EV_CLEAR, at which point the filter will resume wait-
                        ing for data to become available before returning.
                        ing for data to become available before returning.

     EVFILT_WRITE   Takes a descriptor as the identifier, and returns whenever
                    it is possible to write to the descriptor.  For sockets,
                    pipes and fifos, data will contain the amount of space re-
                    maining in the write buffer.  The filter will set EV_EOF
                    when the reader disconnects, and for the fifo case, this
                    may be cleared by use of EV_CLEAR.  Note that this filter
                    is not supported for vnodes.

                    For sockets, the low water mark and socket error handling
                    is identical to the EVFILT_READ case.

     EVFILT_AIO     The sigevent portion of the AIO request is filled in, with
                    sigev_notify_kqueue containing the descriptor of the
                    kqueue that the event should be attached to, sigev_value
                    containing the udata value, and sigev_notify set to
                    SIGEV_EVENT.  When the aio_* function is called, the event
                    will be registered with the specified kqueue, and the
                    ident argument set to the struct aiocb returned by the
                    aio_* function.  The filter returns under the same condi-
                    tions as aio_error.

                    Alternatively, a kevent structure may be initialized, with
                    ident containing the descriptor of the the kqueue, and the
                    address of the kevent structure placed in the
                    aio_lio_opcode field of the AIO request.  However, this
                    approach will not work on architectures with 64-bit point-
                    ers, and should be considered depreciated.

$B;nLu(B:
     EVFILT_READ    $B5-=R;R$r$=$N<1JL;R$H$7$F<h$j!"FI$_9~$a$kM-8z$J%G!<%?$,$"$k(B
                    $B;~$KLa$j$^$9!#$3$N%U%#%k%?$N?6Iq$$$O!"$=$N5-=R;R$N7?$K$h$j(B
                    $B>/$70[$J$j$^$9!#(B

                    $B%=%1%C%H(B
                        $BA0$b$C$F(B listen() $B$KEO$5$l$?%=%1%C%H$O!"J]N1Cf$N<!$N@\(B
                        $BB3$,$"$k;~$KLa$j$^$9!#(B data $B$O(B listen $B$N%P%C%/%m%0(B
                        (backlog) $B$NBg$-$5$,F~$C$F$$$^$9!#(B

                        $B$=$NB>$N%=%1%C%H5-=R;R$O!"%=%1%C%H%P%C%U%!$N(B
                        SO_RCVLOWAT $B$NCM$r4p=`$K$7$F!"FI$_9~$`$Y$-%G!<%?$,$"$k(B
                        $B;~$KLa$j$^$9!#$3$l$O!"(B fflags $B$N(B NOTE_LOWAT $B%U%i%0$r@_(B
                        $BDj$9$k$3$H$K$h$C$F%U%#%k%?$,DI2C$5$l$k$HF1;~$K3F%U%#%k(B
                        $B%?$4$H$N:GDc4p=`CM$rL5;k$5$l!"(B data $B$NCf$N?7$7$$:GDc4p(B
                        $B=`CM$r;XDj$5$l$k$G$7$g$&!#La$C$?;~(B data $B$K$O%=%1%C%H(B
                        $B%P%C%U%!$NCf$NFI$_9~$`$Y$-%P%$%H?t$,F~$C$F$$$^$9!#(B

                        $B%=%1%C%H$NFI$_9~$_J}8~$N@\B3$,@ZCG$5$l$?>l9g$K$O!"%U%#(B
                        $B%k%?$O(B flags $B$K(B EV_EOF $B$b@_Dj$7$^$9!#%(%i!<$,5/$-$?>l(B
                        $B9g$K$O!"(B fflags $B$K%=%1%C%H%(%i!<$rJV$7$^$9!#%=%1%C%H(B
                        $B%P%C%U%!$NCf$KJ]N1Cf$N%G!<%?$,;D$C$F$$$F$b!"(B ($B@\B3$,@Z(B
                        $B$l$?$3$H$r<($9(B) EOF $B$,JV$5$l$k$3$H$,$"$j$^$9!#(B

                    v $B%N!<%I(B
                        $B%U%!%$%k%]%$%s%?$,%U%!%$%k$N:G8e(B (EOF) $B$G$J$$;~$KLa$j(B
                        $B%U%!%$%k%]%$%s%?$,%U%!%$%k$N:G8e(B (EOF) $B$G$J$$;~$KLa$j(B
                        $B$^$9!#(B data $B$O8=:_0LCV$+$i%U%!%$%k$N:G8e(B (EOF) $B$^$G$N(B
                        $B%*%U%;%C%H$,F~$C$F$$$^$9!#$3$NCM$OIi$G$"$k$+$b$7$l$^$;(B
                        $B$s!#(B

                    FIFO $B$H%Q%$%W(B
                        $BFI$_9~$`$Y$-%G!<%?$,$"$k;~$KLa$j$^$9!#(B data $B$K$OM-8z$J(B
                        $B%P%$%H?t$,F~$C$F$$$^$9!#(B

                        $B:G8e$K=q$-9~$s$@<T$,@ZCG$7$?;~$K!"%U%#%k%?$O(B flags $B$K(B
                        EV_EOF $B$r%;%C%H$7$^$9!#$3$l$O!"(BEV_CLEAR $B$rEO$9$3$H$G%/(B
                        $B%j%"$9$k$3$H$,$G$-!"%G!<%?$,FI$_9~$a$k$h$&$K$J$k$N$r!"(B
                        $BLa$kA0$K:F$SBT$D$h$&$K%U%#%k%?$K;X<($7$^$9!#(B

     EVFILT_WRITE   $B5-=R;R$r$=$N<1JL;R$H$7$F<h$j!"$=$N5-=R;R$,=q$-9~$_2DG=$K$J(B
                    $B$kEY$KLa$j$^$9!#%=%1%C%H!"%Q%$%W$*$h$S(B FIFO $B$G$O!"(B data $B$O(B
                    $B=q$-9~$_%P%C%U%!$N;D$jNN0h$NBg$-$5$,F~$C$F$$$^$9!#%U%#%k%?(B
                    $B$OFI$_9~$_B&$,@ZCG$7$?;~$K!"(BEV_EOF $B$r%;%C%H$7!"(B FIFO $B$N>l(B
                    $B9g$O(B EV_CLEAR $B$K$h$C$F%/%j%"$9$k$3$H$,$G$-$^$9!#$3$N%U%#%k(B
                    $B%?$O(B vnode $B$r%5%]!<%H$7$F$$$J$$$3$H$KCm0U$7$F$/$@$5$$!#(B

                    $B%=%1%C%H$N>l9g!":GDc4p=`CM$H%=%1%C%H%(%i!<%O%s%I%i$O(B EV-
                    FULT_READ $B$N>l9g$HF1$8$G$9!#(B

     EVFILT_AIO     $BHsF14|F~=PNO%j%/%(%9%H$N(B sigevent $BItJ,$,%$%Y%s%H$,4^$^$l$k(B
                    $B$Y$-(B kqueue $B5-=R;R$r4^$s$G$$$k(B sigev_notify_kqueue $B$GK~$?(B
                    $B$5$l$F$$$^$9!#(B udata $B$NCM$K4^$^$l$F$$$k(B sigev_value $B$H(B
                    sigev_notify $B$O(B SIGEV_EVENT $B$r@_Dj$7$^$9!#(B aio_* $B4X?t$,8F(B
                    $B$S=P$5$l$?$H$-!"%$%Y%s%H$O;XDj$5$l$?(B kqueue $B$KEPO?$5$l!"(B
                    ident $B0z?t$O(B aio_* $B4X?t$K$h$C$FJV$5$l$k(B aiocb $B9=B$BN$,%;%C(B
                    $B%H$5$l$^$9!#$3$N%U%#%k%?$O(B aio_error $B$HF1MM$N>r7o$GLa$j$^(B
                    $B$9!#(B

                    $B$"$k$$$O(B kevent $B9=B$BN$O(B kqueue $B5-=R;R$K4^$^$l$F$$$k(B ident
                    $B$G=i4|2=$5$l!"(Bkevent $B9=B$BN$N%"%I%l%9$OHsF14|%j%/%(%9%H$N(B
                    aio_lio_opcode $B%U%#!<%k%I$KCV$+$l$^$9!#$7$+$7$J$,$i!"$3$N(B
                    $B%"%W%m!<%A$O(B 64 $B%S%C%H%]%$%s%?%"!<%-%F%/%A%c$G$O!"F/$+$J$$(B
                    $BF0$+$J$$$G$7$g$&!#2ACM$,2<$,$k$3$H$r$h$/9MN8$9$Y$-$G$9!#(B
