Deleted gremlin pictures and added pic versions.
[unix-history] / usr / src / share / doc / psd / 20.ipctut / tutor.me
index e14abd9..33edeb6 100644 (file)
@@ -1,28 +1,18 @@
 .\" Copyright (c) 1986 The Regents of the University of California.
 .\" All rights reserved.
 .\"
 .\" Copyright (c) 1986 The Regents of the University of California.
 .\" All rights reserved.
 .\"
-.\" Redistribution and use in source and binary forms are permitted
-.\" provided that the above copyright notice and this paragraph are
-.\" duplicated in all such forms and that any documentation,
-.\" advertising materials, and other materials related to such
-.\" distribution and use acknowledge that the software was developed
-.\" by the University of California, Berkeley.  The name of the
-.\" University may not be used to endorse or promote products derived
-.\" from this software without specific prior written permission.
-.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
-.\" IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+.\" %sccs.include.redist.roff%
 .\"
 .\"
-.\"    @(#)tutor.me    6.6 (Berkeley) %G%
+.\"    @(#)tutor.me    6.11 (Berkeley) %G%
 .\"
 .\"
-.oh 'Introductory 4.3BSD IPC''PS1:7-%'
-.eh 'PS1:7-%''Introductory 4.3BSD IPC'
+.oh 'Introductory 4.4BSD IPC''PSD:20-%'
+.eh 'PSD:20-%''Introductory 4.4BSD IPC'
 .rs
 .sp 2
 .sz 14
 .ft B
 .ce 2
 .rs
 .sp 2
 .sz 14
 .ft B
 .ce 2
-An Introductory 4.3BSD
+An Introductory 4.4BSD
 Interprocess Communication Tutorial
 .sz 10
 .sp 2
 Interprocess Communication Tutorial
 .sz 10
 .sp 2
@@ -41,7 +31,7 @@ University of California, Berkeley
 .sp
 .(c
 .pp
 .sp
 .(c
 .pp
-Berkeley UNIX\(dg 4.3BSD offers several choices for interprocess communication.
+Berkeley UNIX\(dg 4.4BSD offers several choices for interprocess communication.
 To aid the programmer in  developing programs which are comprised of
 cooperating
 processes, the different choices are discussed and a series of example 
 To aid the programmer in  developing programs which are comprised of
 cooperating
 processes, the different choices are discussed and a series of example 
@@ -110,7 +100,7 @@ One can ask to read, but insist on not waiting if nothing is immediately
 available.  These new possibilities are allowed in the Berkeley UNIX IPC
 interface.  
 .pp
 available.  These new possibilities are allowed in the Berkeley UNIX IPC
 interface.  
 .pp
-Thus Berkeley UNIX 4.3BSD offers several choices for IPC.
+Thus Berkeley UNIX 4.4BSD offers several choices for IPC.
 This paper presents simple examples that illustrate some of
 the choices.
 The reader is presumed to be familiar with the C programming language
 This paper presents simple examples that illustrate some of
 the choices.
 The reader is presumed to be familiar with the C programming language
@@ -118,7 +108,7 @@ The reader is presumed to be familiar with the C programming language
 but not necessarily with the system calls of the UNIX system or with
 processes and interprocess communication.
 The paper reviews the notion of a process and the types of
 but not necessarily with the system calls of the UNIX system or with
 processes and interprocess communication.
 The paper reviews the notion of a process and the types of
-communication that are supported by Berkeley UNIX 4.3BSD.
+communication that are supported by Berkeley UNIX 4.4BSD.
 A series of examples are presented that create processes that communicate
 with one another.  The programs show different ways of establishing
 channels of communication.
 A series of examples are presented that create processes that communicate
 with one another.  The programs show different ways of establishing
 channels of communication.
@@ -233,13 +223,10 @@ After the fork, both parent's and child's descriptor tables point to
 the pipe.
 The child can then use the pipe to send a message to the parent.
 .(z
 the pipe.
 The child can then use the pipe to send a message to the parent.
 .(z
--
-.bl 5.8i
--
-.\" pipe.grn goes here
-.sp
-.ce 1
+.so fig2.pic
+.ce 2
 Figure 2\ \ Sharing a pipe between parent and child
 Figure 2\ \ Sharing a pipe between parent and child
+.ce 0
 .)z
 .pp
 Just what is a pipe?
 .)z
 .pp
 Just what is a pipe?
@@ -267,7 +254,7 @@ which were concatenated.
 .sh 1 "Socketpairs"
 .r
 .pp
 .sh 1 "Socketpairs"
 .r
 .pp
-Berkeley UNIX 4.3BSD provides a slight generalization of pipes.  A pipe is a
+Berkeley UNIX 4.4BSD provides a slight generalization of pipes.  A pipe is a
 pair of connected sockets for one-way stream communication.  One may
 obtain a pair of connected sockets for two-way stream communication
 by calling the routine \fIsocketpair().\fP
 pair of connected sockets for one-way stream communication.  One may
 obtain a pair of connected sockets for two-way stream communication
 by calling the routine \fIsocketpair().\fP
@@ -311,11 +298,7 @@ for some of its definitions.
 Figure 3\ \ Use of a socketpair
 .)z
 .(z
 Figure 3\ \ Use of a socketpair
 .)z
 .(z
--
-.bl 5.8i
--
-.\" socketpair.grn goes here
-.sp
+.so fig3.pic
 .ce 1
 Figure 4\ \ Sharing a socketpair between parent and child
 .)z
 .ce 1
 Figure 4\ \ Sharing a socketpair between parent and child
 .)z
@@ -334,7 +317,7 @@ We would like to have two processes separately create sockets
 and then have messages sent between them.  This is often the
 case when providing or using a service in the system.  This is
 also the case when the communicating processes are on separate machines.
 and then have messages sent between them.  This is often the
 case when providing or using a service in the system.  This is
 also the case when the communicating processes are on separate machines.
-In Berkeley UNIX 4.3BSD one can create individual sockets, give them names and
+In Berkeley UNIX 4.4BSD one can create individual sockets, give them names and
 send messages between them.
 .pp
 Sockets created by different programs use names to refer to one another;
 send messages between them.
 .pp
 Sockets created by different programs use names to refer to one another;
@@ -613,10 +596,7 @@ Figure 7b\ \ Accepting an Internet domain stream connection
 Figure 7c\ \ Using select() to check for pending connections
 .)z
 .(z
 Figure 7c\ \ Using select() to check for pending connections
 .)z
 .(z
--
-.bl 5.8i
--
-.\" accept.grn goes here
+.so fig8.pic
 .sp
 .ce 1
 Figure 8\ \ Establishing a stream connection
 .sp
 .ce 1
 Figure 8\ \ Establishing a stream connection
@@ -699,7 +679,7 @@ Figure 9b\ \ Accepting a UNIX domain stream connection
 .sh 1 "Reads, Writes, Recvs, etc."
 .r
 .pp
 .sh 1 "Reads, Writes, Recvs, etc."
 .r
 .pp
-UNIX 4.3BSD has several system calls for reading and writing information.
+UNIX 4.4BSD has several system calls for reading and writing information.
 The simplest calls are \fIread() \fP and \fIwrite().\fP \fIWrite()\fP
 takes as arguments the index of a descriptor, a pointer to a buffer 
 containing the data and the size of the data.
 The simplest calls are \fIread() \fP and \fIwrite().\fP \fIWrite()\fP
 takes as arguments the index of a descriptor, a pointer to a buffer 
 containing the data and the size of the data.
@@ -824,7 +804,7 @@ Figure 10\ \ Varieties of read and write commands
 .pp
 This paper has presented examples of some of the forms
 of communication supported by
 .pp
 This paper has presented examples of some of the forms
 of communication supported by
-Berkeley UNIX 4.3BSD.  These have been presented in an order chosen for
+Berkeley UNIX 4.4BSD.  These have been presented in an order chosen for
 ease of presentation.  It is useful to review these options emphasizing the
 factors that make each attractive.
 .pp
 ease of presentation.  It is useful to review these options emphasizing the
 factors that make each attractive.
 .pp
@@ -867,7 +847,7 @@ be added.
 .pp
 An introduction to the UNIX system and programming using UNIX system calls
 can be found in [Kernighan and Pike 1984].
 .pp
 An introduction to the UNIX system and programming using UNIX system calls
 can be found in [Kernighan and Pike 1984].
-Further documentation of the Berkeley UNIX 4.3BSD IPC mechanisms can be 
+Further documentation of the Berkeley UNIX 4.4BSD IPC mechanisms can be 
 found in [Leffler et al. 1986].
 More detailed information about particular calls and protocols
 is provided in sections
 found in [Leffler et al. 1986].
 More detailed information about particular calls and protocols
 is provided in sections
@@ -919,14 +899,14 @@ Englewood Cliffs, N.J.: Prentice-Hall.
 .sp
 .ls 1
 S.J. Leffler, R.S. Fabry, W.N. Joy, P. Lapsley, S. Miller & C. Torek, 1986,
 .sp
 .ls 1
 S.J. Leffler, R.S. Fabry, W.N. Joy, P. Lapsley, S. Miller & C. Torek, 1986,
-.i "An Advanced 4.3BSD Interprocess Communication Tutorial."
+.i "An Advanced 4.4BSD Interprocess Communication Tutorial."
 Computer Systems Research Group,
 Department of Electrical Engineering and Computer Science,
 University of California, Berkeley.
 .sp
 .ls 1
 Computer Systems Research Group, 1986,
 Computer Systems Research Group,
 Department of Electrical Engineering and Computer Science,
 University of California, Berkeley.
 .sp
 .ls 1
 Computer Systems Research Group, 1986,
-.i "UNIX Programmer's Manual, 4.3 Berkeley Software Distribution."
+.i "UNIX Programmer's Manual, 4.4 Berkeley Software Distribution."
 Computer Systems Research Group,
 Department of Electrical Engineering and Computer Science,
 University of California, Berkeley.
 Computer Systems Research Group,
 Department of Electrical Engineering and Computer Science,
 University of California, Berkeley.