glenda.party
term% ls -F
term% pwd
$home/manuals/unix_v7/4/pk
term% cat index.txt
PK(4)                      Kernel Interfaces Manual                      PK(4)

NAME
       pk - packet driver

DESCRIPTION
       The  packet  driver  implements  a  full-duplex end-to-end flow control
       strategy for machine-to-machine communication.  Packet driver  protocol
       is established by calling pkon(2) with a character device file descrip‐
       tor  and  a  desired  packet  size in bytes.  The packet size must be a
       power of 2, 32≤size≤4096.  The file descriptor must represent an  8-bit
       data  path.   This  is  normally obtained by  setting the device in raw
       mode (see ioctl(2)).

       The actual packet size, which may be smaller than  the  desired  packet
       size, is arrived at by negotiation with the packet driver at the remote
       end of the data link.

       The  packet  driver  maintains two data areas for incoming and outgoing
       packets.  The output area is needed to implement retransmission on  er‐
       rors, and arriving packets are queued in the input area.  Data arriving
       for  a  file  not open for reading is discarded.  Initially the size of
       both areas is set to two packets.

       It is not necessary that reads and writes be multiples  of  the  packet
       size  although  there is less system overhead if they are.  Read opera‐
       tions return the maximum amount of data available from the  input  area
       up  to  the  number  of bytes specified in the system call.  The buffer
       sizes in write operations are not normally transmitted across the link.
       However, writes of zero length are treated specially and are  reflected
       at  the remote end as a zero-length read.  This facilitates marking the
       serial byte stream, usually for delimiting files.

       When one side of a packet driver link is shut down by close(2)or  pkoff
       (see  pkon(2)),  read(2)  on the other side will return 0, and write on
       the other side will raise a SIGPIPE signal.

SEE ALSO
       pkon(2), pkopen(3)

                                     local                               PK(4)