4.4BSD YEN-aYENUYEN`i! 1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCURIAss. *CURE
                                     1/4AAo

  McKusick Marshall [FAMILY Given]

  Bostic Keith [FAMILY Given]

  Karels Michael [FAMILY Given]

  Quarterman John [FAMILY Given]

   ^2thA:u: 8def749c53

   A 1/2-oiAo/-oi *-c-i 1996 Addison-Wesley Longman, Inc

   CUR^3CURIE, 1/2nCURI 1/2D-EC,,uCURIuo:^2A:CURI^2 1/4CURE The Design and
   Implementation of the 4.4BSD Operating System CURIAeAEo
   3/4ICURoE'?eCUR.CUR?CURaCURICURC,CUR^1!-L- CUR^3CURIE'?eCURIE-L-A
   1/2CURa:-oAEC,UEUCURo 1/2D-EC,,uCURIIA
   1/4"AA-aCUREuo:^2A:CURECUR-^1OCURECUR|CUR^3CURECURIP:O/>>ssCURuCUR`iCURAECURCURCURTHCUR^1!-L-
   CUR^3CURI 3/4ICURC,
   3/4O^2d-CURuCUR`iCURAECURCURCURe^3AE^3uC,DEGCURECURA:CURCURCURAECURI
   EU:CURI>>A:CUReCURIEoENOTCUREEo 3/4iCURE 3/4U:-oUCURE
   1/2nCUR<<CUR`iCURAECUR-aCURe!-c- BSD UNIX CUREP: 1/2I-L-CURo>>yCURA:AEE
   1/4OCURECURECURACURAEIYENCUR`iCUR?>>^2^1IE,,YENCURIDEG`iCURA:CURECURECURACURAECURCURCURTHCUR^1!-L-
   CUR^3CURIEU:CURE'O/CUR^1CURe 3/4U:-oUCURI
   1/2D-EC,,uCUR<<CUReA:oP:!CURuCUR`iCURAECURCURCURTHCUR^1!-L- CUR
   1/2CUR^3CURC,AAD-I?CUR^1CUReCUR^3CURECURC, 'O/I-c- 1/2nAO CURIYENEYENaa!
   1/4YEN^1CURo 1/4oCUR+- 1/4eCUReCUR^3CURECURa^2A:C, 1/2CURC,CUR^1!-L-
   CURTHCUR?!-c-Kirk McKusick >>aCUReCURe BSD courses CURE'O/CUR^1CURe
   3/4d-EoCURaA:oP:!CURuCUR`iCURAECURCURCURTHCUR^1!-L-

   CUR^3CURIE, 1/2nCURIAEu:EU:,`i^2 1/2CURI FreeBSD
   AEu:EU:,`iYENEYENYENaaYENaYENoYENAE! 1/4YEN.YENc,YENoYEN
   *YENiYEN,YENS:YEN-YENECURECUReCURACURAE^1OCURECURiCUR`iCURTHCUR.CUR?!-L-
   AEu:EU:,`i^2 1/2CURI 3/4U:-oUCURIEOI?A AEu:EU:,`i^2
   1/2CURECURA:CURCURCURAECURo>>^2 3/4ECUR.CURAECUR-CURACURuCURCUR!-L-

   The second chapter of the book, The Design and Implementation of the
   4.4BSD Operating System is excerpted here with the permission of the
   publisher. No part of it may be further reproduced or distributed without
   the publisher's express written permission. The rest of the book explores
   the concepts introduced in this chapter in incredible detail and is an
   excellent reference for anyone with an interest in BSD UNIX. More
   information about this book is available from the publisher, with whom you
   can also sign up to receive news of related titles. Information about BSD
   courses is available from Kirk McKusick.

   [ ENOT^3a:EC, / A+-DEG`iEC, ]

     ----------------------------------------------------------------------

   IU: 1/4!

   2. 4.4BSD CURIAss. *CURI^3uI *

                2.1. 4.4BSD CURIu!C, 1/2CUREYEN<<! 1/4YENIYENe

                2.2. YEN<<! 1/4YENIYENeCURI^1 1/2A(R)

                2.3. YEN<<! 1/4YENIYENe YENu! 1/4YENOYEN^1

                2.4. YEN *YENiYEN>>YEN^1'EIy

                2.5. YENaYENaYENe'EIy

                2.6. I/O YEN.YEN^1YENAEYEN`a

                2.7. YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

                2.8. YENOYEN!YENCURYENeuI?u!^1 1/2

                2.9. YENIYENAYENEYENi!
                1/4YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

                2.10. A 1/4Eo:

                2.11. YEN *YENiYEN>>YEN^1'O:A:I?(R) (IPC)

                2.12. YENIYENAYENEYENi! 1/4YEN-A:I?(R)

                2.13. YENIYENAYENEYENi! 1/4YEN- 1/4AAo

                2.14. YEN.YEN^1YENAEYEN`a+-?IN

                >>^2^1IE,,YEN

   A. AEu:EU:,`i^2 1/2CURECURA:CURCURCURAE

                A.1. EYIo 1/4O

   ?THCURIDEG`iI-:

   2.1. YEN *YENiYEN>>YEN^1CURIYENeYENCURYENOYENuYENCURYEN-YENe

   2.2.  3/4(R)uNOTIICUREYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

   E 1/2CURIDEG`iI-:

   2.1. 4.4BSD YEN<<! 1/4YENIYENeCURECUR-aCUR+-CUReu! 1/4iEoDEGIA,CUREYEN
   1/2YENOYENEYEN|YENS:YEN-c-

   2.2. 4.4BSD YEN<<! 1/4YENIYENeAEaCURECUR-c-CURe HP300 INCURIu!
   1/4iDEGIA,EoENOT

                      Ae2 3/4I 4.4BSD CURIAss. *CURI^3uI *

   IU: 1/4!

   2.1. 4.4BSD CURIu!C, 1/2CUREYEN<<! 1/4YENIYENe

   2.2. YEN<<! 1/4YENIYENeCURI^1 1/2A(R)

   2.3. YEN<<! 1/4YENIYENe YENu! 1/4YENOYEN^1

   2.4. YEN *YENiYEN>>YEN^1'EIy

   2.5. YENaYENaYENe'EIy

   2.6. I/O YEN.YEN^1YENAEYEN`a

   2.7. YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

   2.8. YENOYEN!YENCURYENeuI?u!^1 1/2

   2.9. YENIYENAYENEYENi! 1/4YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

   2.10. A 1/4Eo:

   2.11. YEN *YENiYEN>>YEN^1'O:A:I?(R) (IPC)

   2.12. YENIYENAYENEYENi! 1/4YEN-A:I?(R)

   2.13. YENIYENAYENEYENi! 1/4YEN- 1/4AAo

   2.14. YEN.YEN^1YENAEYEN`a+-?IN

   >>^2^1IE,,YEN

2.1. 4.4BSD CURIu!C, 1/2CUREYEN<<! 1/4YENIYENe

   4.4BSD YEN<<! 1/4YENIYENeCURI 4 CURA:CURI'd-EU:u!C,
   1/2CURoA:oP:!CUR.CURTHCUR^1!-L- CUR 1/2CUR`iCURIYEN
   *YENiYEN>>YEN^1!-c-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a!-c-YEN^3YENssYENaaYENEYEN+-!
   1/4YEN.YENc,YENo!-c-CUR
   1/2CUR.CURAEYEN.YEN^1YENAEYEN`aCURIu-AEDEGCURC,CUR^1!-L-
   CUR^3CURIAaCURC,CURICUR 1/2CURI 4 CURA:CURI'd-EU:YENu! 1/4YENOYEN^1CURICUR
   1/2CUR`iCUR 3/4CUR`iCURECURA:CURCURCURAE CUR^3CURIEU:CURC,
   1/2nCUR<<CUR`iCURAECURCURCUReCUR^3CURECURo 3/4O^2d-CUR.CURTHCUR^1!-L-

    1. YEN *YENiYEN>>YEN^1CURIYEN-c-YENEYEN`iYEN^1P:o'O:
       3/4aaCURC,CURIYEN^3YENoYENEYENi! 1/4YENeCURII(R)CUR`iCURo^1
       1/2A(R)CUR.CURTHCUR^1!-L- A,A(R)CURa: 1/2-aI>>CURa:CUR 1/2CURIA
       3/4CURIYEN *YENiYEN>>YEN^1CURoYEN^3YENoYENEYENi!
       1/4YENeCUR^1CUReCUR?CURaCURI>>AAAECURssCURI 4  3/4ICURE
       1/2OCURUCURTHCUR^1!-L-YEN.YEN^1YENAEYEN`aCURI^3AEYEN
       *YENiYEN>>YEN^1CURI,A:EICURI^2 3/4AUYEN-c-YENEYEN`iYEN^1P:o'O:CURo A?
       1/2AA^2
       1/2CUR.CURTHCUR^1!-L-CUR^3CURIYENaYENaYENe'EIyCURECURA:CURCURCURAECURI
       5  3/4ICURC,uA:IACUR.CURTHCUR^1!-L-

    2. YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUREYENC,YEND-YENCURYEN^1CURO/CURIYENae!
       1/4YENP:YENCURYENoYEN?YENOYENS:!
       1/4YEN^1CURI>>-:CURAECURCURCUReCUR?CURa!-c- 6  3/4ICURC,CURICUR
       1/2CUR`iCUReCUREP:|A:ICUR^1CUReAEAA:S:CURECURA:CURCURCURAEuA:IACUR.CURTHCUR^1!-L-
       7  3/4ICURC,AaIACUR^1CUReYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI!-c-
       YENC,YEN-L-YEN`iYEN-YENEYENeCURNOTIU^1
       1/2ACURCURECURECURACUR?^3NOTAO/CURC,AE?YENCURuCUR`iCUR?I
       3/4ADEGEOCURCURIYENOYEN!YENCURYENeCURE!-c- CUR
       1/2CUR`iCUReCURoDEG.CUR|CUR?CURaCURIA`a-oiCUR<<CUReCURECUReCURTHCUR^1!-L-
       YENOYEN!YENCURYENeCURIYENC,YEN-L-YEN^1YEN-CURICUReCUR|CUREE-aIyAA-aCUREYENaYENC,YEN-L-YEN-c-
       3/4aaCUREA,-ossCUR.CURTHCUR^1!-L- 4.4BSD CURIYENC,YEN-L-YEN^1YEN-
       3/4aaCURIYENC,! 1/4YEN?C,UAO:E!CURoCURCURCUR-CURA:CUR<<YENuYENY!
       1/4YENECUR.CURAECUR-aCURe!-c- CUR 1/2CUR`iCURI 8  3/4ICURIAaeCURC,
       1/2OCURUCURTHCUR^1!-L- +-o^3O:YENTHYEN.YENo
       3/4aaCURIYENOYEN!YENCURYENeCURO/CURIYEN-c-YEN-YEN>>YEN^1CURECURA:CURCURCURAECURI
       9  3/4I!-c-
       YEN.YEN^1YENAEYEN`aCUREYEN-c-YEN-YEN>>YEN^1CUR^1CUReCUR?CURaCURE>>ECURiCUR`iCURAECURCURCUReA
       1/4Eo:CURECUR 1/2CURIAEDEG-oiCURECURA:CURCURCURAECURI 10 
       3/4ICURC,DEG.CURCURCURTHCUR^1!-L-

    3. UNIX CURC,,AACUR-CUR<<CUReA:oP:!CURuCUR`iCURAECURCURCUReA:I?(R)u!^1
       1/2CURECURI!-c- 'O/I-c-CUR^1CUReYEN
       *YENiYEN>>YEN^1'O:CURECUR-aCUR+-CUReA+-
       1/2aCURC,?(R)IeACURI^1aCURCURYEND-YENCURYENEYEN^1YENEYENe! 1/4YEN`a
       (11.1 AaYENNYENCURYEN *CURo>>^2 3/4E)CUR-aCUReCURO!-c-
       Ia^3DEGYENCURYENUYENoYENECURIA:IAI (4.7 AaYEN.YENDEGYENEYENeCURo>>^2
       3/4E)CURNOTCUR-c-CUReCURTHCUR^1!-L- CURTHCUR?!-c-4.4BSD
       CURIEAEINCURIYEN *YENiYEN>>YEN^1'O:A:I?(R)u!^1
       1/2CURaE-:CUR"CURAECURCURCURTHCUR^1!-L- 11  3/4ICURE
       1/2OCURUCUReCUR^3CURIA:I?(R)u!^1 1/2CURI!-c-
       YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURICURaCURICURECURIDEGUCURECUReYEN-c-YEN-YEN>>YEN^1u!^1
       1/2CURo>>EINCUR.CURAECURCURCURTHCUR^1CURNOT!-c-
       DEG`iAAUAU:A^3CURNOT^3II(c)CURuCUR`iCUR`iCURD-!-c- YEN
       *YENiYEN>>YEN^1CUR<<CUReCURIYENNYENCURYEN
       *CUREAE+-CUR,CUReCUR|CUREYEN-c-YEN-YEN>>YEN^1CUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
       12  3/4ICURC,CURIEAEINCURIYENIYENAYENEYENi! 1/4YEN-A:I?(R)YENOYEN`i!
       1/4YEN`aYENi!
       1/4YEN-CURECURA:CURCURCURAEDEG.CURACURAECURCURCURTHCUR^1!-L-
       CUR^3CUR`iCURIA:I 3/4i!-c-IPC u!^1 1/2CURI^2
       1/4DEGIYEN`iYENCURYENa:CURECUR.CURAE>>ECURiCUR`iCURAECURCURCUReCURaCURICURC,CUR^1!-L-
       13  3/4ICURC,CURI!-c-CUR-c-CUReAEAA:eCURIYENIYENAYENEYENi! 1/4YEN-CURI
       1/4AAoCURECURA:CURCURCURAE 3/4U:-oUCURE 1/2OCURUCURTHCUR^1!-L-

    4. CURCURCUR<<CURECURe 1/4A-oYCURIYEN-aYENUYEN`i!
       1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCURECURa!-c-
       CURECURICUReCUR|CUREu-AEDEGCUR^1CUReCUR<<CURECURCURCUR|CUReCUR|CURE+-?IN
       3/4aaCURIIAAeCURNOTCUR-c-CUReCURTHCUR^1!-L- 14 
       3/4ICURC,CURIu-AEDEG>>thCURa:+-?IN 3/4aaCURIIAAeCURECURA:CURCURCURAE
       1/2OCURUCURTHCUR^1!-L-

   2.3 AaCUR<<CURe 2.14 AaCURI 3  3/4ICUR<<CURe 14  3/4ICURIAEaIAECURo
   3/4O^2d-CUR^1CUReCURaCURICURC,CUR^1!-L-
   CURiCUR?CUR.CUR?CURACURIIN,`iCURoA:euACUR.!-c-'d-EU:AA-aCUREYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURECURA:CURCURCURAEDEG.CURCUR!-c-
   ^3<<E-CURIIo>>ECURECURA:CURCURCURAE^2oAaCUR.CURAECURCURCURCURTHCUR^1!-L-
   CUR
   1/2CUR.CURAE-oC,,aaCURE!-c-Aae?'CURECURECURACURAECURCURCURe?oA?CUR-CURIAss.
   *CURNOT!-c-
   CURECUR|CURa:CURACURAEA-aCURD-CUR`iCUR?CURICUR<<CURECURCURCUR|IyI^3CURo
   1/4"CUR.CURTHCUR^1!-L-

  2.1.1. YEN<<! 1/4YENIYENe

   YEN<<! 1/4YENIYENe CURIYEN *YENiYENAEYEN-YENEYENa!
   1/4YENECURC,AEDEG-oiCUR.!-c- CUR^1CURUCURAECURIYENae! 1/4YENP:YEN
   *YENiYENDEGYENeYEN`aCURNOT'd-EU:AA-aCUREYENI! 1/4YENEYEN|YENS:YEN-c-
   (CUR?CURECUR"CURD- CPU!-c-YENC,YEN-L-YEN^1YEN-!-c-A
   1/4Eo:!-c-YENIYENAYENEYENi! 1/4YEN-AU:A^3u!'i) CUR-aCUReCURO YEN
   1/2YENOYENEYEN|YENS:YEN-c-CURo^1 1/2A(R)CUR^1CUReCURaCURI
   (CUR?CURECUR"CURD-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a!-c-
   YENIYENAYENEYENi! 1/4YEN-YEN *YENiYENEYEN^3YENe)
   CURO/CURIYEN-c-YEN-YEN>>YEN^1CURo^2o.eCUR.CURTHCUR^1!-L- YEN<<!
   1/4YENIYENeCURI'd-AAAA-aCUREYEN.YEN^1YENAEYEN`aCURIu!C,
   1/2CURoA:oP:!CUR.CURTHCUR^1!-L- CUR 1/2CUR`iCURIYEN
   *YENiYEN>>YEN^1CURoA,A(R)CUR.CURAE'EIyCURo^1OCURCUR!-c-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURO/CURIYEN-c-YEN-YEN>>YEN^1u!C,
   1/2CURa: YEN^3YENssYENaaYENEYEN+-! 1/4YEN.YENc,YENou!C,
   1/2CURoA:oP:!CUR.CURTHCUR^1!-L- YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENe
   CURE,AECURD-CUR`iCUReCUR^3CUR`iCUReCURIu!C, 1/2CURI
   YENeYENCURYENO:YENeYENeCURIYENuYENO:YENe! 1/4YENAYENoCURECUR.CURAEYENae!
   1/4YENP:YEN *YENiYEN>>YEN^1CURE, 1/2CUR`iCURTHCUR^1!-L-
   CUR^3CUR`iCUReCURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURIYEN
   *YENiYEN>>YEN^1CURNOTCUR^3CUR`iCUReCURIu!C,
   1/2CUREAD-CUR.CURAE>>yCURACURAECURCURCURe
   I-L-DEG`iCURIYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURC,CUR^1!-L-
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeu!^1 1/2CURI 3/4U:-oUCURI!-c-
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURo 1/4A^1OCUR^1CUReCUR^3CURECURC, 1/4A,
   1/2CURuCUR`iCURAECURCURCUReCURaCURIDEGE^3DEGCURI!-c-
   CURCURCUR-CURA:CUR<<CURIYEN<<! 1/4YENIYENeAEau!^1 1/2CURoAaIACUR.CUR? 3 
   3/4ICURC,DEG.CURCURCURTHCUR^1!-L-

   1/2 3/4IeCURIYEN-aYENUYEN`i!
   1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCURIIN,`iCURECUR-aCUR+-CURe
   YEN<<! 1/4YENIYENe CURECURI!-c- YEN-aYENUYEN`i!
   1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCUREYENu!
   1/4YENOYEN^1CURoA:E^2ACUR^1CURe 1/4AAoCURo^1OCUR|CUR?CURaCUREENOTI *CURE
   -oC, 3/4(R),ACURI>>AAAECURssCURACUR+-CURoA:oP:!CUR^1CURe!-c- YEN
   1/2YENOYENEYEN|YENS:YEN-c-CURI
   3/4(R)CURuCURE^3ECURECURECUReEoENOTCURICUR^3CURECURC,CUR^1!-L-
   AE+->>thAaaCURIYEN-aYENUYEN`i!
   1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCURI,|uae!-c-CUR?CURECUR"CURD-
   Chorus [Rozier et al, 1988], Mach [Accetta et al, 1986], Tunis [Ewens et
   al, 1985], V Kernel [Cheriton, 1988] CURC,CURI!-c- CUR^3CURIYEN<<!
   1/4YENIYENeCURECURCURCUR|u!C,
   1/2CURECUReCUReP:eENOTCURNOT!-c-CURuCUReCUREIAIyAA-aCUREE-L-?oCUREENOTCUR+-CUReCUR`iCURAECURCURCURTHCUR^1!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURa:YENIYENAYENEYENi! 1/4YEN-YEN
   *YENiYENEYEN^3YENeCURECURCURCURACUR?YENu! 1/4YENOYEN^1CURI!-c- CUR
   1/2CURI^3ECURaCUR.CUR-CURIYEN<<!
   1/4YENIYENeCUREAD-CUR^1CUReYEN-YENeYENCURYEN-c-YENoYENEYEN-c-YEN
   *YENeYEN+-! 1/4YEN.YENc,YENoYEN *YENiYEN>>YEN^1CURECUR.CURAE 
   1/4AAoCURuCUR`iCURAECURCURCURTHCUR^1!-L-

   4.4BSD YEN<<! 1/4YENIYENeCURIE-L-?oCURIYEN
   *YENiYEN>>YEN^1CURECURIENOT^3a:CURuCUR`iCURAECURCURCURTHCUR>>CURo!-L-
   CUR^3CURI'd-EU:Ass. *CURI.eA:eCURI UNIX CURI-oC, 1/2eCURIYEND-!
   1/4YEN,YENc,YENoCURC,^1OCURiCUR`iCURTHCUR.CUR?!-L- Ken Thompson
   CURECUReCURACURAE^1OCURiCUR`iCUR? 1/2eCURaCURI 2 CURA:CURI 1/4AAoCURC,CURI
   YENaYENaYENeYENTHYENAYENOYENoYENDEGCURNOTCURECUR-!-c- YENae!
   1/4YENP:CUR-aCUReCUROYEN<<! 1/4YENIYENeP:o'O:CURIYENI!
   1/4YENEYEN|YENS:YEN-c-CURECUReCUReENOTIYENCURNOT^1OCURECURiCUR`iCURAECURCURCURTHCUR>>CURoCURC,CUR.CUR?
   [Ritchie, 1988]!-L- YENaYENAYEN>>!
   1/4YEN,AAAA-L-YEN.YEN^1YENAEYEN`aCURI!-c-  1/4A-oYCURE
   1/4AAoCURuCUR`iCUR?YEN<<! 1/4YENIYENeCUREYENae! 1/4YENP:YEN
   *YENiYEN>>YEN^1CURIYENaYENC,YENeCURE AE+-CUR,CUR-CUReCURCURIAEDEG *CURE
   1/4AAoCUR^1CUReCUR^3CURECURNOT^2A:C, 1/2CURC,CUR.CUR?!-L- A+- 1/2a^2
   1/2CUREAC, 1/2CURICUR?CURaCUREYENaYENIYENeYEN.YENAYEN-YEN<<!
   1/4YENIYENeCURNOTA-aCURD-CUR`iCURTHCUR.CUR?!-L- CURTHCUR?!-c-
   1/2e'u:CURIYEN<<! 1/4YENIYENeCURIEo 3/4iCURE
   3/4(R)CURuCURCURCURaCURICURC,CUR.CUR?CURNOT!-c- YENIYENAYENEYENi!
   1/4YEN-CURICUReCUR|CUREu!C, 1/2CURNOTA:E^2ACURuCUR`iCUReCUR^3CURECURC, 
   1/4!AeCUREAc,CURCUR-CURECURACURAECURCURCURCURTHCUR.CUR?!-L- ,
   1/2-ossCURIYEN-aYENUYEN`i!
   1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCURI,|uaeCURI-oC,AeA
   1/4CURC,CURI CUR 1/2CURICUReCUR|CUREYENu! 1/4YENOYEN^1CURoYENae!
   1/4YENP:P:o'O:CUREAO:CUR-CUR^3CURECURC, YEN<<!
   1/4YENIYENeCURIAc,CURCURuCURo,-oCUReCUR
   1/2CUR|CURECUR^1CURe.^1,thCURECUR-c-CUReCURTHCUR^1!-L-

   YENae! 1/4YENP:CURIA:I 3/4i!-c- YEN.YENS:YENeCURE,AECURD-CUR`iCURe
   YEN^3YENTHYENoYENE,A,`iYENCURYENoYEN?YEN *YENeYEN?CURa:!-c-
   A:E^2ACURuCUR`iCUR?YENae! 1/4YENP:YEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoYEN
   *YENiYENDEGYENeYEN`aCURoA:ICUR.CURAEYEN.YEN^1YENAEYEN`aCUREAD-IACUR.CURTHCUR^1!-L-
   CUR 1/2CURICUReCUR|CUREYEN
   *YENiYENDEGYENeYEN`aCURa:YEN.YENS:YENeCURI!-c-YEN
   *YENiYEN>>YEN^1CURo>>ECURACURAE 1/4AAoCURuCUR`iCURAECURCURCURTHCUR^1!-L-
   CUR 1/2CUR`iCUReCURIYEN *YENiYENDEGYENeYEN`aCURI
   3/4U:-oUCURECURA:CURCURCURAECURICUR^3CURIEU:CURIEIDEGICURoA:P:CUR"CURTHCUR^1CURICURC,!-c-
   CUR^3CUR^3CURC,CURIYEN<<!
   1/4YENIYENeCURECURA:CURCURCURAECURICURss!-c-^1ICUR"CUReCUR^3CURECURECUR.CURTHCUR^1!-L-

   2.3 Aa!-c-2.4 AaCURC,CURI 4.4BSD YEN<<!
   1/4YENIYENeCURECUReCURACURAEA:oP:!CURuCUR`iCUReYENu!
   1/4YENOYEN^1CURa:-oC,P:aCURIAss. *CURI^3uI
   *CURECURA:CURCURCURAEDEG.CURCURCURTHCUR^1!-L- CUR 1/2CUR.CURAE,aaCURI
   3/4ICURC,CURI!-c- 4.4BSD CURE, 1/2CUR`iCUReCUR 1/2CUR`iCUReCURIYENu!
   1/4YENOYEN^1CURIAss. *CURE 1/4AAoCURI 3/4U:-oUCURoAaIACUR.CURTHCUR^1!-L-

2.2. YEN<<! 1/4YENIYENeCURI^1 1/2A(R)

   CUR^3CURIAaCURC,CURI!-c-2 CURA:CURIA|IICUR<<CURe 4.4BSD YEN<<!
   1/4YENIYENeCURI^1 1/2A(R)CURo,<<CURAECURCURCURCURTHCUR^1!-L-

    1. YEN 1/2YENOYENEYEN|YENS:YEN-c-CURIAAAAA-aA|II!-c-CURA:CURTHCUReYEN<<!
       1/4YENIYENeCURo^1 1/2AUCUR^1CUReCUR?CURaCURIYENaYEN,YENaa! 1/4YENe
       CURECUReCURACURAEA:oP:!CURuCUR`iCUR?u!C, 1/2ACURECUReCUReENOTI`a

    2. CUR 1/2CURIAEDEGAA-aCUREu!C, 1/2!-c-CURA:CURTHCUReYENae!
       1/4YENP:CUREA:oP:!CURuCUR`iCUReYENu! 1/4YENOYEN^1CURECUReCUReENOTI`a

   YEN<<! 1/4YENIYENeCURIAc,EoENOTCURI!-c-YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURoA:ICUR.CURAEYEN-c-YEN *YENeYEN+-! 1/4YEN.YENc,YENoCURNOT
   YEN-c-YEN-YEN>>YEN^1CUR^1CUReCUR?CURaCURIYEN.YEN^1YENAEYEN`aYENu!
   1/4YENOYEN^1CURo 1/4AAoCUR.CURAECURCURCURTHCUR^1!-L- 4.4BSD
   CURC,CURI!-c-CUR^3CURIYEN 1/2YENOYENEYEN|YENS:YEN-c-CURI
   1/4!CURICUReCUR|CURE^1 1/2A(R)CURECURECURACURAECURCURCURTHCUR^1!-L-

     * 'd-AAAA-aCUREYEN<<! 1/4YENIYENeu!C, 1/2: YEN?YENCURYENTH!
       1/4CUR-aCUReCUROYEN.YEN^1YENAEYEN`a>>th. *CURI 1/4eCUReDEG.CURCUR!-c-
       u 1/2O>>O'EIy!-c-CUR 1/2CUR.CURAEYEN *YENiYEN>>YEN^1'EIy

     * YENaYENaYENe'EIyCURIYENuYENY! 1/4YENE: YENU!
       1/4YEN,YENoYENDEGCUREYEN^1YENiYENAYENOYENoYENDEG

     * EAEINCURIYEN.YEN^1YENAEYEN`aYENCURYENoYEN?YENOYENS:! 1/4YEN^1:
       I/O!-c-YEN^3YENoYENEYENi! 1/4YENe!-c- u 1/2O>>OCURECUReCURACURAE 1/4A,
       1/2CURuCUR`iCUReA? 1/2AA^2 1/2A`a-oi

     * YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a:
       YENOYEN!YENCURYENe!-c-YENC,YEN-L-YEN`iYEN-YENEYENe!-c-YENNYEN^1I
       3/4CURI^2o 1/4a!-c-YENOYEN!YENCURYENeYENiYENAYEN-!-c- I/O
       YEND-YENAYENOYEN!'EIy

     * A 1/4Eo:CURI 1/4eCUReDEG.CURCURCURIYENuYENY! 1/4YENE: A
       1/4Eo:CURIYENCURYENoYEN?YENOYENS:! 1/4YEN^1YENEYENeYENCURYEND-CURE
       YENeYENCURYENoYENC,YEN-L-YEN.YEN *YENeYENo

     * YEN *YENiYEN>>YEN^1'O:A:I?(R)u!C, 1/2: YEN 1/2YEN+-YENAYENE

     * YENIYENAYENEYENi! 1/4YEN-A:I?(R)CURO/CURIAD-+-th:
       .D-I(c)A(c),aeAAuCURIA:I?(R)YEN
       *YENiYENEYEN^3YENe!-c-DEG`iEIAA-aCUREYENIYENAYENEYENi! 1/4YEN-u!C, 1/2

   E 1/22.1 4.4BSD YEN<<! 1/4YENIYENeCURECUR-aCUR+-CUReu! 1/4iEoDEGIA,CUREYEN
   1/2YENOYENEYEN|YENS:YEN-c-

                     ENOTI`a                         YEN^3!                YEN<<!              
                                                  1/4YENE^1O?o 1/4YENIYENeAEaCURC,CURI^3a:^1c, 
         u! 1/4iEoDEGIA,EoENOTCURIAi. *             162,617                 80.4               
YENO/YENAYENA                                     9,393        4.6                             
1/2e'u:^2 1/2EoENOT                               1,107        0.6                             
YEN<<! 1/4YENIYENeCURIu!C, 1/2                    8,793        4.4                             
EAEINCURIYENCURYENoYEN?YENOYENS:! 1/4YEN^1        4,782        2.4                             
YEN *YENiYEN>>YEN^1'O:A:I?(R)                     4,540        2.2                             
A 1/4Eo:CURI 1/4eCUReDEG.CURCUR                   3,911        1.9                             
^2 3/4AUYENaYENaYENe                              11,813       5.8                             
vnode 'EIy                                        7,954        3.9                             
YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aYENI!        6,550        3.2                             
1/4YENssYENoYENDEG                                
FFS                                               4,365        2.2                             
YENiYENDEG^1 1/2ACUR^2                            4,337        2.1                             
1/2YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a          
YENaYENaYENeYENU!                                 645          0.3                             
1/4YEN^1CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a 
cd9660 YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a      4,177        2.1                             
CUR 1/2CURIA                                      12,695       6.3                             
3/4CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a (10) 
YENIYENAYENEYENi!                                 17,199       8.5                             
1/4YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a      
YENIYENAYENEYENi! 1/4YEN-A:I?(R)                  8,630        4.3                             
YENCURYENoYEN?! 1/4YENIYENAYENEYEN                11,984       5.9                             
*YENiYENEYEN^3YENe                                
ISO YEN *YENiYENEYEN^3YENe                        23,924       11.8                            
X.25 YEN *YENiYENEYEN^3YENe                       10,626       5.3                             
XNS YEN *YENiYENEYEN^3YENe                        5,192        2.6                             

   CUR^3CUR`iCUReCURIYEN<<YENAEYEN'YENeCURIYEN
   1/2YENOYENEYEN|YENS:YEN-c-CURICURUCURECURoCURECURIu!
   1/4iEoDEGIA,CURC,CUR-c-CURe!-c-CUR.CUR<<CURa DEGUCURECUReYENI!
   1/4YENEYEN|YENS:YEN-c-YEN-c-!
   1/4YENYENAEYEN-YENAYENaCUREDEGU:?-c-CURC,CURCUReCURaCURICURC,CUR^1!-L-

   YEN<<! 1/4YENIYENeCURIu! 1/4iDEGIA,EoENOTCURIEU:I(R)CURIYEN^3!
   1/4YENECUR<<CUReENOTIYENCURuCUR`iCURAECURCURCURTHCUR^1!-L- AEACURE!-c-u!
   1/4iDEGIA,CUR.CURAECURCURCUReYEN^3! 1/4YENECURICURECUR`iCURo
   1/4eCURACURAECURa!-c- AEAA:eCURIYEN-c-!
   1/4YENYENAEYEN-YENAYENaCURICUR?CURaCURIYEN^3!
   1/4YENECURo'THCURoCURC,CURCURCURTHCUR>>CURo!-L- u!
   1/4iCUREDEGIA,CUR^1CUReu!C, 1/2CURNOTENOTI *CURECURECURCURECURI!-c-u!
   1/4iCUREDEGIA,CUR.CURECURCURYEN^3! 1/4YENECURI u! 1/4iDEGIA,CURIYEN^3!
   1/4YENEAEaCURECUR-c-CUReYEN-c-!
   1/4YENYENAEYEN-YENAYENaDEGIA,CURI'O/?oCURo,AECURO 1/2D-CUR.CURTHCUR^1!-L-
   u! 1/4iDEGIA,CURC,CUR-c-CUReYEN 1/2YENOYENEYEN|YENS:YEN-c-CURI
   1/4!CURICURaCURICURo'THCURoCURC,CURCURCURTHCUR^1!-L-

     * A:aYEN`iYENUYENeCUREYEN.YEN^1YENAEYEN`au-AEDEGCURICUR?CURaCURIAEDEG-oi

     * YENEYENeYENAYEN *CUR-aCUReCUROYENOYEN(c)! 1/4YENeYENECURIDEG.CURCUR

     * YEN *YENiYEN>>YEN^1CURIAEDEG-oi
       3/4oAO:CURE'O/CUR^1CUReA:aYEN`iYENUYENeCUREA`a-oi

     * YENI! 1/4YENEYEN|YENS:YEN-c-YENC,YEND-YENCURYEN^1CURIAssA:eCURE
       1/2e'u:^2 1/2

     * I/O YENC,YEND-YENCURYEN^1CURIYENeYENoYEN?YENCURYEN`aYENuYENY! 1/4YENE

   E 1/22.2 4.4BSD YEN<<! 1/4YENIYENeAEaCURECUR-c-CURe HP300 INCURIu!
   1/4iDEGIA,EoENOT

                         ENOTI`a                             YEN^3!                YEN<<!              
                                                          1/4YENE^1O?o 1/4YENIYENeAEaCURC,CURI^3a:^1c, 
              u! 1/4iDEGIA,EoENOTCURIAi. *                   39,634                 19.6               
u! 1/4iDEGIA,EoENOTCURIYENO/YENAYENA                      1,562        0.8                             
YENC,YEND-YENCURYEN^1YENEYENeYENCURYEND-CURIYENO/YENAYENA 3,495        1.7                             
YENC,YEND-YENCURYEN^1YENEYENeYENCURYEND-CURIYEN 1/2!      17,506       8.7                             
1/4YEN^1YEN^3! 1/4YENE                                    
^2 3/4AUYENaYENaYENe                                      3,087        1.5                             
A 3/4CURIu! 1/4iDEGIA,EoENOT                              6,287        3.1                             
YEN-c-YEN>>YENoYENO:YENe,A,`iCURC,                        3,014        1.5                             
1/2nCUR<<CUR`iCUR?YENe! 1/4YENAYENo                       
HP/UX ,ss'^1u!C, 1/2                                      4,683        2.3                             

   E 1/22.1!O:4.4BSD YEN<<! 1/4YENIYENeCURECUR-aCUR+-CUReu!
   1/4iEoDEGIA,CUREYEN 1/2YENOYENEYEN|YENS:YEN-c-! * CURI HP300 IN 4.4BSD
   YEN<<! 1/4YENIYENeCURo^1 1/2A(R)CUR^1CUReYEN
   1/2YENOYENEYEN|YENS:YEN-c-CURICUR|CURA!-c- u!
   1/4iEoDEGIA,CURIEoENOTCURoCURTHCURECURaCUR?CURaCURICURC,CUR^1!-L- 2
   IoIU:CURI?oAICURI C ,A,`iCURIYEN 1/2! 1/4YEN^1YEN^3!
   1/4YENE!-c-YENO/YENAYENAYENOYEN!YENCURYENe!-c-CUR 1/2CUR.CURAE
   YEN-c-YEN>>YENoYENO:YENe,A,`iCURICURaCURICURoE 1/2CUR.CURAECUR-aCURe!-c-
   YEN-c-YEN>>YENoYENO:YENe,A,`iCURICURaCURICURI 2% DEGE^2
   1/4CUR.CUR<<CUR-c-CUReCURTHCUR>>CURo!-L- CURTHCUR?!-c-E 1/22.2!O:4.4BSD
   YEN<<! 1/4YENIYENeAEaCURECUR-c-CURe HP300 INCURIu! 1/4iDEGIA,EoENOT! *
   CURIAAy. *CURNOT 1/4"CUR.CURAECURCURCUReCUReCUR|CURE!-c- u!
   1/4iDEGIA,CURIYEN 1/2YENOYENEYEN|YENS:YEN-c-CURI!-c-HP/UX
   CURa:YENC,YEND-YENCURYEN^1YENuYENY! 1/4YENECURo 1/2u:CURCURCURAE!-c-
   YEN<<! 1/4YENIYENeCURICUR|CURACURiCUR-oCUR<<CURE 6.9%
   CUR.CUR<<CUR-c-CUReCURTHCUR>>CURo!-L-

   YEN<<! 1/4YENIYENeCURICUR'CUR-
   3/4(R)CURuCUREEoENOTCURACUR+-CURNOTYEN.YEN^1YENAEYEN`aCURI 1/2e'u:^2
   1/2CUREA`iC,DEGCUR.CURTHCUR^1!-L- CUR^3CURIYEN^3!
   1/4YENECURIYEN.YEN^1YENAEYEN`aCURNOT u-AEDEGCUR^1CURe
   CURECURCUREINCURCURCUReCUR`i!-c- YEN<<! 1/4YENIYENeCURNOTYENI!
   1/4YENEYEN|YENS:YEN-c-CURa:YEN 1/2YENOYENEYEN|YENS:YEN-c-CURI'A:P:^1
   1/2AUCURoCUR^1CUReCUR?CURaCURI'd-EU:EoENOTCURE CURECUReCURTHCUR^1 (14 
   3/4I>>^2 3/4E)!-L-
   (A(c),ACURuCUR`iCUR?E-aIyYENaYENaYENeCURo>>yCURA:CURaCURICURECURIAEACURE)
   YEN-aYENUYEN`i! 1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCURIAaeCURECURI
   CUR^3CUR`iCUReCURIu!C, 1/2CURNOT 1/4A^1OCURuCUR`iCUR?,aaCURECUR 1/2CURIYEN
   1/2YENOYENEYEN|YENS:YEN-c-CURoC,N'thCUR.CURAECUR.CURTHCUR|CUR<<!-c- 
   3/4aaCUR<<CUReECURCURACURAECUR.CURTHCUR|
   CURaCURICURaCUR-c-CUReCURTHCUR^1!-L- 4.4BSD YEN<<!
   1/4YENIYENeCURI!-c-u-AEDEGCUR^1CUReCUR?CURaCUREI *CUR.CUR?YEN^3!
   1/4YENECURICUR?CURaCURIYENaYENaYENeCURo-oAEIo/INCUR.CURTHCUR>>CURo!-L- CUR
   1/2CUR`iCURIA:I 3/4iCURIu! 1/4iCURC,CURIYEN<<! 1/4YENIYENeCURIYENeYEN 1/2!
   1/4YEN^1CURICUR|CURA 0.5% CURE^2aCUR(R)CURECURCURCUR<<CUReCURC,CUR^1!-L-
   CUR 1/2CUR.CURAE!-c-u-AEDEGCURICUR?CURaCURIYEN^3! 1/4YENECURIYEN<<!
   1/4YENIYENeCURIAaeCURIDEG`iEoENOTCURE,C,CURTHCURACURAECURICURCURCURTHCUR>>CURo!-L-
   CUR 1/2CUR`iCURIA'AICURECURiCUR?CURACURAE>>P:-ossCUR.CURAECUR-aCURe!-c-
   1/2e'u:^2
   1/2CURuCUR`iCUR?CURECURCUREIAIyAA-aCURE'O/I-c-CUR.CURAECURCURCUR?  3/4`i
   1/2eCUREA,-ossCUR.CURTHCUR^1!-L-

2.3. YEN<<! 1/4YENIYENe YENu! 1/4YENOYEN^1

   YEN<<! 1/4YENIYENeYEN`iYENUYENeYEN^3! 1/4YENECUREYENae!
   1/4YENP:YEN`iYENUYENeYEN^3! 1/4YENECURI'O:CURIP:^3|CURI!-c- 'd-E
   *CURECURECUReYENI! 1/4YENEYEN|YENS:YEN-c-CURC,A:oP:!CURuCUR`iCUReYENI!
   1/4YENEYEN|YENS:YEN-c-YEN`iYENUYENeCURIEY,iu!C, 1/2CURECUReCURACURAE
   ENOTIYENCURuCUR`iCURAECURCURCURTHCUR^1!-L- YEN<<!
   1/4YENIYENeCURI!-c-YENae! 1/4YENP:YEN
   *YENiYEN>>YEN^1CURECURECURACURAEYEN-c-YEN-YEN>>YEN^1CUR.CURECUR-CURCURAUCUReIYENCURuCUR`iCUR?
   YEN-c-YENEYEN`iYEN^1P:o'O:CURC,-oiAEDEGCUR.CURTHCUR^1!-L-AEA,-c-CURICUR-c-CUReA`a-oi
   -- CUR?CURECUR"CURD- I/O CURI^3<<>>ICURa:Aae+-u 1/2eIyAoAO: (CPU)
   CURIA:a:>>ss -- CURI!-c-YEN<<! 1/4YENIYENeCURACUR+-CURNOTIo/IN^2A:C,
   1/2CURC,CUR^1!-L- YEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoCURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURoINCURCURCURAEYEN<<! 1/4YENIYENeCURE YENu! 1/4YENOYEN^1CURoI
   *uaCUR.CURTHCUR^1!-L-YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURIAEo
   1/4!u^2+-AoAO:CUREYENC,! 1/4YEN?CURo 
   1/2nCUR^1thCUR`aCUReCUR|CUREE-L->>"CURE-oiP:ECURa:!-c-,
   1/2-ossCURIAEu:>>thCURoEO:CUR^1CUReCUR|CUREA+- 1/2aCURE-oiP:ECURo YEN<<!
   1/4YENIYENeCURE
   1/4A^1OCURuCUR>>CUReCUR?CURaCURE>>EINCURuCUR`iCURTHCUR^1!-L- YEN-c-YEN
   *YENeYEN+-! 1/4YEN.YENc,YENoCUR<<CUReCURI!-c-
   CUR^1CURUCURAECURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURNOTAE+-'u:AA-aCURE
   1/4A^1OCUR^1CUReCUReCUR|CURE,<<CUR"CURTHCUR^1!-L- CURA:CURTHCUReYEN-c-YEN
   *YENeYEN+-! 1/4YEN.YENc,YENoCURI!-c-YEN<<!
   1/4YENIYENeCURNOTYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURE'O/I-c-CUR.CUR?
   AEDEG-oiCURoCUR.CURAECURCURCUReCURECURCURECURIA:a:>>ssCUR.CURAECURCURCURTHCUR^1!-L-
   YEN<<! 1/4YENIYENeCURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeA`a-oiCURIDEG`iEoCURo!-c- YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURNOTIaCURACUR?,aaCURE'DEGI>>CUR^1CUReCUR^3CURECURaCUR-c-CUReCURTHCUR^1!-L-
   CUR?CURECUR"CURD- write YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c- YEN
   *YENiYEN>>YEN^1CURNOTAOCURACURAECURCURCURe'O:CURE 1/2nCUR^1thCUR`aYENC,!
   1/4YEN?CURoYENae! 1/4YENP:YEN *YENiYEN>>YEN^1CUR<<CUReYEN<<!
   1/4YENIYENeYEND-YENAYENOYEN!CUREYEN^3YENO! 1/4CUR.CURTHCUR^1CURNOT!-c- A:I
   3/4i!-c-CUR 1/2CURIYEN<<!
   1/4YENIYENeYEND-YENAYENOYEN!CURNOTYENC,YEN-L-YEN^1YEN-CURE
   1/2nCUR^1thCURTHCUR`iCUReADEGCUREYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCUR<<CUReIaCUReCURTHCUR^1!-L-

   A:I 3/4i!-c-YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI CPU CURI 1/4A^1OYENa!
   1/4YENECUR-aCUReCURO,
   1/2-ossCURIYEN-c-YENEYEN`iYEN^1P:o'O:YENTHYENAYENOYENoYENDEGCURoEN^1^1CUR^1CURe
   YENI! 1/4YENEYEN|YENS:YEN-c-YENEYENeYENAYEN *CURECUR.CURAE
   1/4AAoCURuCUR`iCURAECURCURCURTHCUR^1!-L- YENae!
   1/4YENP:CURECUReCURACURAEI?CUR"CUReCUR`iCUR?YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeAaeCURIYENNYENeYENa! 1/4YEN?CURI!-c-
   >>EINCURuCUR`iCUReADEGCUREYEN<<! 1/4YENIYENeCURECUReCURACURAE,!
   3/4UCURuCUR`iCURTHCUR^1!-L- CUR
   1/2CURICUReCUR|CUREYENAYENS:YENAYEN-CURIYEN.YEN^1YENAEYEN`aCURI'DEGA'ACURoEY
   3/4UCUR.CURTHCUR^1!-L- YEN<<!
   1/4YENIYENeCURO/AAICURuCUR`iCUR?YENNYENeYENa!
   1/4YEN?CURICUR^1CURUCURAEYEN<<!
   1/4YENIYENeCURIYEN-c-YENEYEN`iYEN^1P:o'O:CUREYEN^3YENO!
   1/4CURuCUR`iCURTHCUR^1!-L- CUR^3CUR`iCURI!-c-YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURIEu-oiINCURECUReCURe,! 3/4UCURuCUR`iCUR?YENNYENeYENa!
   1/4YEN?CURNOT EN^1^1CURuCUR`iCURECURCURCUR^3CURECURoEY
   3/4UCUR^1CUReCUR?CURaCURC,CUR^1!-L- YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURIIaCUReAICURI!-c-YEN<<! 1/4YENIYENeCURECUReCURACURAEYENI!
   1/4YENEYEN|YENS:YEN-c-YEN`iYEN,YEN^1YEN?AaeCUREEO:CURuCUR`iCUReCUR<<!-c-
   CUR-c-CUReCURCURCURIYENae!
   1/4YENP:CURNOT>>O/A:eCUR.CUR?YENaYENaYENeYEN-c-YENEYEN`iYEN^1CUREYEN^3YENO!
   1/4CURuCUR`iCUReAICURC,EO:CURuCUR`iCURTHCUR^1!-L- YEN<<!
   1/4YENIYENeCURO/AAICURuCUR`iCUR?YENNYENeYENa! 1/4YEN?CURICUReCUR|CURE
   .e^2ICURoIaCUR^1CUR?CURaCUREYEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoCURECUReCURACURAE>>O/A:eCURuCUR`iCUR?YEN-c-YENEYEN`iYEN^1CURI!-c-
   CUR 1/2CUR`iCUReCURNOT^3I 1/4ACUREYEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoCURIYEN-c-YENEYEN`iYEN^1P:o'O:CURIDEG`iEoCURC,CUR-c-CURe!-c-
   CURECURCURCUR|CUR^3CURECURNOT,!
   3/4UCURuCUR`iCURECUR+-CUR`iCURD-CURECUReCURTHCUR>>CURo!-L-
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURo 1/2eIyCUR^1CURe'O:CUREYEN<<!
   1/4YENIYENeCURNOTYEN"YENe! 1/4CUREAo/P:o/CUR.CUR? 3/4`i^1c,!-c-YEN<<!
   1/4YENIYENeCURI YENae! 1/4YENP:CUREYEN"YENe! 1/4YEN^3!
   1/4YENECURoEO:CUR.CURTHCUR^1!-L- C YEN
   *YENiYENDEGYENeYENssYENoYENDEG,A,`iCURECUR-aCURCURCURAECURI!-c-CUR^3CURIYEN"YENe!
   1/4YEN^3! 1/4YENECURNOTAc,DEGeEN?o errnoCURE^3EC,
   1/4CURuCUR`iCURTHCUR^1!-L-CURTHCUR?!-c-YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURo  1/4A^1OCUR.CUR?'O/?oCURI -1 CURIAICURoEO:CUR.CURTHCUR^1!-L-

   YENae! 1/4YENP:YEN-c-YEN *YENeYEN+-! 1/4YEN.YENc,YENoCUREYEN<<!
   1/4YENIYENeCURI!-c-,ssCURCURCUREAEEI(c)CUR.CURAEAEDEG-oiCUR.CURTHCUR^1!-L-
   4.4BSD CURI I/O YEN^3YENoYENEYENi! 1/4YENeYENO:YENiYENAYEN-CURa:!-c-
   YEN-aYENUYEN`i!
   1/4YENAEYEN-L-YENoYENDEGYEN.YEN^1YENAEYEN`aCURE'O/I-c-CUR^1CUReCUR
   1/2CURIA 3/4CURIYENC,! 1/4YEN?^1 1/2ACURAICURo YEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoCURIYEN-c-YENEYEN`iYEN^1P:o'O:CURE^3EC,
   1/4CUR.CURTHCUR>>CURo!-L- YENae! 1/4YENP:YEN`iYENUYENeCURIYEN-c-YEN
   *YENeYEN+-! 1/4YEN.YENc,YENoCURICUR 1/2CUR`iCUR 3/4CUR`i!-c- 
   1/4A^1OCURICUR?CURaCURIAEEI(c)CUR.CUR?YEN-c-YENEYEN`iYEN^1P:o'O:CURoA:oP:!CURuCUR`iCURTHCUR^1!-L-
   YEN<<! 1/4YENIYENeCURI!-c-CUR?CURECUR"CURD-EICURIYEN
   *YENiYEN>>YEN^1CURNOTAo:CURACURAECURCURCURe'O:CUR 1/2CURIYEN
   *YENiYEN>>YEN^1CURoA:a:>>ssCURuCUR>>!-c- 'O/.,CUR^1CUReYEN
   *YENiYEN>>YEN^1CURE,<<CUR"CURECURCURCUReCUR|CURECUR^1CUReCURECURCURCUR|CUReCUR|CURE!-c-
   3/4oAO:EN^1^1CURICURUCURECURoCURECURo 1/4A,
   1/2CUR.CURAECURCURCURTHCUR^1!-L-

2.4. YEN *YENiYEN>>YEN^1'EIy

   4.4BSD CURIYENTHYENeYENAYEN?YEN^1YEN-'A:P:CURoYENuYENY!
   1/4YENECUR.CURAECURCURCURTHCUR^1!-L-  1/4A^1OCURuCUR`iCUR?CUR 1/2CUR`iCUR
   3/4CUR`iCURIYEN?YEN^1YEN-CURTHCUR?CURIYEN^1YEN`iYENAYENECURI YEN
   *YENiYEN>>YEN^1CURE,AECURD-CUR`iCURAECURCURCURTHCUR^1!-L- 4.4BSD CURIYEN
   *YENiYEN>>YEN^1CURIYEN^3YENoYENAEYENYEN^1YENECURI!-c-
   YEN-c-YENEYEN`iYEN^1P:o'O:CURIAEaIAECUREYENeYENoYEN?YENCURYEN`a'A:P:CURo'THCUR`aYENae!
   1/4YENP:YEN`iYENUYENeCURI 3/4oAO:CURE!-c- YEN^1YEN+-YEN,YENaa!
   1/4YENeYENoYENDEGCURIYENNYENeYENa! 1/4YEN?CURa:YENeYEN 1/2!
   1/4YEN^1A(c),ae!-c- 1/4+-EI 3/4d-EoCURo'THCUR`a YEN<<!
   1/4YENIYENeYEN`iYENUYENeCURI 3/4oAO:CUR<<CURe^1
   1/2A(R)CURuCUR`iCURAECURCURCURTHCUR^1!-L-
   YEN^3YENoYENAEYENYEN^1YENECURECURIYEN<<! 1/4YENIYENeCURNOTYEN
   *YENiYEN>>YEN^1CUREYENu! 1/4YENOYEN^1CURo
   A:oP:!CUR^1CURe-oYCURE>>EINCUR^1CUReCUR^1CURUCURAECURNOT'THCURTHCUR`iCURAECURCURCURTHCUR^1!-L-
   YENae! 1/4YENP:CURIYEN *YENiYEN>>YEN^1CURoA,A(R)CUR.!-c-CUR 1/2CURI
   1/4A^1OCURoA(c),aeCUR.!-c- YEN *YENiYEN>>YEN^1CURI 1/4A^1O
   3/4oAO:CURNOTEN^2 1/2CUR.CUR?CURECURCUREA:IAICURo 1/4oCUR+-
   1/4eCUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- CUR^1CURUCURAECURIYEN
   *YENiYEN>>YEN^1CURECURIYEN *YENiYEN>>YEN^1 ID (PID)
   CURE,AECURD-CUR`iCUReDEG`iDEGOCURIAICURNOT^3a:CUReAAo:CURAECUReCUR`iCURTHCUR^1!-L-
   CUR^3CURIAICURIYEN<<! 1/4YENIYENeCURNOTYENae! 1/4YENP:CURE 1/4A^1O
   3/4oAO:CURIEN^2 1/2CURoEo^1d-CUR^1CUReCURECURCUREYEN
   *YENiYEN>>YEN^1CURI?E,uCURo^3IC,S:CUR.CUR?CURe!-c- YENae!
   1/4YENP:CURNOTYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURo
   1/4A^1OCUR^1CUReCUR?CURaCURE>>^2
   3/4ECUR^1CURe-oYCURE>>EINCURuCUR`iCURTHCUR^1!-L-

   YEN<<! 1/4YENIYENeCURIA 3/4CURIYEN
   *YENiYEN>>YEN^1CURIYEN^3YENoYENAEYENYEN^1YENECURoE-L-A 1/2CUR.CURAEYEN
   *YENiYEN>>YEN^1CURoA,A(R)CUR.CURTHCUR^1!-L-
   ?.CUR.CUR-A,A(R)CURuCUR`iCUR?YEN *YENiYEN>>YEN^1CURo ,uCURI?AEYEN
   *YENiYEN>>YEN^1CURI >>OYEN *YENiYEN>>YEN^1CURE,AECUROCURTHCUR^1!-L- YEN
   *YENiYEN>>YEN^1A,A(R)>>thCUREE-L-A
   1/2CURuCUR`iCUR?YEN^3YENoYENAEYENYEN^1YENECURI!-c-YENae!
   1/4YENP:YEN`iYENUYENeCURIYEN *YENiYEN>>YEN^1CURI 1/4A^1O 3/4oAO:CURE
   YEN<<! 1/4YENIYENeCURNOT'EIyCUR.CURAECURCURCUReYEN
   *YENiYEN>>YEN^1CURIYEN.YEN^1YENAEYEN`a 3/4oAO:CURII
   3/4EyCURo'THCURoCURC,CURCURCURTHCUR^1!-L- YEN<<! 1/4YENIYENeCURI
   3/4oAO:CURE'O/CUR^1CURe 1/2AAI *CURE^1 1/2A(R)I
   *AC,CURECURA:CURCURCURAECURI!-c-4 
   3/4ICURC,^2oAaCUR.CURAECURCURCURTHCUR^1!-L-

   ?TH2.1 YEN *YENiYEN>>YEN^1CURIYENeYENCURYENOYENuYENCURYEN-YENe
   YEN *YENiYEN>>YEN^1'EIyYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENe

   ?TH2.1!O:YEN *YENiYEN>>YEN^1CURIYENeYENCURYENOYENuYENCURYEN-YENe!
   *CURC,CURIYEN *YENiYEN>>YEN^1CURIYENeYENCURYENOYENuYENCURYEN-YENeCURo
   1/4"CUR.CURAECURCURCURTHCUR^1!-L- YEN *YENiYEN>>YEN^1CURI fork
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURoINCURCURCURAE!-c- ,uCURIYEN
   *YENiYEN>>YEN^1CURIYEN^3YENO! 1/4CURECUR.CURAE?.CUR.CURCURYEN
   *YENiYEN>>YEN^1CURoA,A(R)CUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   fork CURI,AECURO 1/2D-CURuCUR`iCUReCURE
   AEoAAUIaCUReCURTHCUR^1!-L-DEG`iEyCURI?AEYEN *YENiYEN>>YEN^1CURE>>OYEN
   *YENiYEN>>YEN^1CURIYEN *YENiYEN>>YEN^1 ID CURoEO:CUR.!-c-
   CURaCUR|DEG`iEyCURI>>OYEN *YENiYEN>>YEN^1CURE 0 CURoEO:CUR.CURTHCUR^1!-L-
   YEN *YENiYEN>>YEN^1CURI?AE>>O'O/.,CURIYEN.YEN^1YENAEYEN`a 3/4aaCURIYEN
   *YENiYEN>>YEN^1CURIAECURE^3NOTAO/^1
   1/2ACURCURoCURaCUR?CUReCUR.CURTHCUR^1!-L- ?.CUR.CUR-A,A(R)CURuCUR`iCUR?YEN
   *YENiYEN>>YEN^1CURIYENOYEN!YENCURYENeu
   1/2O>>OCURa:YEN.YENDEGYENEYENeYENIYENoYENEYENeCURI 3/4oAO:!-c-
   YENaYENaYENeYEN`iYENCURYEN-c-YEN|YENECURICUReCUR|CURE?AECURNOT>>yCURACURAECURCURCUReYENeYEN
   1/2! 1/4YEN^1CUR^1CURUCURAECURoP:|ICUR.CURTHCUR^1!-L-

   ?AECURIYEN^3YENO! 1/4CURECUR.CURAEA,A(R)CURuCUR`iCUR??.CUR.CURCURYEN
   *YENiYEN>>YEN^1CURC,CUR-c-CURACURAECURa!-c- EICURIYEN
   *YENiYENDEGYENeYEN`aCURoYENi! 1/4YENECUR.
   1/4A^1OCUR^1CUReCUR^3CURECURC,CUReCUReEO/Io/CURC,AEAICURIAEDEG-oiCURoCUR^1CUReCUR^3CURECURaCURC,CURCURTHCUR^1!-L-
   YEN *YENiYEN>>YEN^1CURI execve YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURoINCURCURCUReCUR^3CURECURC,!-c- EICURIYEN
   *YENiYENDEGYENeYEN`aCURIYENaYENaYENeYENCURYENa! 1/4YEN,CURC, 1/4<<ENOT
   1/4<<?ECURo 3/4aa 1/2nCURCUR.CURAE!-c- ?.CUR.CURCURDEGu?oCURIAECURoCUR
   1/2CURI?.CUR.CUR--oiA(R)CUR.CUR?YENCURYENa!
   1/4YEN,CUREDEGuCURAAICUR^1CUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   DEGu?oCURIDEG`iCURA:CURI!-c-YEN.YEN^1YENAEYEN`aCURC,C,S:
   1/4+-CURuCUR`iCUReYENOYEN(c)! 1/4YENTHYENAYENE (YEND-YENCURYENEYENe
   1/4A^1OYENOYEN!YENCURYENeCURa:>>O/A:eCURuCUR`iCUR?YENCURYENoYEN?YEN
   *YENeYEN?YEN
   *YENiYENDEGYENeYEN`aCURIu-AEDEGCURoAYENCUR^1YENOYEN!YENCURYENe)
   CURoCUR.CUR?YENOYEN!YENCURYENeCURII 3/4ADEGCURC,CUR^1!-L-

   YEN *YENiYEN>>YEN^1CURI exit YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURo
   1/4A^1OCUR^1CUReCUR^3CURECURC,!-c- ?AEYEN *YENiYEN>>YEN^1CURE 8
   YENOYENAYENECURI exit YEN^1YENAE! 1/4YEN?YEN^1CURoA-:?(R)CUR.CURAE
   1/2-aI>>CUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- CURaCUR.YEN
   *YENiYEN>>YEN^1CURNOT 1 YEND-YENCURYENEDEGE 3/4aaCURI 3/4d-EoCURo?AEYEN
   *YENiYEN>>YEN^1CUREAAACUR"CUR?CURCUR 3/4`i^1c,CURECURI!-c- YENNYENCURYEN
   *CURa:YEN
   1/2YEN+-YENAYENE!-c-CURTHCUR?CURIAc,^2d-YENOYEN!YENCURYENeCURoINCURCURCURAE
   YEN
   *YENiYEN>>YEN^1'O:A:I?(R)YENAYENaYENIYENeCURoYEN>>YENAYENEYEN-c-YENAYEN
   *CUR^1CUReENOTI *CURNOTCUR-c-CUReCURTHCUR^1!-L- YEN
   *YENiYEN>>YEN^1'O:A:I?(R)CURECURA:CURCURCURAECURI 11  3/4ICURC,Ac,CURCUR-
   1/4eCURe 3/4aaCUR^2CURAECURCURCURTHCUR^1!-L-

   YEN *YENiYEN>>YEN^1CURI!-c-wait YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURoINCURCURCURAE >>OYEN
   *YENiYEN>>YEN^1CURICURCURCUR-oCUR`iCUR<<CURNOT 1/2-aI>>CUR^1CUReCURTHCURC,
   1/4A^1OCURoAaeAC,CUR^1CUReCUR^3CURECURNOTCURC,CUR!-c- wait
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI 1/2-aI>>CUR.CUR?>>OYEN
   *YENiYEN>>YEN^1CURI PID CURE 1/2-aI>>YEN^1YENAE!
   1/4YEN?YEN^1CURoEO:CUR.CURTHCUR^1!-L- ?AEYEN *YENiYEN>>YEN^1CURI!-c->>OYEN
   *YENiYEN>>YEN^1CURNOT 1/2-aI>>CURTHCUR?CURIDEGU 3/4i
   1/2-aI>>CUR.CUR?CURECURCURIYEN.YENDEGYENEYENeCURECUReCUReA:IAICURICURuCUR`iEyCURoA:'ADEGCURC,CURCURTHCUR^1!-L-
   wait4 YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURo>>EINCUR^1CUReCUR^3CURECURC,!-c- ?AEYEN
   *YENiYEN>>YEN^1CURI>>OYEN *YENiYEN>>YEN^1CURI
   1/2-aI>>CURoDEGuCURu-CUR^3CUR.CUR?YENCURYENUYENoYENECURECURA:CURCURCURAECURI
   3/4d-EoCURE!-c- >>OYEN *YENiYEN>>YEN^1CURNOTA,A,'u:'O:CURI'O:CURE
   3/4AEnCUR.CUR?YENeYEN 1/2! 1/4YEN^1CURECURA:CURCURCURAECURI 3/4d-EoCURo
   1/4eAEACUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- CURaCUR.?AEYEN
   *YENiYEN>>YEN^1CURNOTAeCURE 1/2-aI>>CUR.CUR?CUR?CURaCUREYENeYEN 1/2!
   1/4YEN^1CURNOTYEN-a! 1/4YENOYEN!YENoYENE (?AECURICURECURCUR 3/4oAO:)
   CURECURECURACURAECUR.CURTHCURACUR? 3/4`i^1c,!-c-YEN<<! 1/4YENIYENeCURI
   init CURECURCURCUR|AEAEICUREYEN *YENiYEN>>YEN^1CURECUR 1/2CURI>>OYEN
   *YENiYEN>>YEN^1CURI  1/2-aI>>YEN^1YENAE!
   1/4YEN?YEN^1CURNOTAAICURuCUR`iCUReCUReCUR|A:'ADEGCUR.CURTHCUR^1!-L-CUR^3CUR`iCURECURA:CURCURCURAECURI
   3.1 AaCUR-aCUReCURO 14.6 AaCURo>>^2 3/4ECUR.CURAECUR-CURACURuCURCUR!-L-

   5  3/4ICURC,CURI!-c-YEN<<!
   1/4YENIYENeCURNOTCURECURICUReCUR|CURECUR.CURAEYEN
   *YENiYEN>>YEN^1CURoA,A(R)CUR. 
   3/4AIC,CURuCUR>>CUReCUR<<CURECURA:CURCURCURAECURI 3/4U:-oUCURo
   1/2OCURUCURAECURCURCURTHCUR^1!-L-

   YEN *YENiYEN>>YEN^1CURIYEN
   *YENiYEN>>YEN^1IYENAeAAUCURECURCURCUR|YENNYENeYENa! 1/4YEN?CURE 1/2
   3/4CURACURAE  1/4A^1OCURoYEN^1YEN+-YEN,YENaa!
   1/4YENeCURuCUR`iCURTHCUR^1!-L- CUR^3CURIIYENAeAAUCURIYEN<<!
   1/4YENIYENeYENU! 1/4YEN^1CURIYEN^1YEN+-YEN,YENaa!
   1/4YENeYENoYENDEGYEN-c-YENeYEN'YENeYEN-oYEN`aCURECUReCURACURAE'EIyCURuCUR`iCURAECURCURCURTHCUR^1!-L-
   YEN^1YEN+-YEN,YENaa! 1/4YENeYENoYENDEGCURIIYENAeAAUA'AICURE
   1/2AACURssCURAACUR+-CUR^1CUReAEAEICUREYENNYENeYENa! 1/4YEN? (nice)
   CURECUReCURACURAE!-c-YENae! 1/4YENP:CURIYEN *YENiYEN>>YEN^1CURI
   1/4A^1OIYENAeAAUCURE+-AEP:ACURoI?CUR"CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1CURNOT!-c-
   YEN<<! 1/4YENIYENeCURIYEN^1YEN+-YEN,YENaa!
   1/4YENeYENoYENDEGYENYYENeYEN.CURE 1/2 3/4CURACURAE!-c-'d-EU:CURECURECURe
   CPU YENeYEN 1/2! 1/4YEN^1CURoP:|ICUR^1CUReENOTI
   *CURNOTCUR-c-CUReCURTHCUR^1!-L-

  2.4.1. YEN.YENDEGYENEYENe

   YEN.YEN^1YENAEYEN`aCURIYEN
   *YENiYEN>>YEN^1CUREA-:CUReCUR^3CURECURNOTCURC,CURCURe
   YEN.YENDEGYENEYENeCURIYEN>>YENAYENECURoA:euACUR.CURAECURCURCURTHCUR^1!-L-
   4.4BSD CURECUR-aCUR+-CUReYEN.YENDEGYENEYENeCURIYENI!
   1/4YENEYEN|YENS:YEN-c-^3a:CURe^1thCURssCURoYENaYENC,YENeCURECUR.CURAECURCURCURTHCUR^1!-L-
   YEN *YENiYEN>>YEN^1CURIYENae! 1/4YENP:YEN`iYENUYENeCURIYENuYENO:YENe!
   1/4YENAYENoCURoYEN.YENDEGYENEYENeCURNOTA-:CUReCUR`iCUReCURUCUR
   YENIYENoYENEYENeCURECUR.CURAE>>O/A:eCURC,CURCURTHCUR^1!-L-
   YEN.YENDEGYENEYENeCURNOTE-A,CUR.CURAE!-c-CUR
   1/2CUR`iCURNOTYENIYENoYENEYENeCURECUReCURACURAEEaA-aCURuCUR`iCURAECURCURCURe'O:CURI
   CURuCUReCURECUReYEN.YENDEGYENEYENeCURIE-A,CURIYENO:YENiYENAYEN-CURuCUR`iCURTHCUR^1!-L-
   YEN.YENDEGYENEYENeCURoEaA-aCUR^1CUReCUR^3CURECURC,!-c-, 1/2-ossCURIYEN
   *YENiYEN>>YEN^1CURIYEN^3YENoYENAEYENYEN^1YENECURoEYA,CUR.!-c-
   YENIYENoYENEYENeCURo
   1/4A^1OCUR^1CUReCUR?CURaCURI?.CUR?CUREYEN^3YENoYENAEYENYEN^1YENECURo^1
   1/2AUCUR^1CUReCUR^3CURECURECURECUReCURTHCUR^1!-L-
   YEN.YENDEGYENEYENeCURNOTYENIYENoYENEYENeCUREAAACURiCUReCURE!-c-CUR
   1/2CURIYENIYENoYENEYENeCURIYEN *YENiYEN>>YEN^1CURoYEN-c-YENU:!
   1/4YENECURuCUR>>CUR?CURe!-c- (CUR-aCUR
   1/2CUReCUR-Ac,DEGeEN?oCUREAICURoAssA:eCUR.CUR?,aaCURC,)  1/4A^1OAaeCURIYEN
   *YENiYEN>>YEN^1CUREIaCUReCUR^3CURECURaCURC,CURCURTHCUR^1!-L-
   YENIYENoYENEYENeCUR<<CUReIaCUReCURE!-c-CUR
   1/2CURIYEN.YENDEGYENEYENeCURIYENO:YENiYENAYEN-CURuCUR`iCURECUR-CURECURe!-c-
   E-A,CUR^1CURe (CUR 1/2CUR.CURAEEaA-aCURuCUR`iCURe)
   CUR^3CURECURNOT-oAECURO^2A:C, 1/2CURECURECUReCURTHCUR^1!-L-

   CURTHCUR?!-c-YEN
   *YENiYEN>>YEN^1CURIYEN.YENDEGYENEYENeCURoIu>>eCUR^1CUReCUR^3CURECURa:!-c-
   YEN<<!
   1/4YENIYENeCURC,A:euACURuCUR`iCURAECURCURCUReYENC,YENOYEN(c)YENeYENECURIAEDEG-oiCURo^1OCURECUR|CUReCUR|CURE>>O/A:eCUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   CUR-c-CURe
   1/4iCURIYEN.YENDEGYENEYENeCURIYENC,YENOYEN(c)YENeYENECURC,CURIAEDEG-oiCURIYEN
   *YENiYEN>>YEN^1CURo 1/2-aI>>CURuCUR>>CUReCUR^3CURECURC,CUR^1!-L-
   CUR^3CURICUReCUR|CURE 3/4`i^1c,CURI
   1/2-aI>>CURI!-c->>o:,aaCURIYENC,YEND-YENAYENDEGCURE>>EINCURC,CURCUReCUReCUR|CURECUR
   1/2CURI>>thCURIYEN *YENiYEN>>YEN^1CURIYENaYENaYENeYENCURYENa!
   1/4YEN,CURo'THCURoCURA YEN^3YEN-c-YENOYEN!YENCURYENeCURIA,A(R)CURoE
   1/4CURCURCURTHCUR^1!-L-

   CURCURCUR-CURA:CUR<<CURIYEN.YENDEGYENEYENeCURIEaA-aCUR^1CUReCUR^3CURECURaIu>>eCUR^1CUReCUR^3CURECURaCURC,CURCURTHCUR>>CURo!-L-
   CUR 1/2CURIYEN.YENDEGYENEYENeCURI!-c-E 1/2Ao:CUR.CUR?YEN
   *YENiYEN>>YEN^1CURoA:a:>>ssCURuCUR>>CURe SIGKILL CURa:!-c-
   YEN,YENc,YENO:YEN^3YENoYENEYENi! 1/4YENeYEN.YENDEGYENEYENeCURC,CUR-c-CURe
   SIGSTOP CURC,CUR^1!-L-

   YEN
   *YENiYEN>>YEN^1CURIYEN.YENDEGYENEYENeCURoAEAEICUREYEN^1YEN?YENAYEN-CUREAAAA-L-CURuCUR>>CUReCUR^3CURECURaA-aAoCURC,CURCURTHCUR^1!-L-
   CUR^3CUR`iCURECUReCURe!-c-Ao:IyCURuCUR`iCUR?YEN
   1/2YENOYENEYEN|YENS:YEN-c-YEN^1YEN?YENAYEN-A`a-oiCURNOT^2A:C,
   1/2CURC,CUR^1!-L- CUR?CURECUR"CURD-!-c-YEN^3YENe! 1/4YENAYENoCURoYENuYENY!
   1/4YENECUR.CURAECURCURCURe,A,`iCURC,CURI CUR 1/2CUR`iCUR
   3/4CUR`iCURIYEN^3YENe!
   1/4YENAYENoCUREYEN^1YEN?YENAYEN-CURoA:oP:!CUR^1CUReENOTI
   *CURNOTCUR-c-CUReCURTHCUR^1!-L- CUR 1/2CURI,A,`iCURI
   1/4A^1OYEN.YEN^1YENAEYEN`aCURI!-c-4.4BSD
   CURC,A:oP:!CURuCUR`iCUReA+-DEG`iCURIYEN^1YEN?YENAYEN-CURoENOT^3a:CUR^1CUReCUR^3CURECURC,!-c-
   CUR^3CUR`iCUReCURIYEN^1YEN?YENAYEN-CURo^3a:CUReAAo:CURAECUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   CURaCUR.YEN<<!
   1/4YENIYENeCURNOTAEEI(c)CUR.CUR?YEN.YENDEGYENEYENeYEN^1YEN?YENAYEN-CURoYENuYENY!
   1/4YENECUR.CURAECURCURCURECURCUR 3/4`i^1c,!-c- CUR 1/2CUR`iCUR
   3/4CUR`iCURIYEN^3YENe!
   1/4YENAYENoCURE^3a:CUReAAo:CURAECUReCUR`iCUR?IIDEGeCURo
   YEN.YENDEGYENEYENeCURIEaA-aCUREENOTI
   *CUREENOTCURACUR+-^3EA:YENCUR.CURECUR+-CUR`iCURD-CURECUReCURTHCUR>>CURo!-L-

   CUR^1CURUCURAECURIYEN.YENDEGYENEYENeCURI!-c-AE+-CUR,IYENAeAAUCURo>>yCURACURAECURCURCURTHCUR^1!-L-
   CURaCUR.E-L-?oCURIYEN.YENDEGYENEYENeCURNOTAE+->>thCUREICUR
   1/2eIyCURECURECURACURAECURCURCURe 3/4`i^1c,CURI!-c-
   YEN.YENDEGYENEYENeCURIAEICUR- 1/2c, 1/2o/CURI
   1/4AAoCUREDEGIA,CUR.CURTHCUR^1!-L-
   YEN.YENDEGYENEYENeYENIYENoYENEYENeCURI!-c-CUR
   1/2CURIYEN.YENDEGYENEYENeCURNOTYENO:YENiYENAYEN-CURuCUR`iCUReCUReCUR|CURECUR.CURAE
   1/4A^1OCUR.CURTHCUR^1CURNOT!-c- A
   3/4CURIYEN.YENDEGYENEYENeCURIDEGIA^3E-A,^2A:C, 1/2CURC,CUR^1!-L-
   CUR^3CURIYENaYEN<<YENEYEN-oYEN`aCURECUReCURe!-c-YEN *YENiYEN>>YEN^1CURI
   YEN^3!
   1/4YENECURIYEN-YENeYENAEYEN-L-YEN<<YENeCUREEoENOTCURoAEAA:eCURIYEN.YENDEGYENEYENeCURIE-A,CUREAD-CUR.CURAEEY,iCUR^1CUReCUR^3CURECURNOTCURC,CURCUReCURICURC,CUR^1!-L-

   YEN.YENDEGYENEYENeCURIAss. *CURE 1/4AAoCURI 3/4U:-oUCURI!-c-4.7
   AaCURC,^2oAaCUR.CURAECURCURCURTHCUR^1!-L-

  2.4.2. YEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CUREYEN>>YENAYEN.YENc,YENo

   E-L-?oCURIYEN *YENiYEN>>YEN^1CURoAE?YENCUR.CURAEYEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURNOT-oiCUReCUR`iCURTHCUR^1!-L- YEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURIA
   1/4Eo:CURO/CURIYEN-c-YEN-YEN>>YEN^1CURIA(c),aeCURa: 'O/.,YEN
   *YENiYEN>>YEN^1CURI 1/2,^1c,CUREYEN.YENDEGYENEYENeCURoA-:CURe
   1/4eAECURoA:oP:!CUR^1CUReCURICURE>>EINCURuCUR`iCURTHCUR^1!-L- YEN
   *YENiYEN>>YEN^1CURI?AEYEN *YENiYEN>>YEN^1CUR<<CUReYEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURoDEGuCUR.NCUR(R)CURTHCUR^1!-L- YEN
   *YENiYEN>>YEN^1CURNOT 1/4<<ENOT 1/4<<?ECURTHCUR?CURI
   1/4<<ENOTCURI>>OA^1CURIYEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN
   *CURoEN^1^1CURC,CURCUReCUReCUR|CURECUR^1CURe
   YENaYEN<<YENEYEN-oYEN`aCURoYEN<<!
   1/4YENIYENeCURIA:oP:!CUR.CURAECURCURCURTHCUR^1!-L- ?.CUR.CURCURYEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN
   *CURo-oiA(R)CUR^1CUReCUR^3CURECURI'EA+-CURC,CUR^1!-L- ?.CUR.CURCURYEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURIAICURICUR?CURCURCURAECURCUR
   -oiA(R)CUR.CUR?YEN *YENiYEN>>YEN^1CURIYEN *YENiYEN>>YEN^1 ID
   CURECURECUReCURTHCUR^1!-L-

   YEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURECUR-aCUR+-CUReYEN
   *YENiYEN>>YEN^1CURI
   1/2,^1c,CURI!-c-YEN,YENc,YENO:CURE,AECURD-CUR`iCUReCUR^3CURECURNOTCUR-c-CURe!-c-
   YEN.YENS:YENeCURICUReCUR|CURE^1aYEN`iYENUYENeCURIYEN.YEN^1YENAEYEN`aYEN
   1/2YENOYENEYEN|YENS:YEN-c-CURC,A`a-oiCURuCUR`iCURTHCUR^1!-L-
   YEN.YENS:YENeCURECUReCURACURAEA,A(R)CURuCUR`iCUReCUReCUR-CUR-c-CUReI`aCURIYEN,YENc,YENO:CURI!-c-CURCURCUR-CURA:CUR<<CURIYEN
   *YENiYEN>>YEN^1CURoYENNYENCURYEN *CURC,CURA:CURECURCURCURA YENNYENCURYEN
   *YENeYENCURYENoCURC,!-c--oC, 1/2eCURIYEN *YENiYEN>>YEN^1CURI 1/2D-IICURNOT
   2 EO:IU:CURIAEthIICURECURECURe!-c- 2 EO:IU:CURI 1/2D-IICURNOT 3
   EO:IU:CURIAEthIICURECURECURe!-c-4 EO:IU:CURaAE+-IICURE!A:
   CURECURCURCUR|CURaCURICURC,CUR^1!-L- YEN.YENS:YENeCURIYENNYENCURYEN
   *YENeYENCURYENoCURI^3AEAE^3NOTCURECUR-aCURCURCURAEYEN *YENiYEN>>YEN^1CURo
   fork CUR.CURAE!-c- CUR^3CUR`iCUReCUR^1CURUCURAECURIYEN
   *YENiYEN>>YEN^1CURoEI,A:CURIYEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN
   *CURECUR-aCUR-CUR^3CURECURC,
   CUR^3CURICUReCUR|CUREYEN,YENc,YENO:CURoA,A(R)CUR.CURTHCUR^1!-L-

   YENae! 1/4YENP:YEN *YENiYEN>>YEN^1CURI!-c-A+-AEECURIYEN
   *YENiYEN>>YEN^1CUREA-:CURe 3/4`i^1c,CUREAE+-IICURE YEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURICUR 1/2CUR`iCUR 3/4CUR`iCURIYEN
   *YENiYEN>>YEN^1CURECURTHCURECURaCURAEYEN.YENDEGYENEYENeCURoA-:CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   >>O/A:eCURuCUR`iCUR?YEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN
   *CUREADEGCUR^1CUReYEN *YENiYEN>>YEN^1CURNOT CUR 1/2CURIYEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURE+-AEP:ACUR^1CUReYEN
   1/2YENOYENEYEN|YENS:YEN-c-^3a:CURe^1thCURssCURo 1/4oCUR+- 1/4eCUReCURE!-c-
   CUR 1/2CUR`iCURECUReCURACURAEYEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURI
   1/4A^1OCURoAaeAC,CURa:-oAE^3<<CURoCUR.CUR?CURe!-c- ^3a:CURe^1thCURssCURo
   1/4oCUR+-CUR?CURe!-c- 1/2-aI>>CURuCUR>>CUReCUR`iCUR?CUReCUR.CURTHCUR^1!-L-

   A 1/4Eo:CURECURIYEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN * ID
   CURNOT^3a:CUReAAo:CURAECUReCUR`iCURAECURCURCURTHCUR^1!-L- CUR^3CURI ID
   CURI!-c-A 1/4Eo:CURE'O/I-c-CURAACUR+-CUReCUR`iCUR?YEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURI ID CURNOTA:I
   3/4iYEN>>YENAYENECURuCUR`iCURTHCUR^1!-L- YEN,YENc,YENO:YEN^3YENoYENEYENi!
   1/4YENeu!C, 1/2CURo>>yCURA:YEN.YENS:YENeCURI!-c-AE+-CUR,A
   1/4Eo:CURE'O/I-c-CURAACUR+-CURuCUR`iCUR? YEN *YENiYEN>>YEN^1YENDEGYENe!
   1/4YEN *CURoA??o-oiA(R)CUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- CUR
   1/2CURIA 1/4Eo:CURI!-c-CUR^3CUR`iCUReCURIYEN *YENiYEN>>YEN^1YENDEGYENe!
   1/4YEN *CUREADEGCUR^1CUReYEN *YENiYEN>>YEN^1CURIA(c),aeA
   1/4Eo:CURECURECUReCURTHCUR^1!-L- YEN *YENiYEN>>YEN^1CURI!-c-A
   1/4Eo:CURIYEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN * ID CURECUR 1/2CURIYEN
   *YENiYEN>>YEN^1CURIYEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN * ID CURNOTDEG`iA
   *CUR.CUR?CURECURCURICURss!-c- A(c),aeA 1/4Eo:CURou
   1/2O>>OCUR<<CUReAEECUR`aCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- CURaCUR.YEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN * ID CURNOTDEG`iA
   *CUR.CURAECURCURCURECUR+-CUR`iCURD-!-c- YEN *YENiYEN>>YEN^1CURNOTCUR
   1/2CURIA
   1/4Eo:CUR<<CUReAEECURss^1thCURaCUR|CURECUR^1CURe-oYCUREYENO:YENiYENAYEN-CURuCUR`iCURTHCUR^1!-L-
   A 1/4Eo:CURIYEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN * ID
   CURoEN^1^1CUR^1CUReCUR^3CURECURC,!-c-
   YEN.YENS:YENeCURICURCURCUR-CURA:CUR<<CURIDEGUCURECUReYEN,YENc,YENO:CURI'O:CURC,A
   1/4Eo:CURoA:'A:a:CUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   CUR^3CURIA:'A:a:CURIYEN,YENc,YENO:YEN^3YENoYENEYENi!
   1/4YENeCURE,AECURD-CUR`i!-c- YEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN
   *CURECURECURaCURE 4.8 AaCURC,^2oAaCUR.CURAECURCURCURTHCUR^1!-L-

   'O/I-c-CUR^1CUReYEN *YENiYEN>>YEN^1CURI 1/2,^1c,CURoYEN
   *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN
   *CURECUR.CURAECURTHCURECURaCUReCUR^3CURECURNOTCURC,CURCUReCURICUREAE+-CUR,CUReCUR|CURE!-c-
   YEN *YENiYEN>>YEN^1YENDEGYENe! 1/4YEN *CURI
   1/2,^1c,CURoYEN>>YENAYEN.YENc,YENoCURECUR.CURAECURTHCURECURaCUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   YEN>>YENAYEN.YENc,YENoCURICUR-aCURaCUREINAAOCURI!-c-YENC,! 1/4YENaYENoYEN
   *YENiYEN>>YEN^1CURECUR 1/2CURI>>OYEN
   *YENiYEN>>YEN^1CUREAD-CUR.CURAE^3O:IYENCUR.CUR?'A:P:CURo-oiCURe
   1/2D-CUR.CUR?CURe!-c- YENae!
   1/4YENP:CURIYENiYENDEGYENCURYENoYEN.YENS:YENeCURECUR
   1/2CURIYEN.YENS:YENeCURNOT-oiCURe
   1/2D-CUR^1YEN,YENc,YENO:CURoCUROCURECURTHCURECURaCURECUR^1CUReCUR^3CURECURC,CUR^1!-L-

2.5. YENaYENaYENe'EIy

   CUR 1/2CUR`iCUR 3/4CUR`iCURIYEN *YENiYEN>>YEN^1CURIYEN
   *YENiYEN>>YEN^1CUR'CURECURIYEN *YENeYENCURYENU!
   1/4YENEYEN-c-YENEYEN`iYEN^1P:o'O:CURo>>yCURACURAECURCURCURTHCUR^1!-L-
   YEN-c-YENEYEN`iYEN^1P:o'O:CURI!-c--oC,
   1/2eCUREIAIyAA-aCURE3CURA:CURIYEN>>YENDEGYENaYENoYENECUREENOT^3a:CURuCUR`iCURTHCUR^1:
   YENAEYENYEN^1YENE!-c- YENC,! 1/4YEN?!-c-CUR-aCUReCURO
   YEN^1YEN?YENAYEN-CURC,CUR^1!-L-
   YENAEYENYEN^1YENEYEN>>YENDEGYENaYENoYENECURIAEECURss
   1/2D-CUR.A`iINCURC,!-c-YEN
   *YENiYENDEGYENeYEN`aCURII?IaCURo'THCURoCURC,CURCURCURTHCUR^1!-L- YENC,!
   1/4YEN?uUCUROYEN^1YEN?YENAYEN-YEN>>YENDEGYENaYENoYENECURIAEECURss 1/4eCURe
   1/2nCUR^1thCURssCURECURaCURE^2A:C, 1/2CURC,CUR^1!-L- YENC,!
   1/4YEN?YEN>>YENDEGYENaYENoYENECURECURI  1/2e'u:^2
   1/2CURuCUR`iCURAECURCURCUReYENC,! 1/4YEN?CURE 1/2e'u:^2
   1/2CURuCUR`iCURAECURCURCURECURCURYENC,!
   1/4YEN?CURNOTCUR-c-CUReCURICUREAD-CUR.!-c-
   YEN^1YEN?YENAYEN-YEN>>YENDEGYENaYENoYENECURIYENeYENoYEN?YENCURYEN`aYEN^1YEN?YENAYEN-CURoEY>>yCUR.CURTHCUR^1!-L-
   CURUCURECURoCURECURIYENTHYEN.YENoCURC,CURI!-c-YEN *YENiYEN>>YEN^1CURNOT
   1/4A^1OCUR^1CUReCURECURECURaCURE!-c- YEN<<!
   1/4YENIYENeCURECUReCURACURAEYEN^1YEN?YENAYEN-YEN>>YENDEGYENaYENoYENECURI
   1/4<<AEDEGAA-aCURE^3EA:YENCURuCUR`iCURTHCUR^1!-L- YEN
   *YENiYEN>>YEN^1CURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURECUReCUReYENC,!
   1/4YEN?YEN>>YENDEGYENaYENoYENECURo^3EA:YENCUR^1CURe>>o:CURNOT^2A:C,
   1/2CURC,CUR^1CURNOT!-c-
   YEN>>YENDEGYENaYENoYENECURIAEaIAECURNOTYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUR<<CUReCURIYENC,!
   1/4YEN?CURC,CUR-c-CURe 3/4`i^1c,!-c-CUR-c-CUReCURCURCURI
   YENC,YEND-YENAYENDEG>>thCURE,ACUReYEN *YENiYEN>>YEN^1CURICUR
   1/2CURIYENAEYENYEN^1YENEYEN>>YENDEGYENaYENoYENECURIYENuYENCURYEN-oCURoEN^1^1CUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   >>OYEN *YENiYEN>>YEN^1CURIYEN>>YENDEGYENaYENoYENECURI
   1/2e'u:CURIAEaIAECURI?AEYEN
   *YENiYEN>>YEN^1CURIYEN>>YENDEGYENaYENoYENECURIYEN^3YENO! 1/4CURC,CUR^1!-L-

   YEN *YENiYEN>>YEN^1YEN-c-YENEYEN`iYEN^1P:o'O:CURIA'AEaIAECURIYEN
   *YENiYEN>>YEN^1CURNOT 1/4A^1OCUR^1CUReCURICURECURIENOTI
   *CURNOTCUR-c-CUReCURTHCUR>>CURo!-L- YEN
   *YENiYEN>>YEN^1CURNOTYENaYENCURYENoYENaYENaYENeCURECUR-aCURCURCURAEEY>>yCURuCUR`iCURAECURCURCURECURCURYEN-c-YENEYEN`iYEN^1P:o'O:CURIDEG`iEoCURo>>^2
   3/4ECUR^1CURe 3/4`i^1c,!-c-
   YEN.YEN^1YENAEYEN`aCURIYENaYENCURYENoYENaYENaYENe!
   1/4CUR<<CUReYENaYENaYENeCURIAaeCURIENOTI *CURE 3/4d-EoCURo YENU! 1/4YEN,
   CURECURA:CUR+-CURTHCUR^1!-L- YEN.YEN^1YENAEYEN`aYENeYEN 1/2!
   1/4YEN^1CURNOTEOACUR^1CURe 3/4`i^1c,!-c-YEN.YEN^1YENAEYEN`aCURIIo/IN^2A:C,
   1/2CURE>>n,>>CURoDEGY>>yCUR^1CUReCUR?CURaCURE2YEN`iYENUYENeCURIYEN-c-YEN
   *YENi! 1/4YENACURoCUR.CURTHCUR^1!-L-
   AANOTAAUCURIIICURIYENaYENaYENeCURNOTIo/IN^2A:C, 1/2CURE
   3/4`i^1c,CURC,CUR^3CUR`iCUReCURI>>n,>>CURNOT-oC,P:a>>EINCURuCUR`iCURAECURCURCURECURCUR
   3/4`i^1c,!-c- YEN.YEN^1YENAEYEN`aCURIYEN
   *YENiYEN>>YEN^1CUR<<CUReYENaYENaYENeYENeYEN 1/2!
   1/4YEN^1CURo^2oEu:CUR.CURTHCUR^1!-L- YENaYENaYENe! 1/4EOACURNOT?
   1/4^1iCURACURACUR? 3/4`i^1c,!-c-YEN.YEN^1YENAEYEN`aCURIYEN
   *YENiYEN>>YEN^1CURIA' 3/4d-P:.CURo-L-^2 1/4!YENYENaYENAYEN.YENaaCURI
   YEN^1YENiYENAYEN * CUREIeCUReCURTHCUR^1!-L- YENU! 1/4YEN,YENoYENDEG CURE
   YEN^1YENiYENAYEN *
   CURI,o'^1CURIYEN.YEN^1YENAEYEN`aCURECUReCURACURAE^1OCURiCUR`iCUR?!-c-YEN
   *YENiYEN>>YEN^1CUREI,uCURC,CUR^1!-L- YEN *YENiYEN>>YEN^1CURI 1/4A^1O+-c,
   1/2oCURECUR.CURAEI 1/2'u:CURuCUR`iCUR?
   3/4IeCURIYENaYENaYENeIo/INCURECURA:CURCURCURAEYEN.YEN^1YENAEYEN`aCURE
   1/2o,ACUR^1CUReCUR<<CURaCUR.CUR`iCURTHCUR>>CURo!-L-

  2.5.1. BSDYENaYENaYENe'EIyAss. *CURI.eA:e

   AACURI^1CURCURYEN-c-YENEYEN`iYEN^1P:o'O:CURIYENuYENY! 1/4YENE!-c-
   YENaYENaYENeYENTHYENAYEN *YENOYEN!YENCURYENe!-c-P:|IYENaYENaYENeCURI!-c-
   4.2BSD CUREI *uaCURuCUR`iCUR?CURaCURICURIDEG`iCURA:CURC,CUR.CUR?!-L-
   AEEI(c)CUR.CUR?YEN *YENiYEN>>YEN^1.^2CURNOTYEN
   *YENiYEN>>YEN^1CURIYEN-c-YENEYEN`iYEN^1P:o'O:CURoYENOYEN!YENCURYENeCUREYENTHYENAYENOYENoYENDEGCUR.!-c-
   CUR 1/2CUR`iCURIP:|ICURo^2A:C, 1/2CURECUR^1CURe mmap
   CURE,AECURD-CUR`iCUReYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURNOTuNOTA:eCURuCUR`iCURTHCUR.CUR?!-L- E-L-?oCURIYEN
   *YENiYEN>>YEN^1CURNOTAE+-CUR,YENOYEN!YENCURYENeCUREYEN
   *YENiYEN>>YEN^1CURIYEN-c-YENEYEN`iYEN^1P:o'O:CURoYENTHYENAYENOYENoYENDEGCUR.CUR?
   3/4`i^1c,!-c- DEG`iCURA:CURIYEN
   *YENiYEN>>YEN^1CURNOTYENOYEN!YENCURYENeCUREYENTHYENAYENOYENoYENDEGCURuCUR`iCUR?YEN-c-YENEYEN`iYEN^1P:o'O:CURIDEG`iEoENOTCUREAD-CUR.CURAE
   ^2ACUR"CUR?EN^1^1CURI!-c-A:I 3/4iCURIYENOYEN!YENCURYENeCURNOTCUR
   1/2CUR|CURC,CUR-c-CUReCURICUREAE+-II!-c-
   AE+-CUR,EoENOTCURoYENTHYENAYENOYENoYENDEGCUR.CURAECURCURCUReA 3/4CURIYEN
   *YENiYEN>>YEN^1CURECURaE?+-C,CURuCUR`iCURTHCUR^1!-L-
   CUR.CUR<<CUR..eP:E!-c-4.2BSDCURI mmap YENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURo'THCURTHCURECURCUR.ACURC,YENeYENe!
   1/4YEN^1CURuCUR`iCURTHCUR.CUR?!-L- CUR^3CUR`iCURIYENIYENAYENEYENi!
   1/4YEN-CURICUReCUR|CUREA 3/4CURIu!C, 1/2CURo 1/4A, 1/2CUR^1CUReEyCURNOT
   1/2AAI *CURC,!-c- >>th'O:AA-aCUREI
   3/4IuCURNOTCURECUR<<CURACUR?CUR<<CUReCURC,CUR^1!-L-

   mmap YENCURYENoYEN?YENOYENS:! 1/4YEN^1CURI^3<<E-CURI!-c-4.3BSD
   CURI-oiP:ECURI'O:CURaA^3CUR+-CUReCUR`iCURTHCUR.CUR?!-L- 40 
   1/4OCURoA:P:CUR"CURe^2n 1/4OCURE,|uaeYENDEGYENe! 1/4YEN *CURNOT!-c-
   Berkeley Software Architecture Manual [McKusick et al, 1994]
   CUREu-oU:CURuCUR`iCUR?YEN-c-!
   1/4YENYENAEYEN-YENAYENaCURI^2thA:uEC,CURo-oo:A:eCUR^1CUReuA:IACURE>>^2^2ACUR.!-c-
   CURCURCUR-CURA:CUR<<CURI'eP:ECURICUR
   1/2CURI^2thA:uEC,CURIYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURo
   1/4AAoCUR.CURTHCUR.CUR? [Gingell et al, 1987]!-L-

   CUR.CUR<<CUR.!-c-CURTHCUR?CURaCURa:>>th'O:AA-aCUREIa:AeCURECUReCURe 4.3BSD
   CURO/CURI mmap YENCURYENoYEN?YENOYENS:! 1/4YEN^1CURI
   1/4AAoCURI,<<A-:CUReCUR`iCURTHCUR.CUR?!-L- CURaCURACURiCURo'uA,CURI 4.3BSD
   ^2 3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURECUR 1/2CURIYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURoAECURss^1thCUR`aCUR^3CURECURI ^2A:C,
   1/2CURACURACUR?CURICURC,CUR^1CURNOT!-c-4.3BSD CURI^2
   3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURI 1/4AAoCURI 10
   C,-P:aCUR-ADEGCURICURaCURICURC,CUR-c-CURACUR?CUR?CURa!-c-^3<<E-
   1/4OCUR?CURACURICUR
   1/2CUR`iCURoAECURss^1thCURTHCURECURCURCUR^3CURECURE.eA:eCUR.CUR?CURICURC,CUR^1!-L-
   4.3BSD CURI^2 3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURIYENi!
   1/4YEN<<YENeCUREAU:A^3CURuCUR`iCUR?YENC,YEN-L-YEN^1YEN-AoAO:CURI^1aA(R)!|Ac,IAEII!|DEGA^2ACURC,!-c-
   YEN^3YENoYENOYENaa! 1/4YEN?CURIYENaYENaYENeCURI
   3/4(R)IAEII!|^1a^2ACURC,CUR-c-CUReCURECURCURCUR|^2
   3/4A:eCURE'd-CURAACURCURCURAEAss. *CURuCUR`iCURAECUR-aCURe!-c- CUR
   1/2CURICUR?CURa!-c-CUR 1/2CURIAss.
   *CURIYENaYENaYENeIo/INIICURoAaIoCURC,CURCUReAaaCURiCUReCURE I
   3/4ENOTCUREYENC,YEN-L-YEN^1YEN-YEN-c-YEN-YEN>>YEN^1CURoA,A(R)CUR.CURAECUR.CURTHCUR|CURaCURICURC,CUR.CUR?!-L-
   CURTHCUR?!-c-CUR^3CURI 1/4AAoCURI VAX CURIYENaYENaYENe'EIyYENI!
   1/4YENEYEN|YENS:YEN-c-CUREP:-CUR-DEGIA,CUR^1CUReCURaCURICURC,!-c- A
   3/4CURIYEN^3YENoYENOYENaa! 1/4YEN?YEN-c-!
   1/4YENYENAEYEN-YENAYENaCURO/CURIDEGU:?-c-CURNOT-oCURAEnCURC,CUR.CUR?!-L-
   -oC,,aaCURECURaCUR|DEG`iCURA:EOCUR+-^2ACUR"CUReCURECURe!-c-CUR^3CURI^2
   3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURI , 1/2-ossEauUCURNOTCUR^1CUR^1CURss
   1/2AAI *CURECURECURACURAECURCURAECURCURCUReI(c).e^1c,YENTHYENeYENAYEN
   *YENiYEN>>YENAYENuCURE AD-+-thCUR^1CUReCUReCUR|CUREAss.
   *CURuCUR`iCURAECURCURCURECUR<<CURACUR?CURICURC,CUR^1!-L-

   ,AACURCUR^2 3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURI
   1/4AAoCURo^2thIECUR.CUReCUR|CURECURCURCUR|>>iCURssCURI!-c-
   CURTHCUR^1CURTHCUR^1
   1/4-oC,OCURNOT+-?I?CURAACUR+-CUReCUR`iCUR?CUReCUR|CURE>>
   *CURiCUR`iCURTHCUR.CUR?!-L- CUR
   1/2CURIDEG`iEyCURC,!-c-'DEGA'CURE?.CUR.CURCURAss.
   *CURIAc,IAEIIYENaYENaYENeCURoIo/INCUR.!-c-
   YENC,YEN-L-YEN^1YEN-CURO/CURIYENC,! 1/4YEN?AA 3/4A-:CURoA:a,-oCUR.!-c-
   YENTHYENeYENAYEN
   *YENiYEN>>YENAYENuCURC,AEDEG-oiCUR^1CUReCUR^3CURECURNOTCURC,CURCUReC,
   1/2IICURo>>yCURACURAECURCURCURTHCUR.CUR?!-L- CUR 1/2CURI.e^2I!-c-^2
   3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURI 4.4BSD
   CURC,'DEGA'CUREAO:CUR'^1CUR"CUReCUR`iCUReCUR^3CURECURECURECURACUR?CURICURC,CUR^1!-L-
   4.4BSD ^2 3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURI Mach 2.0 VM
   YEN.YEN^1YENAEYEN`a [Tevanian, 1987] CURoYENU! 1/4YEN^1CURE!-c-Mach 2.5
   CURE Mach 2.0 CURI^2thIECURo-oICUReAEthCUR`iCUR?CURaCURICURC,CUR^1!-L-
   CUR^3CURI 1/4AAoCURI!-c- YENaYENaYENeP:|ICURI,uI"CURNOTIECUR-u!
   1/4iDEGIA,EoENOTCUREu!
   1/4iEoDEGIA,EoENOTCURNOTCURCUR`iCURCURCUREENOTIYENCURuCUR`iCURAECURCURCURAE!-c-
   (, 1/2-ossCURI>>ECURiCUR`iCURAECURCURCURTHCUR>>CURoCURNOT)
   YENTHYENeYENAYEN
   *YENiYEN>>YENAYENuCUREAD-+-thCUR.CURAECURCURCUReCURECURCURCUR|AEAA:S:CURo>>yCURACURAECURCURCURTHCUR^1!-L-
   ^3AEYEN *YENiYEN>>YEN^1CURI
   1/4<<ENOTCURIYEN-c-YENEYEN`iYEN^1P:o'O:CURICUR-c-CUReCURaeCUReEoENOTCURoYENOYEN!YENCURYENeCUREYENTHYENAYENOYENoYENDEGCUR^1CUReCUR^3CURECURNOTCURC,CUR!-c-
   ,ssCURCURCUREAE+-DEG`iCURIYENOYEN!YENCURYENeCUREYEN-c-YENEYEN`iYEN^1P:o'O:CURoYENTHYENAYENOYENoYENDEGCUR^1CUReCUR^3CURECURC,!-c-
   YEN
   *YENiYEN>>YEN^1'O:CURC,YEN-c-YENEYEN`iYEN^1P:o'O:CURIDEG`iEoCURoP:|ICUR^1CUReCUR^3CURECURNOT^2A:C,
   1/2CURECURECUReCURTHCUR.CUR?!-L- DEG`iCURA:CURIYEN
   *YENiYEN>>YEN^1CURNOT^2ACUR"CUR?EN^1^1CURIA 3/4CURIYEN
   *YENiYEN>>YEN^1CURIYEN-c-YENEYEN`iYEN^1P:o'O:CURECURaE?+-C,CURuCUR`i!-c-
   YENTHYENAYENOYENoYENDEGCURuCUR`iCUR?YENOYEN!YENCURYENe 1/4<<?ECURECURa
   1/2nCUR^1thCURTHCUR`iCURTHCUR^1!-L- CURTHCUR?!-c-YEN
   *YENiYEN>>YEN^1CURIYENOYEN!YENCURYENeCURoYEN *YENeYENCURYENU!
   1/4YENEYENTHYENAYENOYENoYENDEGCUR^1CUReCUR^3CURECURa^2A:C,
   1/2CURC,CUR^1!-L- YEN *YENeYENCURYENU!
   1/4YENEYENTHYENAYENOYENoYENDEGCURECURI!-c-YEN
   *YENiYEN>>YEN^1CURNOT^2ACUR"CUR?EN^1^1CURNOT!-c- CUR
   1/2CURIYENOYEN!YENCURYENeCURoYENTHYENAYENOYENoYENDEGCUR.CURAECURCURCUReA
   3/4CURIYEN
   *YENiYEN>>YEN^1CUR<<CURe,<<CUR"CURECURCURCUReCUR|CURECUR.CUR?CURe!-c-
   YENOYEN!YENCURYENe 1/4<<?ECURE
   1/2nCURIaCURuCUR`iCURECURCURCUReCUR|CURECUR^1CUReCURaCURICURC,CUR^1!-L-

   ^2
   3/4AUu^2+-YEN.YEN^1YENAEYEN`aCURIEuCUR"CUReCURaCUR|DEG`iCURA:CURIIa:AeCURI!-c-
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURNOTE-^1OCURuCUR`iCUR?>>thCUREYEN<<!
   1/4YENIYENeCURE 3/4d-EoCURoAAICUR^1EyE!CURC,CUR^1!-L- 4.4BSD CURC,CURI!-c-
   3/4iCUREYEN *YENiYEN>>YEN^1CURIYEN-c-YENEYEN`iYEN^1P:o'O:CUR<<CUReYEN<<!
   1/4YENIYENeAEaCURIYEND-YENAYENOYEN!CURE YENC,! 1/4YEN?CURoYEN^3YENO!
   1/4CUR.CURAECURCURCURTHCUR.CUR?!-L- Ac,IAEIICURIYENC,! 1/4YEN?CURoAA
   3/4A-:CUR^1CUReAEECURss
   1/2nCURA`a-oiCURNOTE-A,CUR^1CUReCUR^3CURECURo^1ICUR"CUReCURE!-c-
   CUR^3CURIYEN^3YENO! 1/4CURI
   1/4A^1OCURECURI>>th'O:CURNOTCUR<<CUR<<CURe^2A:C,
   1/2ACURNOTCUR-c-CUReCURTHCUR^1!-L- YEN^3YENO! 1/4CURo 1/4A,
   1/2CUR^1CUReCURaCUR|DEG`iCURA:CURIEyE!CURECUR.CURAE!-c- YEN
   *YENiYEN>>YEN^1CURIYENaYENaYENeCURoYEN<<!
   1/4YENIYENeAEaCURE-oAEYENTHYENAYENOYENoYENDEGCUR^1CUReEyE!CURNOTCUR-c-CUReCURTHCUR^1!-L-
   CUR.CUR<<CUR. 4.4BSD YEN<<! 1/4YENIYENeCURI!-c- DEGE^2
   1/4CURIIyI^3CUR<<CURe 3/4iCUREYENC,! 1/4YEN?CURoYEN^3YENO!
   1/4CUR.CURTHCUR^1!-L-

     * CURUCURECURoCURECURI 3/4`i^1c,YENae! 1/4YENP:YENC,! 1/4YEN?CURIYENU!
       1/4YEN,P:^3|CUREYEN-c-YENeYENCURYENoCURuCUR`iCURAECURCURCURTHCUR>>CURoCUR.!-c-
       YENI! 1/4YENEYEN|YENS:YEN-c-YENU!
       1/4YEN,A:^1CURIC,U:?oCURC,CURaCUR-c-CUReCURTHCUR>>CURo!-L-

     * CUR 1/2CURIYENU! 1/4YEN,CURoYEN
       *YENiYEN>>YEN^1CURNOTC,E'thCUR.CURAECUR.CURTHCUR|CURE!-c- YEN<<!
       1/4YENIYENeCURNOTYENU! 1/4YEN,CURo>>^2
       3/4ECURC,CURCURECUR-CURECURACURAECUR.CURTHCURCURCURTHCUR^1!-L- YEN
       *YENiYENDEGYENeYEN`aCURIAaeCURECURI!-c-YEN<<!
       1/4YENIYENeAEaCURIYEND-YENAYENOYEN!CURE  1/2nCUR<<CUR`iCUR?YENC,!
       1/4YEN?CURNOT>>A:CURACURAECURCURCUReCUR^3CURECURoAUA:eCUR.CURAECURCURCUReCURaCURICURNOTCUR-c-CUReCURTHCUR^1!-L-

     * (, 1/2-ossCURI 4.4BSD YEN>>YENTHYENoYENAEYEN-L-YEN-YEN^1CURC,^2A:C,
       1/2CURECUReCUR|CURE) YEN *YENiYEN>>YEN^1CURNOTYENU!
       1/4YEN,CURIYEN^3YENO! 1/4CURo>>yCURAECURe 3/4`i^1c,!-c- CUR
       1/2CURIYENU! 1/4YEN,CURIENOTCUR-oYEN^3YENO!
       1/4YEN-aYENoYENeYENCURYENE(copy-on-write)
       CURECURECURACURAECURCURCURTHCUR^1!-L- YEN^3YENO!
       1/4YEN-aYENoYENeYENCURYENECURIYENU! 1/4YEN,CURECURI!-c-
       AEECURss^1thCURssA`iINCUREAssA:eCUR^1CUReCUR^3CURECURC,
       1/2nCUR^1thCURssCUREAD-CUR^1CUReEY,iu!C, 1/2CURoI,u^2 1/2CUR.CUR?YENU!
       1/4YEN,CURICUR^3CURECURC,CUR^1!-L- YEN *YENiYEN>>YEN^1CURNOTCUR
       1/2CURIYENU! 1/4YEN,CURoEN^1^1CUR.CUReCUR|CURECUR^1CUReCUREYEN<<!
       1/4YENIYENeCURI 1/2nCUR^1thCURssIa^3DEGCURo,! 1/2D-CUR.CURTHCUR^1!-L-
       CUR 1/2CURI-oYYEN<<! 1/4YENIYENeCURI!-c-YEN
       *YENiYEN>>YEN^1CURNOTEN^1^1CURC,CURCUReCUReCUR|CURECUR 1/2CURIYENU!
       1/4YEN,CURIYEN^3YENO! 1/4CURo-oiA(R)CUR.CURTHCUR^1!-L-
       >>A:C,DEGCURECURNOTCURe!-c-YEN *YENiYEN>>YEN^1CURIA:I
       3/4iCUR^1CURDEGCURE 1/2D-IIYEND-YENAYENOYEN!CURE?.CUR.CURCURYENC,!
       1/4YEN?CURo 1/2nCUR^3CUR|CURECUR^1CUReCUR?CURa!-c- .eP:EYENC,!
       1/4YEN?CURIYEN^3YENO!
       1/4CURNOTE-A,CUR.CURAECUR.CURTHCURCURCURTHCUR^1!-L-

     * YENU! 1/4YEN,CURNOT?.CUR.CURCUR^2
       3/4AUYENaYENaYENeYEN-c-YENEYEN`iYEN^1CURE-oAEYENTHYENAYENOYENoYENDEGCURuCUR`iCURe-oY!-c-
       CURUCURECURoCURECURIYENaYENaYENe'EIyYENI!
       1/4YENEYEN|YENS:YEN-c-CURC,CURI!-c- YENI!
       1/4YENEYEN|YENS:YEN-c-YEN-c-YENEYEN`iYEN^1EN'^1YENYENaYENAYEN.YENaaCURIDEG`iEoCURoC,E'thCUR^1CUReENOTI
       *CURNOTCUR-c-CUReCURTHCUR^1!-L- A?CUR-CURI
       3/4`i^1c,!-c-CUR^3CURIYENYENaYENAYEN.YENaaCURIC,E'thCURI>>th'O:CURNOTCUR<<CUR<<CUReCUR?CURa!-c-
       4 CUR<<CURe 8 YENYENiYEND-YENCURYENECUReCURe 3/4(R)CURuCURCURYENC,!
       1/4YEN?YENO:YENiYENAYEN-CUREAD-CUR.CURAECURI!-c- YEN^3YENO!
       1/4CUR^1CUReCUReCUReCURa-oAEYENTHYENAYENOYENoYENDEGCUR^1CUReEyCURNOT
       1/4A 1/4AAA-aCUREAUCURCUR!-c-
       CURECURCURCUR|.e^2ICURECURECUReCURTHCUR^1!-L-

   YENaYENaYENeYENTHYENAYENOYENoYENDEGCURI-oC,CURaAc,CURCUREIU:AA-aCURI!-c-
   ud-Ac,CUREYENOYEN!YENCURYENeCURO/CURIYEN-c-YEN-YEN>>YEN^1CURE!-c- YEN
   *YENiYEN>>YEN^1'O:CURIAc,IAEIICURIYENC,! 1/4YEN?AA 3/4A-:CURECURCURCUR|I
   *uaCURE+-thCUR"CUReCUR^3CURECURC,CUR^1!-L- mmap YENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURI!-c- I 3/4EyCURII *uaCURoYEN^3YENO!
   1/4CURo^1OCURECUR|CUR^3CURECURECUR- 1/4A,
   1/2CUR^1CUReDEG`iCURA:CURIEyE!CURoA:oP:!CUR.CURTHCUR^1!-L-

  2.5.2. YEN<<! 1/4YENIYENeAEaEoCURIYENaYENaYENe'EIy

   YEN<<! 1/4YENIYENeCURIDEG`iCURA:CURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI'O:CURACUR+-ENOTI
   *CURECURuCUR`iCUReYENaYENaYENeCURI^3a:CUReAAo:CURAECURoENEECURE^1OCURECURCURCURTHCUR^1!-L-
   YENae! 1/4YENP:YEN *YENiYEN>>YEN^1CURC,CURICUR-aCUR 1/2CUReCUR-!-c- CUR
   1/2CURICUReCUR|CUREA>>'u:'O:>>ECURiCUR`iCUReYENaYENaYENeCURIYENeYENoYEN?YENCURYEN`aYEN^1YEN?YENAYEN-CURE^3a:CUReAAo:CURAECUReCUR`iCUReCURC,CUR.CURc,CUR|!-L-
   YEN<<! 1/4YENIYENeCURIYENeYENoYEN?YENCURYEN`aYEN^1YEN?YENAYEN-CURECURI
   3/4aa,ACURNOTCUR-c-CUReCUR?CURa!-c- 
   3/4(R)CURuCURaCURIYENaYENaYENeYENO:YENiYENAYEN-CURACURECUR.CURAECURaYEN^1YEN?YENAYEN-CUREYENaYENaYENeCURo^3a:CUReAAo:CURAECUReCUR^3CURECURICURC,CURCURTHCUR>>CURo!-L-
   CUR 1/2CURICUR?CURa!-c- CUR
   1/2CURICUReCUR|CUREYENaYENaYENeCURICURaCURACUREAEDEGAA-aCUREu!C,
   1/2CURoINCURCURCURAE^3a:CUReAAo:CURAECUReENOTI
   *CURNOTCUR-c-CUReCURTHCUR^1!-L-
   CUR?CURECUR"CURD-!-c-YEN.YEN^1YENAEYEN`aCURNOTYENNYEN^1I 3/4CURI^2o
   1/4aCURo^1OCURECUR| 3/4`i^1c,!-c- YENNYEN^1I
   3/4CURoEY>>yCUR^1CUReCUR?CURaCURE 1
   YENYENiYEND-YENCURYENECURIYEND-YENAYENOYEN!CURo^3a:CUReAAo:CURAECUReENOTI
   *CURNOTCUR-c-CUReCURTHCUR^1!-L-
   CUR.CUR<<CUR.YENaYENaYENeYENO:YENiYENAYEN-CURIDEG`iCURA:CURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCUReCUReCURa
   A:^1CUR->>yA^3CUR.CURAECURCURCURECUR+-CUR`iCURD-CURECUReCURECURCURCUR?CURa!-c-
   YEN^1YEN?YENAYEN-CUREP:oCURCURNOTCUR-c-CURACUR?CURECUR.CURAECURa!-c-CUR
   1/2CUR^3CURE^3a:CUReAAo:CURAECUReCUR^3CURECURICURC,CURCURECURCURCURC,CUR.CURc,CUR|!-L-
   CUR^3CUR|CURCURCUR|IaCURIDEG`iCURA:CURE!-c-YENIYENAYENEYENi!
   1/4YEN-CURNOTAU:A^3CURuCUR`iCURAECURCURCURe'O:DEGY>>yCUR.CURAECURCURCUReENOTI
   *CURNOTCUR-c-CURe YEN
   *YENiYENEYEN^3YENeA(c),aeYENO:YENiYENAYEN-CURNOTCUR-c-CUReCURTHCUR^1!-L-

   YEN<<!
   1/4YENIYENeAEaCURIAEDEGAA-aCUREYENaYENaYENe^3a:CUReAAo:CURAECUREAD-CUR^1CURe
   1/4uI *CURI!-c- YENu!
   1/4YENOYEN^1CURNOTA:E^2ACURuCUR`iCUReCURECURA:CUR`iCURAEAy^2ACUR.CURAECURCURCURTHCUR^1!-L-
   EAEINCURIYENaYENaYENeYEN-c-YENiYEN+-! 1/4YEN?CURNOTCUR-c-CUR`iCURD-!-c-
   YEN<<! 1/4YENIYENeAEaEoCURIYEN^3! 1/4YENECURo
   1/2nCUR--oYCURIE-L->>"CURuCURoA:a,-oCUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   CUR 1/2CURICUR?CURa 4.4BSD YEN<<!
   1/4YENIYENeCURC,CURI!-c-YEN.YEN^1YENAEYEN`aCURICUR-c-CUReCURaeCURe
   3/4`iIICURC,Io/IN^2A:C, 1/2CURE A+-DEG`iCURIYENaYENaYENeYEN-c-YENiYEN+-!
   1/4YEN?CURoE-:CUR"CURAECURCURCURTHCUR^1!-L- CUR^3CUR`iCURI!-c- YEN-c-YEN
   *YENeYEN+-! 1/4YEN.YENc,YENoYEN
   *YENiYENDEGYENeYEN`aINCURIYENaYENaYENe^3a:CUReEOCUR+-CURo 1/4A,
   1/2CUR^1CUReCUR?CURaCURE C YENeYENCURYENO:YENeYENeYENe!
   1/4YENAYENoCURE'THCURTHCUR`iCURAECURCURCURe malloc CURE free
   CUREI`a>>-:CUR.CUR?YENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURo>>yCURACURAECURCURCURTHCUR^1 [McKusick & Karels, 1988]!-L-
   CUR^3CURI^3a:CUReEOCUR+-YENe! 1/4YENAYENoCURI C
   YENeYENCURYENO:YENeYENeYENCURYENoYEN?YENOYENS:! 1/4YEN^1CUREAE+-II!-c-
   DEGu?oCURECUR.CURAEENOTI
   *CUREYENaYENaYENeYENuYENCURYEN-oCURo>>O/A:eCUR.CURTHCUR^1!-L-
   ^3a:CUReAAo:CURAECUReYENaYENaYENeYENuYENCURYEN-oCURI
   3/4aa,ACURICUR-c-CUReCURTHCUR>>CURoCURNOT!-c-
   ^3a:CUReAAo:CURAECUReCUR`iCUReCURICURIE-aIyYENaYENaYENeCURC,CUR-c-CURe!-c-YENU!
   1/4YEN,CURC,CURICUR-c-CUReCURTHCUR>>CURo!-L- YENaYENaYENe^2oEu:YENe!
   1/4YENAYENoCURI^2oEu:CUR^1CUReYENaYENaYENeCURO/CURIYENYYENCURYENoYEN?CURoDEGu?oCURECURECUReCURTHCUR^1!-L-
   CUR
   1/2CURI-oY!-c-^2oEu:CUR^1CUReYENaYENaYENeYENuYENCURYEN-oCURo>>O/A:eCUR^1CUReENOTI
   *CURICUR-c-CUReCURTHCUR>>CURo!-L-

2.6. I/O YEN.YEN^1YENAEYEN`a

   'd-EU:AA-aCURE UNIX CURI I/O
   YEN.YEN^1YENAEYEN`aYENaYENC,YENeCURI!-c-YENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1CUR-aCUReCURO
   YEN.! 1/4YEN+-YENoYEN.YENaYENeYEN-c-YEN-YEN>>YEN^1CURI^2A:C,
   1/2CUREYEND-YENCURYENEIoCURC,CUR^1!-L- A:I 3/4iCURI UNIX YENae! 1/4YENP:!
   1/4YEN *YENiYEN>>YEN^1CURECURI!-c- YEN-c-YEN-YEN>>YEN^1YENaYEN 1/2YENAYENE
   CURa: YEN^3YENoYENEYENi! 1/4YENeYENO:YENiYENAYEN-
   CURIA,-ossCUR.CURTHCUR>>CURo!-L-

   I/O CURECURuCURTHCURP:CURTHCUREYEN`iYENUYENeCURI^1
   1/2ACURCURo'u:AOCUR^1CUReYEN *YENiYENDEGYENeYEN`aCURI^3AE
   1/4iCUR-c-CUReCURTHCUR^1CURNOT!-c- YEN<<! 1/4YENIYENeCURI I/O CURE^1
   1/2ACURCURo^2YCUR.CURTHCUR>>CURo!-L-
   CUR?CURECUR"CURD-!-c-YENAEYENYEN^1YENEYENOYEN!YENCURYENeCURI^2th^1OE,>>u
   (ASCII LF E,>>u) CURC,P:eAUCUReCUR`iCUR? ASCII E,>>uCURI^1OCURI
   1/2,CURTHCUReCURC,CUR^1CURNOT!-c- YEN<<! 1/4YENIYENeCURICUR
   1/2CURICUReCUR|CURE^1 1/2ACURCURo'O/AICUR.CURTHCUR>>CURo!-L-
   CURUCURECURoCURECURIYEN *YENiYENDEGYENeYEN`aCURECURECURACURAE!-c-
   CUR^3CURIYENaYENC,YENeCURIYENC,! 1/4YEN?YEND-YENCURYENECURIYEN^1YENEYENe!
   1/4YEN`aCURaCUR.CUR-CURI I/O YEN^1YENEYENe! 1/4YEN`a
   CURECUR^1CUR(R)CURTHCUR>>CURo!-L- CUR^3CURICUReCUR|CUREA+-DEG`iCURIYENC,!
   1/4YEN?^1 1/2ACURCURNOT!-c-UNIX CURIYENA:! 1/4YENeYENU!
   1/4YEN^1CURIYEN-c-YEN *YENi! 1/4YENA (tool-based approach) CURo^2A:C,
   1/2CURECUR.CURAECURCURCUReCURICURC,CUR^1[Kernighan & Pike, 1984]!-L-
   CUR-c-CUReYEN *YENiYENDEGYENeYEN`aCURI 1/2D-IIYEN^1YENEYENe!
   1/4YEN`aCURI!-c-A 3/4CURICURUCURECURoCURECURIYEN
   *YENiYENDEGYENeYEN`aCURIAEthII YEN^1YENEYENe! 1/4YEN`aCURECUR.CURAECUR
   1/2CURICURTHCURTHI?CUR"CURe>>o:CURNOTCURC,CURCURTHCUR^1
   (CUR^3CURICUReCUR|CUREAAAAAyAA-aCURE UNIX CURI I/O YEN^1YENEYENe!
   1/4YEN`aCURo!-c-Eighth Edition CURIYEN^1YENEYENe! 1/4YEN`a I/O
   YEN.YEN^1YENAEYEN`aCURa:!-c- System V Release 3 CURI STREAMS
   CURE-o(R)AE+-CUR^1CURUCURCURC,CURICUR-c-CUReCURTHCUR>>CURoCURNOT!-c-
   CURECURACUReCURIYEN^1YENEYENe! 1/4YEN`aCURaAAAAAyAA-aCURE I/O
   YEN^1YENEYENe!
   1/4YEN`aCUREAE+-CUR,CUReCUR|CUREYEN-c-YEN-YEN>>YEN^1CUR^1CUReCUR^3CURECURNOT^2A:C,
   1/2CURC,CUR^1)!-L-

  2.6.1. u 1/2O>>OCURE I/O

   UNIX CURIYEN *YENiYEN>>YEN^1CURI!-c-I/O YEN^1YENEYENe! 1/4YEN`aCURo>>^2
   3/4ECUR^1CUReCURICURE u 1/2O>>O(descriptor)CURo>>EINCUR.CURTHCUR^1!-L- u
   1/2O>>OCURI open CURTHCUR?CURI socket YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURECUReCURe 1/4eAEACURuCUR`iCUReEa:^1aeIuCUR.CURI
   3/4(R)CURuCUREADEG?oCURC,CUR^1!-L- openYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI!-c- DEGu?oCUREYENOYEN!YENCURYENeI 3/4CUR-aCUReCUROuo:^2A:YENa!
   1/4YENECURoCURECURe!-c- CUR 1/2CUR`iCUR
   3/4CUR`i^3<<CUR-YENOYEN!YENCURYENeCUR-aCUReCURO!-c-YENa! 1/4YENE
   (AEECURss^1thCURss!-c- 1/2nCUR^1thCURssCURTHCUR?CURIAEECURss 1/2nCUR)
   CURo>>O/A:eCUR.CURTHCUR^1!-L- open YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI!-c-?.CUR.CURCURP:oCURIYENOYEN!YENCURYENeCURI-oiA(R)CURECURa>>EINCURC,CURCURTHCUR^1!-L-
   readCUR-aCUReCURO writeYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURou
   1/2O>>OCUREAD-CUR.CURAE>>EINCUR.!-c- YENC,! 1/4YEN?CURIAA
   3/4A-:CURo^1OCURCURCURTHCUR^1!-L- closeYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI!-c-C,CURDEGOCURIu 1/2O>>OCURo^3<<Eu:CUR.CURTHCUR^1!-L-

   u 1/2O>>OCURI!-c-YEN<<! 1/4YENIYENeCURC,YENuYENY!
   1/4YENECURuCUR`iCUReYEN-aYENO:YEN,YENS:YEN-YENECURoE 1/2CUR.CURTHCUR^1!-L-
   4.4BSD CURC,CURI!-c-YENOYEN!YENCURYENe!-c-YENNYENCURYEN *!-c-YEN
   1/2YEN+-YENAYENECURI 3 CURA:CURIYEN-aYENO:YEN,YENS:YEN-YENECURo E
   1/2CUR^1CUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-

     * YENOYEN!YENCURYENeCURI!-c- 3/4-CURECUR-CURECURa 1 ,A:CURII
       3/4ADEGCURo>>yCURA:YEND-YENCURYENEIoCURC,CUR^1!-L-
       YENOYEN!YENCURYENeCURI!-c-CUR^1CURUCURAECURII 3/4ADEGCURoIA
       1/4"AA-aCURE-oi 1/2u:CUR.!-c- CUR 1/2CURIu
       1/2O>>OCURo>>yCURA:CUR^1CURUCURAECURIYEN *YENiYEN>>YEN^1CURNOT
       3/4AIC,CUR^1CUReCURTHCURC,A,-ossCUR.CURTHCUR^1!-L- YEN
       *YENiYEN>>YEN^1CURI!-c-open YEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURECUReCURe!-c- >>O/A:eCURuCUR`iCUR?YENOYEN!YENCURYENeI
       3/4CURo>>yCURA:YENOYEN!YENCURYENeCURIYENOYEN!YENCURYENeu 1/2O>>OCURo
       1/4eAEACUR.CURTHCUR^1!-L- I/O
       YENC,YEND-YENCURYEN^1CURIYENOYEN!YENCURYENeCURECUR.CURAEYEN-c-YEN-YEN>>YEN^1CURuCUR`iCURTHCUR^1!-L-

     * YENNYENCURYEN *CURECURI!-c-
       YENOYEN!YENCURYENeCUREAE+-CUR,CUR-YEND-YENCURYENEIoCURC,CUR^1CURNOT
       I/O YEN^1YENEYENe!
       1/4YEN`aCURECUR.CURAECURICURss>>ECURiCUR`i!-c-A+-DEG`iEy,thCURECURICURss>>ECURiCUR`iCURTHCUR^1!-L-
       YENNYENCURYEN *CURECURII 3/4ADEGCURNOTCURECURCURCURICURC,!-c-open
       YEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURC,CURI^3<<CUR-CUR^3CURECURNOTCURC,CURCURTHCUR>>CURo!-L-
       YENNYENCURYEN *CURo^3<<CUR-CURECURI!-c-pipe YEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURo>>EINCUR.CURTHCUR^1!-L- pipeYEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURI 2 CURA:CURIu 1/2O>>OCURoEO:CUR.CURTHCUR^1!-L-
       CUROCURECURA:CURIu 1/2O>>OCUREAEthIICURuCUR`iCUR?YENC,!
       1/4YEN?CURI!-c- CURaCUR|DEG`iEyCURIu 1/2O>>OCURECUR 1/2CURICURTHCURTH
       1/2c, 1/2o/CURoENCUR"CUR-oCURE 1/2D-IICURuCUR`iCURTHCUR^1!-L- I
       3/4ADEGEOCURYENNYENCURYEN * (FIFO) CURa>>EINCURC,CURCURTHCUR^1!-L- I
       3/4ADEGCURNOTCUR-c-CUReCURICURC,YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a
       3/4aaCUREC,UAO:CURuCUR`i!-c- open YEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURC,YEN-c-YEN-YEN>>YEN^1CURC,CURCUReDEGE^3DEGCURI!-c-
       YENNYENCURYEN *CUREAE+-DEG`iCURIu!C, 1/2CURo>>yCURACURTHCUR^1!-L- FIFO
       CURo>>EINCUR.CURAEYEN *YENiYEN>>YEN^1'O:A:I?(R)CURo^1OCURCURCUR?CURCUR
       3/4`i^1c,CURI!-c- EOEyCURIYEN *YENiYEN>>YEN^1CURNOT FIFO CURo
       1/2nCUR^1thCURssINCURE^3<<CUR!-c-
       CURaCUR|EOEyCURC,CURIAEECURss^1thCURssINCURE^3<<CURCURTHCUR^1!-L-

     * YEN 1/2YEN+-YENAYENECURI!-c- YEN
       *YENiYEN>>YEN^1'O:A:I?(R)CURICUR?CURaCURE>>EINCURuCUR`iCUReYEN-aYENO:YEN,YENS:YEN-YENECURC,!-c-
       YEN 1/2YEN+-YENAYENECURo>>^2 3/4ECUR^1CUReu 1/2O>>OCURo>>yCURA:YEN
       *YENiYEN>>YEN^1CURNOTA,-ossCUR^1CURe'O:CURICURssA,-ossCUR.CURTHCUR^1!-L-
       YEN 1/2YEN+-YENAYENECURI socket YEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURC,-oiA(R)CUR.CURTHCUR^1!-L- socket YEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURI!-c- -oiA(R)CUR.CUR?YEN 1/2YEN+-YENAYENECURIu
       1/2O>>OCURoEO:CUR.CURTHCUR^1!-L-
       CURuCURTHCURP:CURTHCUREA:I?(R)EyE!CURo 1/4A,
       1/2CUR^1CUReCUR?CURaCURE!-c- ^3AE 1/4iCURIYEN
       1/2YEN+-YENAYENECURNOTCUR-c-CUReCURTHCUR^1!-L-
       CUR?CURECUR"CURD-!-c-?(R)IeACURI^1aCURCURYENC,! 1/4YEN?AA
       3/4A-:CURoIU:AA-aCURECUR.CUR?YEN 1/2YEN+-YENAYENE!-c- YENaYENAYEN>>!
       1/4YEN,CURI 1/2c,EO:CURoEY>>yCUR^1CUReYEN 1/2YEN+-YENAYENE!-c-
       YENaYENAYEN>>! 1/4YEN,CURIP:^3|CURoEY,iCUR^1CUReYEN
       1/2YEN+-YENAYENECURECURECURNOTCUR-c-CUReCURTHCUR^1!-L-

   4.2BSD CURC,YEN 1/2YEN+-YENAYENECURNOTAE^3AEthCURuCUR`iCUReCURTHCURC,!-c-
   YENNYENCURYEN *CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURoINCURCURCURAE
   1/4AAoCURuCUR`iCURAECURCURCURTHCUR.CUR?!-L- 4.2BSD
   DEGE^1ssCURC,CURI!-c-YEN 1/2YEN+-YENAYENECURo>>EINCUR.CURAE
   1/4AAoCURuCUR`iCURAECURCURCURTHCUR^1!-L-

   YEN<<! 1/4YENIYENeCURICUR 1/2CUR`iCUR 3/4CUR`iCURIYEN *YENiYEN>>YEN^1CURIu
   1/2O>>OYENAE! 1/4YENO:YENeCURoEY>>yCUR.CURAECUR-aCURe!-c- u
   1/2O>>OCURI^3DEGEoE 1/2, 1/2CURoAEaEoE 1/2,
   1/2CUREEN'^1CUR^1CUReCUR?CURaCUREINCURCURCUReCUR`iCURTHCUR^1 (u 1/2O>>OCUR
   1/2CURICURaCURICURICUR^3CURIYENAE!
   1/4YENO:YENeCURO/CURIYENCURYENoYENC,YENAYEN-YEN^1AICURECUR^1CUR(R)CURTHCUR>>CURo)!-L-
   u 1/2O>>OYENAE! 1/4YENO:YENeCURI!-c-?AEYEN *YENiYEN>>YEN^1CUR<<CURe>>OYEN
   *YENiYEN>>YEN^1CURE.N 3/4uCURuCUR`iCURTHCUR^1!-L- CUR 1/2CURICUR?CURa!-c-u
   1/2O>>OCURI>>^2 3/4EAeCURaAE+-CUR,CUR-.N 3/4uCURuCUR`iCURTHCUR^1!-L- u
   1/2O>>OCURoAEACUReCUR?CURaCURECURI!-c-YEN-aYENO:YEN,YENS:YEN-YENECURo^3<<CURCURCUR?CURe!-c-
   -oiA(R)CUR.CUR?CUReCUR^1CUReDEGE^3DEGCURE!-c- CUR^3CURICUReCUR|CURE?AEYEN
   *YENiYEN>>YEN^1CUR<<CUReCURI.N
   3/4uCURECUReCUReEyE!CURNOTCUR-c-CUReCURTHCUR^1!-L- CURTHCUR? IPC YEN
   1/2YEN+-YENAYENECURo>>EINCUR^1CUR`iCURD-!-c- AE+-DEG`iYENTHYEN.YENo
   3/4aaCURC,AEDEG-oiCUR.CURAECURCURCUReIu'O/.,CUREYEN
   *YENiYEN>>YEN^1'O:CURC,!-c- u 1/2O>>OCURICURa:CUReCURECUReCURNOT^2A:C,
   1/2CURC,CUR^1!-L-

   CUR^1CURUCURAECURII,uCUREu 1/2O>>OCURI!-c-
   YEN-aYENO:YEN,YENS:YEN-YENECURIAeAENOTCUR<<CUReCURIDEGIAO:CURo
   YENOYEN!YENCURYENeYEN-aYENOYEN>>YENAYENE
   CURECUR.CURAEYEND-YENCURYENEA+-DEGICURC,EY>>yCUR.CURAECURCURCURTHCUR^1!-L-
   AEECURss^1thCURssCUR-aCUReCURO 1/2nCUR^1thCURssAEDEG-oiCURI!-c-
   CUR^3CURIYEN-aYENOYEN>>YENAYENEDEGIAO:CUR<<CURe^1OCURiCUR`i!-c- YENC,!
   1/4YEN?CURNOTAA
   3/4A-:CURuCUR`iCUReEeCUREYEN-aYENOYEN>>YENAYENECURIDEGIAO:CURI^1^1?.CURuCUR`iCURTHCUR^1!-L-
   YENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1CURouo:^2A:CUR.CURAECURCURCUReYEN-aYENO:YEN,YENS:YEN-YENECURI
   3/4`i^1c,!-c- YENOYEN!YENCURYENeYEN-aYENOYEN>>YENAYENECURI!-c-lseek
   YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURoIo/INCUR.CURAEDEGU:AEDEGCUR^1CUReCUR^3CURECURaCURC,CURCURTHCUR^1!-L-
   A:I 3/4iCURIYENOYEN!YENCURYENeCURa:CUR-c-CURe
   1/4iCURIYENC,YEND-YENCURYEN^1CURIYENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1^2A:C,
   1/2CURC,CUR^1!-L- YENNYENCURYEN *!-c-YEN
   1/2YEN+-YENAYENECURIYENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1CURC,CURCURTHCUR>>CURo!-L-

   YEN *YENiYEN>>YEN^1CURNOT 1/2-aI>>CUR^1CUReCURE!-c- YEN<<!
   1/4YENIYENeCURICUR 1/2CURIYEN
   *YENiYEN>>YEN^1CURE>>EINCURuCUR`iCURAECURCURCUR?CUR^1CURUCURAECURI
   1/4+-EI>>OCURo^2o 1/4yCUR.CURTHCUR^1!-L- YEN
   *YENiYEN>>YEN^1CURNOTYEN-aYENO:YEN,YENS:YEN-YENECURO/CURI>>^2
   3/4ECURoEY>>yCUR.CUR?CURTHCURTH 1/2-aI>>CUR.CUR? 3/4`i^1c,CURI!-c-
   YEN-aYENO:YEN,YENS:YEN-YENEYENTHYENI!
   1/4YEN,YENaCUREA:IAICUR.!-c-YENOYEN!YENCURYENeCURI-oi 1/2u:!-c- YEN
   1/2YEN+-YENAYENECURI^3<<Eu:CURECURECURIENOTI *CUREYEN-YENe!
   1/4YENoYEN-c-YENAYEN *CURo^1OCURiCUR>>CURTHCUR^1!-L-

  2.6.2. u 1/2O>>OCURI'EIy

   CURUCURECURoCURECURI 3/4`i^1c,!-c-YEN
   *YENiYEN>>YEN^1CURNOTu-AEDEGCURuCUR`iCUReCURE!-c- 3 CURA:CURIu
   1/2O>>OCURNOTCUR^1CURC,CURE^3<<CUR<<CUR`iCURAECURCURCURTHCUR^1!-L- CUR
   1/2CUR`iCUReCURIu 1/2O>>OCURI!-c-0!-c-1!-c-2 CURC,!-c-CUR 1/2CUR`iCUR
   3/4CUR`iDEG`iEIAA-aCURECURI!-c- E, 1/2`aAEthII!-c- E, 1/2`a 1/2D-II!-c- E,
   1/2`aYEN"YENe! 1/4 1/2D-II
   CURECUR.CURAEAICUReCUR`iCURAECURCURCURTHCUR^1!-L- A:I
   3/4iCUR^3CUR`iCUReCURI 1/4+-EI>>OCURI!-c- YENiYENDEGYENCURYENoYEN
   *YENiYEN>>YEN^1CURECUReCUReYENae! 1/4YENP:CURIA
   1/4Eo:CURE^3a:CUReAAo:CURAECUReCUR`iCURAECURCURCURTHCUR^1 (14.6 Aa>>^2
   3/4E)!-L-CUR^1CURECURiCURA!-c-YEN! 1/4YENU:!
   1/4YENECUR<<CUReCURIAEthIICURoE, 1/2`aAEthIICURECUR.CURAE 1/4oCUR+-
   1/4eCURe!-c- E, 1/2`a 1/2D-IICURO/CURI 1/2D-IICURIA 1/4Eo:CURI^2eIICUREE
   1/2 1/4"CURuCUR`iCURTHCUR^1!-L- E, 1/2`aYEN"YENe! 1/4 1/2D-IICURaYEN"YENe!
   1/4 1/2D-IIINCURE
   1/2nCUR^1thCURssINCURE^3<<CUR<<CUR`iCURAECURCURCURTHCUR^1CURNOT!-c- A:I
   3/4iCURI 1/2D-IICURECURIE, 1/2`a 1/2D-IICURNOTIo/INCURuCUR`iCURTHCUR^1!-L-

   CUR^3CUR`iCUReCURIu 1/2O>>OCURo (A 3/4CURIu 1/2O>>OCURa) A
   1/4Eo:DEGE^3DEGCURIYEN-aYENO:YEN,YENS:YEN-YENECURE^3a:CUReAAo:CURAECUReCUR^3CURECURa^2A:C,
   1/2CURC,CUR^1!-L- CUR^3CURICUReCUR|CURE^3a:CUReAAo:CURAECURo!-c- I/O
   YENeYENAYENCURYEN`iYEN-YENECURE,AECUROCURTHCUR^1!-L- CUR^1CURUCURAECURIE,
   1/2`aYEN.YENS:YENeCURC,CURI!-c-YENae! 1/4YENP:CURNOT I/O
   YENeYENAYENCURYEN`iYEN-YENECURo^1OCUR|CUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   u 1/2O>>O 1 (E, 1/2`a 1/2D-II) CURoEA:CUR,!-c-
   >>O/A:eCUR.CUR?YENOYEN!YENCURYENeCURou 1/2O>>O 1
   CURECUR.CURAE^3<<CUR-CUR^3CURECURC,!-c- YEN.YENS:YENeCURI
   1/2D-IICURoYENOYEN!YENCURYENeCUREA-:CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   AE+-IICURE!-c-u 1/2O>>O 0 CURoEA:CUR,!-c-
   >>O/A:eCUR.CUR?YENOYEN!YENCURYENeCURo^3<<CUR-CUR^3CURECURC,!-c-
   YENOYEN!YENCURYENeCUR<<CUReE, 1/2`aAEthIICURo 1/4oCUR+-
   1/4eCUReCUReCUR|CURECURC,CURCURTHCUR^1!-L-

   YENNYENCURYEN *CURI!-c-YEN
   *YENiYENDEGYENeYEN`aCURIEN^1^1CURoCURTHCURACUR?CUR-^1OCURiCUR-o
   (-oAEYENeYENoYEN-CURaENOTI *CUR-c-CUReCURTHCUR>>CURo)!-c-CUR-c-CUReYEN
   *YENiYENDEGYENeYEN`aCURI 1/2D-IICURo A 3/4CURIYEN
   *YENiYENDEGYENeYEN`aCUREAEthIICUR^1CUReCUR^3CURECURo^2A:C,
   1/2CURECUR.CURTHCUR^1!-L-  1/2D-IIA|CURIYEN *YENiYENDEGYENeYEN`aCURIu
   1/2O>>O 1 (E, 1/2`a 1/2D-II) CURI!-c-A 1/4Eo:
   1/2D-IICURIAaaCURiCUReCUREYENNYENCURYEN *CURIAEthIIu
   1/2O>>OCURE^3a:CUReAAo:CURAECUReCUR`iCURTHCUR^1!-L-
   AE+-IICUREAEthIIA|CURIYEN *YENiYENDEGYENeYEN`aCURIu 1/2O>>O 0 (E,
   1/2`aAEthII) CURI!-c- A 1/4Eo:CUR<<CUReCURIYEN! 1/4YENU:!
   1/4YENEAEthIICURC,CURICURECUR-YENNYENCURYEN *CURI 1/2D-IIu
   1/2O>>OCURE^3a:CUReAAo:CURAECUReCUR`iCURTHCUR^1!-L-

   open!-c- pipe!-c- socket YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI!-c-?.CUR.CURCURu 1/2O>>OCURoA,A(R)CUR.!-c-
   >>EINCURC,CURCURe-oC,CURa
   3/4(R)CURuCURCUREO:^1aeCURo^3a:CUReAAo:CURAECURTHCUR^1!-L- YENNYENCURYEN
   *CURoAEDEG-oiCURuCUR>>CUReCUR?CURaCURECURI!-c-CUR
   1/2CURICUReCUR|CUREA,A(R)CURuCUR`iCUR?u 1/2O>>OCURo 0 CURa: 1
   CUREYENTHYENAYEN *CUR^1CURe>>AAAECURssCURNOTENOTI
   *CURECURECUReCURTHCUR^1!-L- dup YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c-
   AE+-DEG`iCURIYENOYEN!YENCURYENeYENAE!
   1/4YENO:YENeYEN"YENoYENEYENeCURo>>O/CUR^1u 1/2O>>OCURIYEN^3YENO!
   1/4CURo-oiA(R)CUR.CURTHCUR^1!-L- ?.CUR.CURCURu
   1/2O>>OCURaAE+-CUR,CUR->>EIN^2A:C, 1/2CURE-oC,
   3/4(R)CURIEO:^1aeCURNOT>>ECURiCUR`iCUReCUR?CURa!-c-
   dupYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURo>>EINCUR.CURAE!-c- ENOTI
   *CUREYENTHYENAYEN *CURo^1OCUR"CURTHCUR^1!-L- CUR?CURA!-c-u 1/2O>>O 1
   CURNOTENOTI *CURE 3/4`i^1c,CURC,CURa!-c-u 1/2O>>O 0
   CURNOT'uCUREEA:CUR,CUReCUR`iCURAECURCURCUReCURE!-c- u 1/2O>>O 0
   CURNOT^3a:CUReAAo:CURAECUReCUR`iCURAECUR.CURTHCURCURCURTHCUR^1CURICURC,AiDEGOCURNOTENOTI
   *CURC,CUR^1!-L- CUR^3CURIIa:AeCURoEoCUR+-CUReCUR?CURa!-c- dup2
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURNOTCUR-c-CUReCURTHCUR^1!-L- dup
   CUREDEGu?oCURNOT 1 CURA:A:E^2ACURuCUR`i!-c- ^3a:CUReAAo:CURAECUR?CURCURu
   1/2O>>OCURIEO:^1aeCURo>>O/A:eCUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1
   (CURaCUR.!-c->>O/A:eCURuCUR`iCUR?EO:^1aeCURIu 1/2O>>OCURNOT>>EINAaeCURI
   3/4`i^1c,!-c- dup2 CURI!-c-CURTHCUR-oCUR 1/2CURIu
   1/2O>>OCURoEA:CUR,CUR?CURICURA!-c-
   -oAE^3a:CUReAAo:CURAECUR.CURTHCUR^1)!-L-

  2.6.3. YENC,YEND-YENCURYEN^1

   YENI! 1/4YENEYEN|YENS:YEN-c-YENC,YEND-YENCURYEN^1CURIYENOYEN!YENCURYENeI
   3/4CURo>>yCURA!-c-A:I 3/4iCURIYENOYEN!YENCURYENeCURE
   AE+-DEG`iCURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURC,YEN-c-YEN-YEN>>YEN^1CURC,CURCURTHCUR^1!-L-YEN<<!
   1/4YENIYENeCURI!-c- YENC,YEND-YENCURYEN^1AEA 1/4`iYENOYEN!YENCURYENe CURa:
   AEA 1/4`iYENOYEN!YENCURYENeCURoP:eEICUR.!-c- >>^2
   3/4ECUR.CURAECURCURCUReYENC,YEND-YENCURYEN^1CURoAEAA:eCURC,CURCURTHCUR^1CURNOT!-c-
   CURUCURECURoCURECURIYEN
   *YENiYEN>>YEN^1CURECURECURACURAE!-c-CUR^3CURICUReCUR|CUREP:eEICURIENOTI
   *CUR-c-CUReCURTHCUR>>CURo!-L- A 1/4Eo:!-c-YEN *YENeYENoYEN?!-c-YENAE!
   1/4YEN *YENC,YEND-YENCURYEN^1CURI!-c-4.4BSD
   CURIYENC,YEN-L-YEN^1YEN-YENOYEN!YENCURYENeCUREAE+-II!-c-
   YEND-YENCURYENEIoCURECUR.CURAEYEN-c-YEN-YEN>>YEN^1CURuCUR`iCURTHCUR^1!-L-CUR
   1/2CURICUR?CURa!-c-YENC,YEND-YENCURYEN^1DEGIA,EoENOTCURa:AEA
   1/4`iEoENOTCURI!-c- ^2A:C, 1/2CURE,ACUReYEN<<!
   1/4YENIYENeCURE+--L-EACURuCUR`i!-c-CURuCUReCUREYEN<<!
   1/4YENIYENeAEaCURC,CURa!-c- CUR
   1/2CUR`iCUReCURIAc,EoENOTCURNOTYENC,YEND-YENCURYEN^1YENEYENeYENCURYEND-AEaCUREENOTIYENCURuCUR`iCURAECURCURCURTHCUR^1!-L-

   YENI! 1/4YENEYEN|YENS:YEN-c-YENC,YEND-YENCURYEN^1CURI!-c- ^1
   1/2ACURCURo>>yCURA:YENC,YEND-YENCURYEN^1CURE ^1
   1/2ACURCURo>>yCUR?CURECURCURYENC,YEND-YENCURYEN^1CUREENOTCUR+-CUReCUR`iCURTHCUR^1!-L-
   CUR 1/2CUR`iCUR 3/4CUR`i!-c- YENO:YENiYENAYEN-YENC,YEND-YENCURYEN^1!-c-
   YENYENaYENeYEN-YEN?YENC,YEND-YENCURYEN^1CURE,AECURD-CUR`iCURTHCUR^1!-L-
   CUR
   1/2CUR`iCUReCURIYENC,YEND-YENCURYEN^1YENOYEN!YENCURYENeCURO/CURIYEN-c-YEN-YEN>>YEN^1CURI!-c-YEN<<!
   1/4YENIYENeAEaCURI YENC,YEND-YENCURYEN^1YENEYENeYENCURYEND-
   CURE,AECURD-CUR`iCUReYEN 1/2YENOYENEYEN|YENS:YEN-c-YENaYEN,YENaa!
   1/4YENeCURECUReCURACURAE 1/2eIyCURuCUR`iCURTHCUR^1!-L-
   CURUCURECURoCURECURIYENIYENAYENEYENi! 1/4YEN-A:I?(R)YENI!
   1/4YENEYEN|YENS:YEN-c-YENC,YEND-YENCURYEN^1CURI!-c-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a 3/4aaCUREAEA
   1/4`iYENOYEN!YENCURYENeCURo>>yCUR?CUR-o!-c- YEN
   *YENiYEN>>YEN^1'O:A:I?(R)u!C,
   1/2CURECUReCURACURAECURICURssYEN-c-YEN-YEN>>YEN^1CURC,CURCURTHCUR^1!-L-
   CUR 1/2CUR`iCURI!-c-raw-socketCURIEyCURNOTAEA
   1/4`iYENOYEN!YENCURYENeCUReCURe!-c- CUReCURe
   1/4<<A^3CUREYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURoA:oP:!CURC,CURCUReCUR?CURaCURC,CUR^1!-L-

   AAu.?AA-aCUREYENO:YENiYENAYEN-YENC,YEND-YENCURYEN^1 (^1
   1/2ACURCURo>>yCURA:YENC,YEND-YENCURYEN^1) CURECUR.CURAECURI!-c-
   YENC,YEN-L-YEN^1YEN-!-c- 1/4S:uCURYENAE! 1/4YEN
   *CURNOTCUR-c-CUR^2CUReCUR`iCURTHCUR^1CURNOT!-c-
   CURUCURECURoCURECURIYENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1YENC,YEND-YENCURYEN^1CURNOTCUR
   1/2CUR`iCURE^3-oAAo:CUR.CURTHCUR^1!-L- YEN<<!
   1/4YENIYENeCURI!-c-AEECURss^1thCURss-EN^1^1-
   1/2nCUR^1thCURssCUREAD-CUR.CURAEYEND-YENAYENOYEN!YENeYENoYENDEGCURoA:oP:!CUR.!-c-
   A:I 3/4iYENOYEN!YENCURYENeCUREAE+-IICURI!-c-
   'DEGA'CUREYEND-YENCURYENEYEN-c-YENEYEN`iYEN^1>>O/A:eCURIYENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1CURoA:oP:!CUR.CURTHCUR^1!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI!-c-YENO:YENiYENAYEN-YENC,YEND-YENCURYEN^1
   3/4aaCURE^1 1/2AUCURuCUR`iCURTHCUR^1!-L-

   ^1 1/2ACURCURo>>yCUR?CURECURCURYENC,YEND-YENCURYEN^1CURI!-c-
   YENO:YENiYENAYEN-^1 1/2ACURCURoYENuYENY!
   1/4YENECUR.CURECURCURYENC,YEND-YENCURYEN^1CURC,!-c-A:I?(R)Ath!-c-YENeYEN^1YEN?YEN
   *YENiYENAYEN?!-c- YEND-YENAYENOYEN!CURICURECURCUR
   1/4S:uCURYENC,YEN-L-YEN^1YEN-CURa:YENAE! 1/4YEN *CURECURECURC,CUR^1!-L- ^1
   1/2ACURCURo>>yCUR?CURECURCURYENC,YEND-YENCURYEN^1CURIA:I 3/4i!-c-
   Ac,IAEIICURIYENO:YENiYENAYEN- I/O AA 3/4A-:CURoYENuYENY!
   1/4YENECUR.CURTHCUR^1!-L-

   ^1
   1/2ACURCURo>>yCUR?CURECURCURYENOYEN!YENCURYENeCURIYENYENaYENeYEN-YEN?YENC,YEND-YENCURYEN^1CURE,AECURD-CUR`iCURTHCUR^1!-L-
   CUR^3CUR`iCURI-oC, 1/2eCURE 1/4AAoCURuCUR`iCUR?CUR^3CURI
   1/4iI`aCURIYENC,YEND-YENCURYEN^1CURNOT!-c- A
   1/4Eo:YENC,YEND-YENCURYEN^1YENEYENeYENCURYEND-CURACURACUR?CUR<<CUReCURC,CUR^1!-L-
   CUR^3CURICUReCUR|CUREYENC,YEND-YENCURYEN^1CUREAD-CUR^1CUReYEN<<!
   1/4YENIYENeCURIYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURI!-c- A
   3/4CURIYENO:YENiYENAYEN-^1
   1/2ACURCURo>>yCUR?CURECURCURYENC,YEND-YENCURYEN^1CUREAD-CUR.CURAECURaIINCURC,CUR-c-CUReCUR^3CURECURNOT
   3/4UIACURuCUR`iCURTHCUR.CUR?!-L-

   YENC,YEND-YENCURYEN^1AEA 1/4`iYENOYEN!YENCURYENeCURI!-c-
   mknodYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURECUReCURe-oiA(R)CURuCUR`iCURTHCUR^1!-L-
   ioctlYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c- AEA
   1/4`iYENOYEN!YENCURYENeCUREAD-+-thCUR^1CUReYENC,YEND-YENCURYEN^1CURIYENNYENeYENa!
   1/4YEN?CURoA`a-oiCUR^1CUReCURICURE>>ECURiCUR`iCURTHCUR^1!-L-
   CUR^3CURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c-A
   3/4CURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURE?.CUR?CUREu!C,
   1/2CURoA:E^2ACUR>>CUR-oCURE!-c- YENC,YEND-YENCURYEN^1CURIAEA 1/4`iCUREu!C,
   1/2CURoA`a-oiCUR^1CUReCUR^3CURECURo^2A:C, 1/2CURECUR.CURTHCUR^1!-L-
   CUR?CURECUR"CURD-!-c-ioctlCURo>>EINCUR.CURAE!-c-  1/2-aI>>YENTH!
   1/4YEN-CURoYENAE! 1/4YEN *YENC,YEND-YENCURYEN^1CURE
   1/2nCUR^1thCUR`aCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- write
   CUREEN^1^1CURo^2ACUR"CUR?CURe!-c- AEA 1/4`iCUREYEND-!
   1/4YEN,YENc,YENoCURoINDEGOCUR^1CUReENOTI *CURICUR-c-CUReCURTHCUR>>CURo!-L-

  2.6.4. YEN 1/2YEN+-YENAYENE IPC

   4.2BSD YEN<<! 1/4YENIYENeCURIYEN
   1/2YEN+-YENAYENECURoIo/INCUR.CURAE!-c-YENNYENCURYEN *CUReCURe 1/2AAEd-CURE
   IPC u!C, 1/2CURoAE^3AEthCUR.CURTHCUR.CUR?!-L-YEN
   1/2YEN+-YENAYENECURI!-c-YENOYEN!YENCURYENeCURa:YENNYENCURYEN
   *CUREAE+-II!-c- u 1/2O>>OCURECUReCURe>>^2
   3/4ECURuCUR`iCURe!-c-A:I?(R)CURIEo:A 1/4AAACURC,CUR^1!-L- 2 CURA:CURIYEN
   *YENiYEN>>YEN^1CURNOTCUR 1/2CUR`iCUR 3/4CUR`i!-c-YEN
   1/2YEN+-YENAYENECURo-oiA(R)CUR.CURAEAU:A^3CUR^1CUReCUR^3CURECURECUReCURe!-c-
   ?(R)IeACURI^1aCURCURYEND-YENCURYENEYEN^1YENEYENe!
   1/4YEN`aCURo-oiA(R)CURC,CURCURTHCUR^1!-L- AU:A^3CURuCUR`iCUR`iCURD-!-c-CUR
   1/2CUR`iCUR 3/4CUR`iCURIYEN *YENiYEN>>YEN^1CURI!-c-YENNYENCURYEN
   *CUREAE+-CUR,CUReCUR|CURE!-c- AEECURss^1thCURss 1/2nCUR^1thCURssCURoYEN
   1/2YEN+-YENAYENECUREAD-CUR.CURAE^1OCUR"CURTHCUR^1!-L- YEN
   1/2YEN+-YENAYENECURIAE(c)IAACURECUReCURe!-c-YEN<<! 1/4YENIYENeCURIYEN
   *YENiYEN>>YEN^1CURI 1/2D-IICURo!-c- EICURIYENTHYEN.YENo 3/4aaCURIYEN
   *YENiYEN>>YEN^1CURIAEthIICUREA-:CUReCUR^3CURECURa^2A:C, 1/2CURC,CUR^1!-L-
   YENNYENCURYEN *CUREYEN 1/2YEN+-YENAYENECURIAc,CURCUREDEGaCURCURCURI!-c-
   YENNYENCURYEN *CURIP:|A:ICURI?AEYEN
   *YENiYEN>>YEN^1CURNOTAssA:eCUR^1CUReENOTI
   *CURNOTCUR-c-CUReCURICUREAD-CUR.CURAE!-c- YEN
   1/2YEN+-YENAYENECURICURTHCURACUR?CUR-Iu'O/.,CURI
   (DEGUCURECUReYENTHYEN.YENo 3/4aaCURC,AEDEG-oiCUR^1CURe) YEN
   *YENiYEN>>YEN^1'O:CURC,CURa>>EINCURC,CURCUReAAACURC,CUR^1!-L-

   System V CURI!-c-FIFO CURaCUR.CUR-CURII 3/4ADEGEOCURYENNYENCURYEN
   *CURE,AECURD-CUR`iCURe YENi! 1/4YEN<<YENeYEN
   *YENiYEN>>YEN^1'O:A:I?(R)CURI>>AAAECURssCURoE-:CUR"CURAECURCURCURTHCUR^1!-L-
   FIFO CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a
   3/4aaCURIYEN-aYENO:YEN,YENS:YEN-YENECURECUR.CURAE, 1/2CURiCUR`i!-c-
   YENNYENCURYEN *CUREAE+-IICUREEyE!CURC,YEN-a! 1/4YEN *YENoCUR.!-c-YENC,!
   1/4YEN?CURoA-:CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- CUR
   1/2CURICUR?CURa!-c-FIFO CURIP:|A:ICURI?AEYEN
   *YENiYEN>>YEN^1CURECUReCURACURAEAssA:eCURuCUR`iCUReENOTI *CURICURECUR-!-c-
   YEN
   *YENiYEN>>YEN^1AE+->>ICURNOTu-AEDEGCUR.AEDEG-oi^3<<>>ICUR.CURAECUR<<CUReAU:A^3CUR^1CUReCUR^3CURECURNOT^2A:C,
   1/2CURC,CUR^1!-L- CUR.CUR<<CUR.YEN
   1/2YEN+-YENAYENECURECURIDEGUCURECURe!-c- DEGUCURECUReYENTHYEN.YENo
   3/4aaCURC,AEDEG-oiCUR^1CUReYEN
   *YENiYEN>>YEN^1CUREAD-CUR.CURAECURI>>EINCURC,CURCURTHCUR>>CURo!-L- 4.4BSD
   CURC,!-c-FIFO CURNOT 1/4AAoCURuCUR`iCURAECURCURCUReCURICURI!-c- POSIX.1 E,
   1/2`aCURE 1/2`auoCUR^1CUReCUR?CURaCURICURssCURC,CUR^1!-L- FIFO CURIu!C,
   1/2CURI!-c-YEN 1/2YEN+-YENAYENECURIu!C,
   1/2CURIDEG`iEoCURECURECURACURAECURCURCURTHCUR^1!-L-

   YEN 1/2YEN+-YENAYENEu!^1 1/2CURo 1/4A, 1/2CUR^1CUReCURECURI!-c-
   AAAAAyAA-aCURE UNIX CURI I/O YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCUREI
   3/4ADEGEOCUR+-CURa:AU:A^3u!C, 1/2CURoA:E^2ACUR^1CUReENOTI
   *CURNOTCUR-c-CUReCURTHCUR.CUR?!-L- ^3<<E-
   1/4OCURI!-c-'uA,CURIYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURO/CURI^3EA:YENCURI'uA,CURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURNOTEN^1^1CURECUR.CURE>>EINCURC,CURCUReEIDEGICURECURECURECURa!-c-
   A:E^2Au!C, 1/2CURoDEG.CUR|?.CUR.CURCURYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURoAss. *CUR.CURTHCUR.CUR?!-L- YEND-YENCURYENEYEN^1YENEYENe!
   1/4YEN`a.?CURIAU:A^3CURIAEECURss^1thCURss 1/2nCUR^1thCURssCURo^1OCUR|
   readCURE write YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURE^2ACUR"!-c-
   YENIYENAYENEYENi!
   1/4YEN-YENAYENCURYEN-c-YENDEGYENeYEN`aCURICUReCUR|CUREDEG,I
   3/4EOCURYENaYENAYEN>>! 1/4YEN,CURoAEECURss^1thCUR`aCUR?CURa!-c- ?.CUR?CURE
   6 CURA:CURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURNOTA:E^2ACURuCUR`iCURTHCUR.CUR?!-L- YENaYENAYEN>>! 1/4YEN,
   1/2nCUR^1thCURssINCURI send!-c- sendto!-c- sendmsg
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURE!-c- YENaYENAYEN>>!
   1/4YEN,CURIAEECURss^1thCURssINCURI recv!-c- recvfrom!-c- recvmsg
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURC,CUR^1!-L- ^1ICUR"A:
   3/4CUR.CURAE,<<CUReCURE!-c- CUR 1/2CUR`iCUR 3/4CUR`iCURIAEECURss
   1/2nCURINCURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURICUR|CURA-oC, 1/2eCURI 2
   CURA:CURI 1/4!CURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURIAEA 1/4`iCURE
   3/4`i^1c,CURC,CUR-c-CUReCURICURC,!-c- recvfrom CURE sendto
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c-CUR 1/2CUR`iCUR 3/4CUR`i recvmsg
   CURE sendmsg CURIYENeYENCURYENO:YENeYENeYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURECUR.
   CURAEA:E^2ACUR^1CURUCURCURACURACUR?CUR<<CURaAICUR`iCURTHCUR>>CURo!-L-

  2.6.5. Scatter/Gather I/O

   'uA,CURI read CUR-aCUReCURO write YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURE^2ACUR"!-c- 4.2BSD CURC, scatter/gather I/O u!C,
   1/2CURNOTAE^3AEthCURuCUR`iCURTHCUR.CUR?!-L- scatter AEthIICURI readv
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURECUReCURACURAE^1OCURiCUR`i!-c-
   E-L-?oCURIDEGUCURECUReYEND-YENAYENOYEN!CUREAD-CUR.CURAEA+-DEG`iCURIAEECURss^1thCURssCURo
   1/4A^1OCURC,CURCURTHCUR^1!-L- uOCURE writev YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI!-c-E-L-?oCURIDEGUCURECUReYEND-YENAYENOYEN!CUREAD-CUR.CURAEYEN-c-YENEYENssYENAYEN-CURE
   1/2nCUR^1thCURssCURo 1/4A^1OCURC,CURCURTHCUR^1!-L- read CURa: write
   CURECUReCURACURAE^1OCURiCUR`iCUReCUReCUR|CURE!-c-
   A+-DEG`iCURIYEND-YENAYENOYEN!CUREA:^1CURuCURoYENNYENeYENa!
   1/4YEN?CURECUR.CURAEAAICUR^1AaaCURiCUReCURE!-c-
   YEND-YENAYENOYEN!CUREA:^1CURuCURIC,UIoCURO/CURIYENYYENCURYENoYEN?CURECUR
   1/2CURIYENuYENCURYEN-oCURoAAICUR.CURTHCUR^1!-L-

   CUR^3CURIu!C, 1/2CURECUReCURe!-c- YEN
   *YENiYEN>>YEN^1YEN-c-YENEYEN`iYEN^1P:o'O:CURIDEGUCURECURe 3/4`i
   1/2eCURECUR-c-CUReYEND-YENAYENOYEN!CUREAD-CUR.CURAEYEN-c-YENEYENssYENAYEN-CUREA+-DEG`iCURI
   1/2nCUR^1thCURssCURo^1OCUR"!-c-
   IUAU:CUR^1CUReYEND-YENAYENOYEN!CUREYEN^3YENO! 1/4CUR^1CUReENOTI
   *CURaCUR-c-CUReCURTHCUR>>CURo!-L- YENAE! 1/4YEN
   *YENC,YEND-YENCURYEN^1CURICUReCUR|CURE!-c-CUR 1/2CUR`iCUR 3/4CUR`iCURII
   *uaCUREAD-CUR.!-c- YENAE! 1/4YEN *YENO:YENiYENAYEN-CURo
   1/2D-IICURoCUR^1CUReENOTI *CURNOTCUR-c-CUReCUReCUR|CUREYEN`iYEN^3!
   1/4YENEYENU! 1/4YEN^1CURIYENC,YEND-YENCURYEN^1CURoAe 3/4Y^2 1/2CUR.CUR?
   3/4`i^1c,!-c- YEN-c-YENEYENssYENAYEN-CURE 1/2nCUR^1thCURssCURNOTENOTI
   *CURECURECUReCURTHCUR^1!-L-
   CURTHCUR?!-c-A+-DEG`iCURIAEECURss^1thCURssYENeYEN-YEN"YEN^1YENECURC,E-L-?oCURIYEND-YENAYENOYEN!CUREAEECURss^1thCURaCUReCURICURIEo
   3/4iCUREEO/Io/CURC,CUR^1 (CUR?CURECUR"CURD-YEN`iYEN^3!
   1/4YENEYENO/YENAYENACUREYENC,! 1/4YEN?CURoCUR 1/2CUR`iCUR
   3/4CUR`iEICURIYEND-YENAYENOYEN!CUREAEECURss^1thCUR`a
   3/4`i^1c,CURECURE)!-L-
   CURaCURACURiCURoA+-DEG`iCURIAc,CURCUREYEND-YENAYENOYEN!CUREYENC,!
   1/4YEN?CURoAEECURss^1thCURss!-c- AEECURss^1thCURoCURAYENC,!
   1/4YEN?CURoENOTI *CURE 3/4`i 1/2eCUREDEGU:AEDEGCUR^1CUReCUR^3CURECURC,
   scatter AEDEG-oiCURoYEN.YENssYENaaYEN`i!
   1/4YENECUR^1CUReCUR^3CURECURI^2A:C, 1/2CURC,CUR^1!-L-
   CUR?CURACUR.!-c-CUR^3CURICUReCUR|CUREYENaYENaYENe'O:CURIYEN^3YENO!
   1/4CURIYEN^3YEN^1YENECURI!-c- YEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoCURIAEDEG-oiCUREENOTI *CURE>>th'O:CURo 2 C,U:DEGE
   3/4aaCURECUR.CURAECUR.CURTHCUR|CUR^3CURECURaIECUR-CUR-c-CUReCURTHCUR^1!-L-

   send CURE recv CURNOTCUR 1/2CUR`iCUR 3/4CUR`i!-c- sendto CURE recvfrom
   CURIYENeYENCURYENO:YENeYENeYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURECUR.CURAE
   1/4AAo^2A:C, 1/2CURC,CUR-c-CURACUR?CURICUREAE+-CUR,CUR-!-c- read CURE
   write CURoCUR 1/2CUR`iCUR 3/4CUR`i!-c- readv CURE writev
   CURIYENeYENCURYENO:YENeYENeYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURECUR.CURAE
   1/4AAoCURa^2A:C, 1/2CURC,CUR-c-CURACUR?CURC,CUR.CURc,CUR|!-L-
   CUR.CUR<<CUR.!-c- read CURE write
   CURICUReCUReENEECURE>>ECURiCUR`iCUReCUR?CURa!-c- YEN.YENssYENaaYEN`i!
   1/4YENECUR^1CUReCUR?CURaCURIA:E^2AYEN^3YEN^1YENECURo^1ICUR"CUReCURE
   YENeYENCURYENO:YENeYENeYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURECUR.CURAECURI
   1/4AAoCURI^3a:CURE^1c,CURiCURECUR<<CURACUR?CURC,CUR.CURc,CUR|!-L-

  2.6.6. E-L-?oCURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIYENuYENY! 1/4YENE

   YENIYENAYENEYENi! 1/4YEN-YEN^3YENoYENOYENaa!
   1/4YENAEYEN-L-YENoYENDEGCURIE-A-L-CURECUReCURe!-c- YENi!
   1/4YEN<<YENeCUR-aCUReCUROYENeYENa!
   1/4YENEYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURO/CURIAD-+-thCURNOTE
   3/4CURTHCUR`iCUReCUReCUR|CURECURECUReCURTHCUR.CUR?!-L-
   E-L-?oCURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIYENuYENY!
   1/4YENECURo'EA+-CURECUR^1CUReCUR?CURaCURE!-c- ^3<<E- 1/4OCURI vnode
   YENCURYENoYEN?YENOYENS:! 1/4YEN^1CURoYEN<<!
   1/4YENIYENeCUREA:E^2ACUR.CURTHCUR.CUR?!-L- vnode YENCURYENoYEN?YENOYENS:!
   1/4YEN^1CUR<<CUReA:oP:!CURuCUR`iCUReA`a-oiCURI!-c- DEGEADEGCUREYENi!
   1/4YEN<<YENeYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURC,YENuYENY!
   1/4YENECURuCUR`iCURAECURCURCUR?YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aA`a-oiCURECURUCURU:AE+-CUR,CURC,CUR^1CURNOT!-c-
   Ey^1CURCURYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECUReCURe>>EINCURNOTCURC,CURCUReCUReCUR|CURECURECURACURAECURCURCURTHCUR^1!-L-

     * YENi!
       1/4YEN<<YENeCURIYENC,YEN-L-YEN^1YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

     * ^3AE 1/4iYENeYENa! 1/4YENEYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aYEN
       *YENiYENEYEN^3YENeCURECUReCUReYENCURYENoYENY!
       1/4YENECURuCUR`iCUR?YENOYEN!YENCURYENe

     * AEECURss^1thCURssA`iIN CD-ROM YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

     * AEA 1/4`iu!C,
       1/2CURoA:oP:!CUR^1CUReYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a!-L-
       CUR?CURECUR"CURD- /proc YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECURE

   4.4BSD I^3IeCURI OS CURIAaeCURECURI FreeBSD CURICUReCUR|CURE!-c- mount
   CURC,YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURNOT 1/2eCURaCURAE>>^2
   3/4ECURuCUR`iCUR?>>thCUREYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURoAEDEGAA-aCUREAEECURss^1thCUR`aCUR^3CURECURNOT
   CURC,CURCUReCURaCURICURaCUR-c-CUReCURTHCUR^1!-L- vnode
   YENCURYENoYEN?YENOYENS:! 1/4YEN^1CURECURA:CURCURCURAECURI 6.5 Aa!-c- Ea:
   1/2oYENuYENY! 1/4YENEYENe! 1/4YENAYENoCURECURA:CURCURCURAECURI 6.6 Aa!-c-
   AEA 1/4`iu!C,
   1/2YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECURA:CURCURCURAECURI 6.7
   AaCUREu-oU:CURuCUR`iCURAECURCURCURTHCUR^1!-L-

2.7. YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

   A:I 3/4iYENOYEN!YENCURYENeCURECURIDEG`i
   1/4!,uCURIYEND-YENCURYENEIoCURC,CUR-c-CURe!-c- C,CURDEGOCURI 3/4`i
   1/2eCUR<<CUReAEECURss^1thCURss!| 1/2nCUR^1thCURssCURNOT^2A:C,
   1/2CURC,CUR^1!-L- YEN<<!
   1/4YENIYENeCURI!-c-YENOYEN!YENCURYENeCURIYEN`iYEN^3! 1/4YENEP:^3|CURoC,S:
   1/4+-CUR.CURTHCUR>>CURoCURNOT!-c- A?CUR-CURIYEN *YENiYENDEGYENeYEN`aCURI
   ^2th^1O (LF) E,>>uCURo^1OCURI 1/2-aCUReCUREC,S: 1/4+-CUR.CURTHCUR^1!-L-
   CURTHCUR?CUR^3CUR`iCURECURIDEGUCURECUReYENOYEN!YENCURYENe^1
   1/2ACURCURoIo/INCUR^1CUReYEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoCURaCUR-c-CUReCURTHCUR^1!-L- YENOYEN!YENCURYENe
   1/4<<?ECURECURI!-c-YENOYEN!YENCURYENeCURE'O/CUR^1CUReYEN.YEN^1YENAEYEN`a
   3/4d-EoCURICURTHCURACUR?CUR-'THCURTHCUR`iCURTHCUR>>CURo!-L-
   ^3AEYENOYEN!YENCURYENeCURIYENOYEN!YENCURYENe 1/2eI
   1/4O!-c-uo:^2A:ADEGA!-c- >>EIN 3/4oP:.CURECURECURICURCURCUR-CURA:CUR<<CURI
   3/4d-EoCURIYENOYEN!YENCURYENeCURC,CURICURECUR-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURNOTEY>>yCUR.CURAECURCURCURTHCUR^1!-L-

   YENOYEN!YENCURYENeI 3/4CURI-oC,Ac, 255
   E,>>uCURTHCURC,CURIE,>>uIoCURC,CUR^1!-L- YENOYEN!YENCURYENeI
   3/4CURIYENC,YEN-L-YEN`iYEN-YENEYENe
   CURE,AECURD-CUR`iCURe.?CURIYENOYEN!YENCURYENeCUREEY'ECURuCUR`iCURTHCUR^1!-L-
   YENC,YEN-L-YEN`iYEN-YENEYENeCURE'THCURTHCUR`iCUReYENOYEN!YENCURYENeCURI
   3/4d-EoCURIYENC,YEN-L-YEN`iYEN-YENEYENeYEN"YENoYENEYENeCURE,AECURD-CUR`i!-c-
   YENOYEN!YENCURYENeI 3/4DEGE^3DEGCUREYENOYEN!YENCURYENeCUR
   1/2CURICURaCURICURO/CURIYENYYENCURYENoYEN?CURa'THCURssCURTHCUR^1!-L-
   YENC,YEN-L-YEN`iYEN-YENEYENeYEN"YENoYENEYENeCURECURIA:I
   3/4iCURIYENOYEN!YENCURYENeDEGE^3DEGCURE!-c- A
   3/4CURIYENC,YEN-L-YEN`iYEN-YENEYENeCURo>>^2
   3/4ECUR^1CUReYEN"YENoYENEYENeCURNOT'THCURTHCUR`iCURTHCUR^1!-L-
   CUR^3CURICUReCUR|CURECUR.CURAEYENC,YEN-L-YEN`iYEN-YENEYENeCUREYENOYEN!YENCURYENeCURECUReCURe^3NOTAO/CURNOT.A-oiCUReCUR`i!-c-
   CUR 1/2CURI^3NOTAO/^1
   1/2ACURCURoYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURE,AECUROCURTHCUR^1!-L-

   ?TH2.2  3/4(R)uNOTIICUREYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a
   3/4(R)uNOTIICUREYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aYENA:YENe! 1/4

   ?TH2.2!O: 3/4(R)uNOTIICUREYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a! *CURI
   3/4(R)uNOTIICUREYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIDEG`iIaCURC,CUR^1!-L-
   YENC,YEN-L-YEN`iYEN-YENEYENeCURIYENuYENO:YENC,YEN-L-YEN`iYEN-YENEYENeCURo'THCUR`aCUR^3CURECURNOTCURC,CUR!-c-
   AEthCUR`i>>OCURI?
   1/4CURuCURECURIAEACUREA(c),ACURICUR-c-CUReCURTHCUR>>CURo!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIDEG`i'OACURoEYCURA:CUR?CURa!-c-
   YEN<<! 1/4YENIYENeCURIYEN *YENiYEN>>YEN^1CURNOTA:
   3/4AU:YENC,YEN-L-YEN`iYEN-YENEYENeCURO/
   1/2nCUR^1thCUR`aCUR^3CURECURoP:O/>>ssCUR.CURAECURCURCURTHCUR^1!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECURI!-c-A:I
   3/4iYENOYEN!YENCURYENe!-c-YENC,YEN-L-YEN`iYEN-YENEYENeDEGE^3DEGCURE!-c-
   YENC,YEND-YENCURYEN^1YENOYEN!YENCURYENeCURa:YEN
   1/2YEN+-YENAYENECURECURECURIA
   3/4CURIYEN-aYENO:YEN,YENS:YEN-YENECURO/CURI>>^2
   3/4ECURa'THCURTHCUR`iCURTHCUR^1!-L-

   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI!-c- YENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENe CURo>>IAAACURECUR^1CUReIU^1
   1/2ACURCURo>>yCURACURAECURCURCURTHCUR^1!-L- YENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURI!-c- YEN^1YENeYENAYEN.YENaa
   CURE,AECURD-CUR`iCURe 3/4`i^1c,CURaCUR-c-CURe!-c- 1/4D-AthE,>>u(/)CURC,E
   1/2CURuCUR`iCURTHCUR^1!-L- YENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURECURIYENOYEN!YENCURYENeCURNOT'THCURTHCUR`iCURTHCUR^1!-L-
   ?TH 2.2 CURIIaCURC,CURI!-c- usr
   YENC,YEN-L-YEN`iYEN-YENEYENeCURNOT'THCURTHCUR`i!-c-CUR 1/2CURI usr
   YENC,YEN-L-YEN`iYEN-YENEYENeCURECURI!-c- bin
   YENC,YEN-L-YEN`iYEN-YENEYENeCURNOT'THCURTHCUR`iCURTHCUR^1!-L- bin
   YENC,YEN-L-YEN`iYEN-YENEYENeCURECURI!-c-A:I 3/4i ls CURa: vi
   CURoCURICUR,CURaCURECUR^1CURe!-c-YEN *YENiYENDEGYENeYEN`aCURI
   1/4A^1O^2A:C, 1/2YEN^3! 1/4YENECURNOT'THCURTHCUR`iCURTHCUR^1!-L-

   YEN *YENiYEN>>YEN^1CURI!-c-YENOYEN!YENCURYENeCURI>>O/A:eCURoYENNYEN^1I
   3/4CURECUReCURACURAE^1OCURCURCURTHCUR^1!-L- YENNYEN^1I 3/4CURI!-c-0
   ,A:DEGE 3/4aaCURIYENOYEN!YENCURYENeI 3/4CURo
   1/4D-AthE,>>u(/)CURC,P:eAUCURACUR?E,>>uIoCURC,CUR^1!-L- YEN<<!
   1/4YENIYENeCURIYENNYEN^1I 3/4CURo^2o 1/4aCUR^1CUReCUR?CURa!-c-CUR
   1/2CUR`iCUR 3/4CUR`iCURIYEN *YENiYEN>>YEN^1CURE 2 CURA:CURIYENNYEN^1I
   3/4CURo'O/I-c-EOCUR+-CURTHCUR^1!-L- YEN *YENiYEN>>YEN^1CURIYENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURI!-c- YEN
   *YENiYEN>>YEN^1CURNOTYEN-c-YEN-YEN>>YEN^1CURC,CURCUReYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a
   3/4aaCURC,-oC,CURa 3/4aaDEGICURIAAACURC,CUR^1!-L- A:I
   3/4i!-c-CUR^3CURIYENe! 1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURI!-c-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aA'AICURIYENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCUREAssA:eCURuCUR`iCURTHCUR^1!-L- 
   1/4D-AthE,>>u (/) CURC,CURICUR,CURTHCUReYENNYEN^1I 3/4CURIAa:AD-YENNYEN^1I
   3/4CURE,AECURD-CUR`i!-c- YEN<<! 1/4YENIYENeCURI!-c-CUR 1/2CURIYENNYEN^1I
   3/4CURNOTYEN *YENiYEN>>YEN^1CURIYENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCUR<<CURe
   ^3<<>>ICUR^1CUReCURaCURICURE^2o 1/4aCUR.CURTHCUR^1!-L-

   1/4D-AthE,>>u (/) CURC,CURICUR,CURTHCUReCURECURCURYENNYEN^1I
   3/4CURIAeAD-YENNYEN^1I 3/4CURE,AECURD-CUR`i!-c- YEN
   *YENiYEN>>YEN^1CURIYEN<<YEN`iYENoYENE-oiP:EYENC,YEN-L-YEN`iYEN-YENEYENeCURo'd-
   1/2`aCURECUR.CUR?AeAD-AA-aCUREYENNYEN^1CURECUR.CURAE^2o
   1/4aCURuCUR`iCURTHCUR^1 (CUR^3CURIYENC,YEN-L-YEN`iYEN-YENEYENeCURI!-c-A>>
   1/2ICUR.CURAE YEN<<YEN`iYENoYENEYENC,YEN-L-YEN`iYEN-YENEYENe
   CURTHCUR?CURI!-c- -oiP:EYENC,YEN-L-YEN`iYEN-YENEYENe
   CURECURa,AECURD-CUR`iCURTHCUR^1)!-L-
   YEN<<YEN`iYENoYENEYENC,YEN-L-YEN`iYEN-YENEYENeCUR 1/2CURICURaCURICURI!-c-
   YENEYENAYENE CURECURa,AECURD-CUR`i!-c-1 CURA:CURIYENOYENeYEN-aYENE (.)
   CURC,E 1/2CURuCUR`iCURTHCUR^1!-L- YENOYEN!YENCURYENeI 3/4
   YENEYENAYENEYENEYENAYENE (..) CURI!-c-
   YENC,YEN-L-YEN`iYEN-YENEYENeCURI?AEYENC,YEN-L-YEN`iYEN-YENEYENeCURoE
   1/2CUR.CURTHCUR^1!-L- YENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURI?AEYENC,YEN-L-YEN`iYEN-YENEYENeCURIYENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENe 1/4<<?ECURC,CUR^1!-L-

   chroot YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURECUReCURe!-c-YEN
   *YENiYEN>>YEN^1CURIYENe! 1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURo!-c- chdir
   YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURECUReCURe!-c-YEN<<YEN`iYENoYENEYENC,YEN-L-YEN`iYEN-YENEYENeCURoEN^1^1CURC,CURCURTHCUR^1!-L-
   chdir CURICURCURCURA:CURC,CURa^1OCUR"CURTHCUR^1CURNOT!-c- chroot CURI
   1/4A^1OCURI!-c-'EIy 1/4OAEA,-c-CURo>>yCURA:YEN
   *YENiYEN>>YEN^1CURE,ACUReCUR`iCURTHCUR^1!-L- chroot CURIA:I
   3/4i!-c-YEN.YEN^1YENAEYEN`aCUREAD-CUR^1CUReYEN-c-YEN-YEN>>YEN^1A(c),ACURo^2YCUR^1CUR?CURaCUREINCURCURCUReCUR`iCURTHCUR^1!-L-

   ?TH 2.2
   CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECUR-aCURCURCURAE!-c-YEN
   *YENiYEN>>YEN^1CURIYENe! 1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENe
   CURNOTYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIYENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURC,!-c-YEN<<YEN`iYENoYENEYENC,YEN-L-YEN`iYEN-YENEYENeCURNOT
   /usr CURC,CUR-c-CURACUR?CURECUR.CURTHCUR^1!-L-CUR^3CURICURECUR!-c- vi
   CURo>>^2 3/4ECUR^1CUReCURECURI!-c-Aa:AD-YENNYEN^1CURoINCURCURCURAE!-c-
   /usr/bin/vi CURECURa
   1/2nCUR+-CURTHCUR^1CUR.!-c-YEN<<YEN`iYENoYENEYENC,YEN-L-YEN`iYEN-YENEYENeCUR<<CUReCURIAeAD-YENNYEN^1CURoINCURCURCURAE!-c-
   bin/vi CURECURa 1/2nCUR+-CURTHCUR^1!-L-

   YEN.YEN^1YENAEYEN`aCURIYENae! 1/4YENAEYEN-L-YENeYENAEYEN-L-CURa:YENC,!
   1/4YEN?YENU! 1/4YEN^1CURI!-c-
   CUReCUR-AICUReCUR`iCUR?CUR-c-CURe.eCURTHCURACUR?YENC,YEN-L-YEN`iYEN-YENEYENeCUREEYA,CURuCUR`iCURTHCUR^1!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI^3NOTAO/^1
   1/2ACURCURECUR.CURAECUReCUR-AICUReCUR`iCUR?CURaCURICURE!-c-
   ^3AE!^1CURIYENae! 1/4YENP:CURIYENU!
   1/4YEN`aYENC,YEN-L-YEN`iYEN-YENEYENeCURNOTCUR-c-CUReCURTHCUR^1!-L-
   CUR?CURECUR"CURD-!-c-?TH 2.2 CURI /usr/staff/mckusick CURa:
   /usr/staff/karels CURECURECURC,CUR^1!-L- YENae!
   1/4YENP:CURNOTYENiYENDEGYENCURYENoCUR^1CUReCURE!-c-
   YEN.YENS:YENeCURIYEN<<YEN`iYENoYENEYENC,YEN-L-YEN`iYEN-YENEYENeCURIYENU!
   1/4YEN`aYENC,YEN-L-YEN`iYEN-YENEYENeCUREAssA:eCURuCUR`iCURTHCUR^1!-L-
   YENae! 1/4YENP:CURIYENU! 1/4YEN`aYENC,YEN-L-YEN`iYEN-YENEYENeAEaCURC,A:I
   3/4iYENOYEN!YENCURYENeCURI-oiA(R)CUREAE+-IICUREYENC,YEN-L-YEN`iYEN-YENEYENeCURa-oiA(R)CURC,CURCUReCUR?CURa!-c-
   E-L->>"CURE^3NOTAO/^1 1/2ACURCURo^1 1/2AUCUR^1CUReCUR^3CURECURa^2A:C,
   1/2CURC,CUR^1!-L-

   YENae! 1/4YENP:CUR<<CUReCURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURNOT 1
   CURA:CURE,<<CUR"CURTHCUR^1CURNOT!-c- YEN.YEN^1YENAEYEN`aCURI 1 CURA:CURI^2
   3/4AUYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURNOT!-c- 
   1/4A-oYCURECURIDEGUCURECUReYENC,YEND-YENCURYEN^1
   3/4aaCURIE-L-?oCURIE-aIyYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUR<<CURe^1
   1/2A(R)CURuCUR`iCURAECURCURCUReCUR^3CURECURoC,S:
   1/4+-CUR.CURAECURCURCURTHCUR^1!-L-
   E-aIyYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI!-c-DEGUCURECURACUR?YENC,YEND-YENCURYEN^1CURECURTHCUR?CURNOTCUReCUR^3CURECURICURC,CURCURTHCUR>>CURo!-L-
   CURUCURECURoCURECURI
   3/4`i^1c,!-c-E-aIyYENC,YEN-L-YEN^1YEN-YENC,YEND-YENCURYEN^1CURIE-L-?oCURIIAIyYENC,YEND-YENCURYEN^1CUREENOT^3a:CURuCUR`iCUReCUR?CURa!-c-
   1 CURA:CURIE-aIyYENC,YEND-YENCURYEN^1
   3/4aaCUREE-L-?oCURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURo^1
   1/2A(R)CUR^1CUReCUR^3CURECURaCURC,CURCURTHCUR^1!-L-
   CUR^1CURUCURAECURIAa:AD-YENNYEN^1I
   3/4CURo^2o.eCURC,CURCUReYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURo YENe!
   1/4YENEYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURE,AECURO!-c- 
   3/4iCUREIo/IN^2A:C, 1/2CURE 3/4oAO:CURECURECURACURAECURCURCURTHCUR^1!-L- A
   3/4CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI!-c-YENTHYEN|YENoYENECUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   YENTHYEN|YENoYENECURECURI!-c-YENe!
   1/4YENEYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIYENC,YEN-L-YEN`iYEN-YENEYENe^1
   1/2ACURCURIDEG`iEoCURECUR.CURAEAAy^1c,CUR^1CUReA`a-oiCURC,CUR^1!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUREYENTHYEN|YENoYENECURuCUR`iCUR?YENC,YEN-L-YEN`iYEN-YENEYENeCURI>>^2
   3/4ECURI!-c- CUR
   1/2CURIYENTHYEN|YENoYENECURuCUR`iCUR?YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIYENe!
   1/4YENEYENC,YEN-L-YEN`iYEN-YENEYENeCURI>>^2 3/4ECURO/CURE YEN<<!
   1/4YENIYENeCURECUReCURACURAEAE(c)^2aAA-aCUREEN'^1CURuCUR`iCURTHCUR^1!-L-

   link YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c-'uA,CURIYENOYEN!YENCURYENeI
   3/4CURE!-c-EII 3/4CURoI?CUR"CURTHCUR^1!-L-
   YENeYENoYEN-CURNOTA(R),uCUR^1CUReCURE!-c-
   YENOYEN!YENCURYENeCURICURECURACUReCURIYENOYEN!YENCURYENeI
   3/4CUR<<CUReCURC,CURaYEN-c-YEN-YEN>>YEN^1CURC,CURCUReCUReCUR|CURECURECUReCURTHCUR^1!-L-
   YENOYEN!YENCURYENeI 3/4CURI unlink YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURECUReCURe-oi 1/2u:CURC,CURCURTHCUR^1!-L-
   YENOYEN!YENCURYENeCURo>>^2 3/4ECUR.CURAECURCURCUR?-oC,,aaCURII
   3/4ADEGCURNOT-oi 1/2u:CURuCUR`iCUReCURE
   (CURuCUReCUREYENOYEN!YENCURYENeCURo^3<<CURCURCURAECURCURCUR?-oC,,aaCURIYEN
   *YENiYEN>>YEN^1CURNOTYENOYEN!YENCURYENeCURoEA:CUR,CUReCURE)
   YENOYEN!YENCURYENeCUR 1/2CURICURaCURICURa-oi 1/2u:CURuCUR`iCURTHCUR^1!-L-

   YENOYEN!YENCURYENeCURIYENC,YEN-L-YEN`iYEN-YENEYENeAEaCURC,^3NOTAO/^1
   1/2ACURCURo>>yCURACURAEEY>>yCURuCUR`iCURTHCUR^1!-L-
   YENC,YEN-L-YEN`iYEN-YENEYENeCUR 1/2CURICURaCURICURaDEG`i
   1/4iCURIYENOYEN!YENCURYENeCURC,CUR^1CURNOT!-c-
   YENC,YEN-L-YEN`iYEN-YENEYENeCURIDEG`iEICURIYENOYEN!YENCURYENeCUREDEGUCURECURe!-c-
   YEN.YEN^1YENAEYEN`aCURECUReCURACURAE.eCURaCUReCUR`iCUR?^1
   1/2ACURCURo>>yCURACURAECURCURCURTHCUR^1!-L-
   YENC,YEN-L-YEN`iYEN-YENEYENeCURIDEG`iEICURIYENOYEN!YENCURYENeCUREAE+-CUR,CUR-YEN
   *YENiYEN>>YEN^1CUR<<CUReAEECURss^1thCUR`aCUR^3CURECURNOT^2A:C,
   1/2CURC,CUR^1CURNOT!-c-
   YENC,YEN-L-YEN`iYEN-YENEYENeCUREEN^1^1CURo^2ACUR"CUReCUR`iCUReCURICURIYEN<<!
   1/4YENIYENeCURACUR+-CURC,CUR^1!-L- YENC,YEN-L-YEN`iYEN-YENEYENeCURI mkdir
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURC,-oiA(R)CUR.!-c- rmdir
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURC,-oi 1/2u:CUR.CURTHCUR^1!-L- 4.2BSD
   DEGEADEGCURIYEN.YEN^1YENAEYEN`aCURECUR-aCUR+-CURe mkdir CURE rmdir
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c-DEG`iI-c-CURI link!-c-unlink
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI 1/4A^1OCURECUR.CURAE
   1/4AAoCURuCUR`iCURAECURCURCURTHCUR.CUR?!-L- IA
   1/4"AA-aCUREYENC,YEN-L-YEN`iYEN-YENEYENeCURI-oiA(R)!-c- -oi
   1/2u:CURo^1OCUR|YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURo?.CUR?CUREA:E^2ACUR.CUR?IyI^3CURI!-c-3
   CURA:CUR-c-CUReCURTHCUR^1!-L-

    1. YEN-c-YENEYENssYENAYEN-CUREAEDEG-oiCURo^2A:C,
       1/2CURECUR^1CUReCUR?CURa!-L- link YEN.YEN^1YENAEYEN`aYEN^3!
       1/4YENeCURECUReCURe 1/4AAoCURI 3/4`i^1c,CUREDEGUCURECURe!-c-
       YEN.YEN^1YENAEYEN`aCURNOTYEN-YENeYENAYEN.YENaaCUR.CUR? 3/4`i^1c,CURE
       YENC,YEN-L-YEN`iYEN-YENEYENeCURI^1 1/2ACURCURNOTAaeAAOE 3/4A
       1/4CURECURTHCURTHCURECURECUReCUR^3CURECURNOTCUR-c-CUReCURTHCUR>>CURo!-L-

    2. YENIYENAYENEYENi!
       1/4YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURo>>EINCUR.CURAECURCURCURe
       3/4`i^1c,CURECURI YEN.YENeYEN-c-YENeYENCURYEN-o (A`a-oi 1/2c,
       1/2o/CURIEY 3/4U)
       CURo^1OCUR|CUR?CURa!-c-YENOYEN!YENCURYENeCUR-aCUReCUROYENC,YEN-L-YEN`iYEN-YENEYENeCURI-oiA(R)!-c-
       -oi 1/2u:CURIYEN-c-YENEYENssYENAYEN-CURE^1OCURiCUR`iCUReENOTI
       *CURNOTCUR-c-CUReCURTHCUR^1!-L-

    3. UNIX DEGE^3DEGCURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a (A
       3/4CURIYENN! 1/4YENAEYEN-L-YEN.YENc,YENo 3/4aaCURI MS-DOS
       YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECURE) CURoYENuYENY!
       1/4YENECUR^1CURe 3/4`i^1c,!-c- CUR
       1/2CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURNOT link
       YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURoYENuYENY!
       1/4YENECUR.CURECURCUR^2A:C, 1/2ACURNOTCUR-c-CUReCURTHCUR^1!-L-
       CUR?CURECUR"CUR
       1/2CUR`iCURNOTYENC,YEN-L-YEN`iYEN-YENEYENeCURoYENuYENY!
       1/4YENECUR^1CUReYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURC,CUR-c-CURACURAECURa!-c-
       UNIX
       YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECURIDEGUCURECURe!-c-YENC,YEN-L-YEN`iYEN-YENEYENeCURoYENeYENoYEN-CURECUR.CURAE-oiA(R)!-c-
       -oi 1/2u:CUR.CURECURCURCURaCURICURaCUR-c-CUReCURTHCUR^1!-L- CUR
       1/2CURICUR?CURaCUR
       1/2CURICUReCUR|CUREYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURC,CURI!-c-
       YENC,YEN-L-YEN`iYEN-YENEYENeCURI-oiA(R)!-c--oi 1/2u:CURI!-c- IA
       1/4"AA-aCUREI
       *uaCURuCUR`iCURECURCUR,ACURe^1OCURiCUR`iCURTHCUR>>CURo!-L-

   chown YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURIYENOYEN!YENCURYENeCURI 1/2eI
   1/4OCUREYENDEGYENe! 1/4YEN *CURoAssA:eCUR.CURTHCUR^1!-L- chmod
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURI!-c-YENOYEN!YENCURYENeCURIEY,iYENa!
   1/4YENECURoEN^1^1CUR.CURTHCUR^1!-L-
   CUR^3CUR`iCUReCURIYENOYEN!YENCURYENeCURIADEGACURI!-c- stat
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURoYENOYEN!YENCURYENeI 3/4CUREAD-CUR.
   1/4A^1OCUR^1CUReCUR^3CURECURC,AEECURss
   1/2D-CUR^1CUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- fchown!-c- fchmod!-c-
   fstat YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI!-c-AE+-IICUREAEDEG-oiCURoYENOYEN!YENCURYENeI
   3/4CURC,CURICURECUR-YENOYEN!YENCURYENeu
   1/2O>>OCUREAD-CUR.CURAE^1OCURCURCURTHCUR^1!-L- rename
   YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURI!-c-YENOYEN!YENCURYENeCURE?.CUR.CURCURI
   3/4ADEGCURoCURA:CUR+-CURAE,AACURCURI 3/4ADEGCURo-oi
   1/2u:CUR.CURTHCUR^1!-L- YENC,YEN-L-YEN`iYEN-YENEYENe-oiA(R)!|-oi
   1/2u:A`a-oiCUREAE+-CUR,CUReCUR|CURE!-c- rename YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURIYENi! 1/4YEN<<YENeYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURII
   3/4ADEGEN^1^1AEDEG-oiCURoYEN-c-YENEYENssYENAYEN-CURECUR^1CUReCUR?CURa
   4.2BSD CURC,A:E^2ACURuCUR`iCURTHCUR.CUR?!-L-
   ,aaCURE!-c-CUR^3CURIAEDEG-oiCURIYENIYENAYENEYENi! 1/4YEN- 3/4aaCURIEo UNIX
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUREAD-CUR.CURAEI
   3/4ADEGEN^1^1A`a-oiCURo^1OCUR|
   3/4`i^1c,CUREI,uCURC,CUR-c-CUReCUR^3CURECURNOTCURiCUR<<CUReCURTHCUR.CUR?!-L-

   truncateCURI!-c- 4.2BSD
   CURC,A:E^2ACURuCUR`iCUR?YENOYEN!YENCURYENeCURoC,CURDEGOCURIA:^1CURuCUREAUCUReuICURaCUReYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURC,CUR^1!-L- CUR^3CURIYEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeA:E^2ACURI
   1/4c,CUREIU:AA-aCURI
   YENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1YENOYEN!YENCURYENeCURI-oC,,aaCURoYEN
   *YENiYENDEGYENeYEN`aCURNOT-oC,,aaCUREYEN-c-YEN-YEN>>YEN^1CUR.CUR? 3/4`i
   1/2eCUREAssA:eCUR^1CURe!-c- CURECURCURCUR|AEDEG-oiCURo>>yCURA: Fortran
   YENeYENoYEN?YENCURYEN`aYENeYENCURYENO:YENeYENeCURIYENuYENY!
   1/4YENECURC,CUR.CUR?!-L- truncate YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURo>>EINCUR.CURECURCUR 3/4`i^1c,!-c-
   YENOYEN!YENCURYENeCURIA:^1CURuCURo 1/2ICURaCUReI-L-DEG`iCURIEyE!CURIENOTI
   *CUREEoENOTCURoYEN^3YENO! 1/4CUR.CUR?YENOYEN!YENCURYENeCURo-oiA(R)CUR.!-c-
   ,uCURIYENOYEN!YENCURYENeCURo-oi 1/2u:CUR.CUR?,aaCUREYEN^3YENO!
   1/4CUR.CUR?YENOYEN!YENCURYENeCURoYENeYENI!
   1/4YEN`aCUR^1CUReEyE!CURC,CUR^1!-L-
   CUR^3CURIYEN-c-YENeYEN'YENeYEN-oYEN`aCURIAUCURCURCURACUR+-CURC,CURECUR-!-c-
   P:oCURIAEIICURI
   3/4-CURECURCURYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURC,CURI
   1/4-oC,OCUR^1CURe^2A:C, 1/2ACURNOTCUR-c-CUReCURTHCUR^1!-L-

   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUREYENOYEN!YENCURYENeCURo
   1/2ICURaCUReu!C, 1/2CURNOTA:E^2ACURuCUR`iCUReCURE!-c- CUR
   1/2CUR`iCURIYEN<<!
   1/4YENIYENeCURNOTAc,CURCUREP:oCURIYENC,YEN-L-YEN`iYEN-YENEYENeCURo
   3/4(R)CURuCUR-CUR^1CUReINAAOCURE>>EINCUR^1CUReCUReCUR|CURECURECUReCURTHCUR.CUR?!-L-
   P:oCURIYENC,YEN-L-YEN`iYEN-YENEYENeCURo 1/2I 3/4(R)CUR^1CUReCURE!-c-
   YENOYEN!YENCURYENeCURI-oiA(R)!-c- -oi 1/2u:>>thCUREYEN<<!
   1/4YENIYENeCURNOTYENOYEN!YENCURYENeCURo,!-o-:CUR^1CURe>>th'O:CURoA>>
   1/2ICURC,CURCUReCURECURCURCUR|Io/AAACURNOTCUR-c-CUReCURTHCUR^1!-L-

   ?.uNOTCURE-oiA(R)CURuCUR`iCUR?YENOYEN!YENCURYENeCURECURI!-c-
   -oiA(R)CUR.CUR?YEN *YENiYEN>>YEN^1CURIYENae! 1/4YENP:
   1/4+-EI>>OCURE-oiA(R)CURNOT^1OCURiCUR`iCUR?YENC,YEN-L-YEN`iYEN-YENEYENeCURIYENDEGYENe!
   1/4YEN * 1/4+-EI>>OCURoI?CUR"CUReCUR`iCURTHCUR^1!-L-
   YENOYEN!YENCURYENeCURIEY,iINCURE 3
   YEN`iYENUYENeCURIYEN-c-YEN-YEN>>YEN^1A(c),aeu!^1
   1/2CURNOTINDEGOCURuCUR`iCURAECURCURCURTHCUR^1!-L- CUR^3CURI 3
   YEN`iYENUYENeCURIYENOYEN!YENCURYENeYEN-c-YEN-YEN>>YEN^1uo:^2A:CURI

    1. YENOYEN!YENCURYENeCURo 1/2eICUR.CURAECURCURCUReYENae! 1/4YENP:

    2. YENOYEN!YENCURYENeCURo 1/2eICUR.CURAECURCURCUReYENDEGYENe! 1/4YEN *

    3. A 3/4CURICUR^1CURUCURAE

   CUREAD-CUR.CURAEAssA:eCUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- CUR
   1/2CUR`iCUR
   3/4CUR`iCURIYEN-c-YEN-YEN>>YEN^1YEN`iYENUYENeCURI!-c-CURuCUReCURE AEECURss
   1/4eCUReuo:^2A:!-c- 1/2nCUR^1thCURssuo:^2A:!-c-
   1/4A^1Ouo:^2A:CUREENOTCUR+-CUReCUR`iCURAECURCURCURTHCUR^1!-L-

   YENOYEN!YENCURYENeCURI-oiA(R)>>thCUREA:^1CURuCURNOT 0 CURC,CUR-c-CURe!-c- 
   1/2nCUR^1thCURssCURuCUR`iCUReCURECURA:CUR`iCURAEA:^1CUR-CURECURACURAECURCURCURCURTHCUR^1!-L-
   YEN.YEN^1YENAEYEN`aCURIYENOYEN!YENCURYENeCURNOT^3<<CUR<<CUR`iCUReCURE!-c-
   AD-+-thCUR^1CUReu 1/2O>>OCURI,
   1/2-ossDEGIAO:CURo>>O/A:eCUR^1CUReYENYYENCURYENoYEN?CURoEY>>yCUR.CURTHCUR^1!-L-
   CUR^3CURIYENYYENCURYENoYEN?CURIYENOYEN!YENCURYENeAEaCURoYENeYENoYENAYEN`aYEN-c-YEN-YEN>>YEN^1CUR^1CUReCUReCUR|CUREAEDEGCUR<<CUR^1CUR^3CURECURNOT^2A:C,
   1/2CURC,CUR^1!-L- fork CURa: dup YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURECUReCUReYENOYEN!YENCURYENeu 1/2O>>OCURoP:|ICUR^1CUReYEN
   *YENiYEN>>YEN^1'O:CURC,CURI!-c- CUR^3CURI,
   1/2-ossDEGIAO:YENYYENCURYENoYEN?CURIP:|ICURuCUR`iCURTHCUR^1!-L- EI!^1CURI
   open YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURECUReCURACURAE
   -oiA(R)CURuCUR`iCUR?YENOYEN!YENCURYENeu 1/2O>>OCURI!-c-AEEI(c)CUR.CUR?,
   1/2-ossDEGIAO:YENYYENCURYENoYEN?CURo>>yCURACURTHCUR^1!-L-
   YENOYEN!YENCURYENeCURI.eCURo>>yCURA:CUR^3CURECURNOTCUR-c-CUReCURTHCUR^1!-L-
   .eCURECURIYENOYEN!YENCURYENeCURIDEG`i 1/4!,u^1 1/2ACURCURIAaeCURC,!-c-
   YENC,! 1/4YEN?CURNOTDEG`iAAUCURa
   1/2nCUR^1thCURTHCUR`iCUR?CUR^3CURECURICURECURCURP:oCURIEoENOTCURC,CUR^1!-L-
   YENOYEN!YENCURYENeCURI-oC,,aaEo/CUReCURe,aaCUREYENYYENCURYENoYEN?CURoAEDEGCUR<<CUR.
   1/2nCUR^1thCURssCURo^1OCUR|CUR^3CURECURC,!-c-
   YENOYEN!YENCURYENeCURE.eCURoCURA:CUR-CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   AEECURss^1thCURTHCUR`iCUR? 3/4`i^1c,!-c-.eCURI 0
   CURIAICURoCURaCURA:YEND-YENCURYENECURECUR.CURAEDEG.CURiCUR`iCURTHCUR^1!-L-

   1/2e'u:CURI UNIX YEN.YEN^1YENAEYEN`aCURC,CURIYENOYEN!YENCURYENeI 3/4CURE
   14 E,>>uDEGEAEaCURECURCURCUR|A(c),ACURNOTCUR-c-CURe!-c-
   CUReCUR-Ia:AeCURECURECURACURAECURCURCURTHCUR.CUR?!-L-
   CUR?CURECUR"CURD-!-c-YENae!
   1/4YENP:CURIAAo:A^3CURECURNOTCUReA:^1CUR-AaIAAA-aCUREYENOYEN!YENCURYENeI
   3/4CURoEOCUR+-CUR?CURCURCUREE 3/4CURssCURTHCUR^1CUR.!-c-
   basename.extension CURECURCURCUR|'.INAA-aCUREYENOYEN!YENCURYENeI?I
   3/4uNOTAS:CURo^1ICUR"CUReCURE!-c- extension (C CURIYEN 1/2!
   1/4YEN^1YENOYEN!YENCURYENeCURI .c!-c-
   Aae'O:YEND-YENCURYENEYENeYEN-aYENO:YEN,YENS:YEN-YENEYENOYEN!YENCURYENeCURI
   .o CURECURCURCUR|CUReCUR|CURE!-c-YENOYEN!YENCURYENeCURI 1/4iI`aCURo
   1/4"CUR^1EoENOT) CURE 1 CUR<<CURe 3 E,>>uENOTI *CURC,CUR^1CUR<<CURe!-c-
   basename CUREEOCUR+-CUReCUR`iCUReE,>>u?oCURI 10 CUR<<CURe 12
   CUR.CUR<<>>A:CURACURAECURCURCURTHCUR>>CURo!-L- YEN 1/2! 1/4YEN^1YEN^3!
   1/4YENEA(c),aeYEN.YEN^1YENAEYEN`aCURa:YEN"YENC,YEN-L-YEN?CURIA:I 3/4i!-c-
   AEE 1/4<<CURIIU:AA-aCURICUR?CURaCURECURuCUReCURE 2
   E,>>uCURoYENOYEN!YENCURYENeI
   3/4CURIADEG,aaCUREEO^2ACUR.CURTHCUR^1CURICURC,!-c- 
   1/4A-oYCURE>>ECUR"CUReCURICURI!-c-8 CUR<<CURe 10
   E,>>uCURECURECUReCURTHCUR^1!-L- basename
   CURECUR.CURAE+-N,`iCURoDEG`iA+-,`i (CUR?CURECUR"CURD- multiplexer)
   >>ECUR|CURACUR+-CURC,!-c- 'EA+-CURE 10 CUR<<CURe 12
   E,>>uCURECURECURACURAECUR.CURTHCUR|CURC,CUR.CURc,CUR|!-L-

   CUR^3CURICUReCUR|CUREA(c),ACURo 1/4eCUReCURICURIEO^2A:C,
   1/2CURC,CURICUR-c-CUReCURTHCUR>>CURoCURNOT!-c- 'i,+-CURE
   3/4`i^1c,CURaCUR-c-CUReCURTHCUR^1!-L- A 3/4CURI UNIX
   YEN.YEN^1YENAEYEN`aCURC,CURI!-c- CUReCUReA:^1CURCURYENOYEN!YENCURYENeI
   3/4CURo 1/4oCUR+-EOCUR+-CUReCURaCURICURI
   1/4A-oYCUREYENOYEN!YENCURYENeCURo-oiA(R)CUR^1CURe>>thAAACURC,YENOYEN!YENCURYENeI
   3/4CURo AUCUReuICURaCUReCURaCURICURNOTCUR-c-CUReCUR<<CUReCURC,CUR^1!-L- C
   CURIYEN 1/2! 1/4YEN^1YEN^3! 1/4YENEYENOYEN!YENCURYENe multiplexer.c
   (CUR^1CURC,CURE 13 E,>>uCURC,CUR^1) CURIYEN 1/2! 1/4YEN^1YEN^3!
   1/4YENEA(c),aeYENOYEN!YENCURYENeCURI!-c- AENOTCURE s.
   CURNOTEO^2ACURuCUR`iCURAE s.multiplexer CURECURECUReCURTHCUR^1!-L-
   CUR^3CURIYENOYEN!YENCURYENeCURI!-c-C YEN 1/2! 1/4YEN^1CURIE, 1/2nCURI
   troff YEN 1/2! 1/4YEN^1YENOYEN!YENCURYENe multiplexer.ms CURIYEN 1/2!
   1/4YEN^1YEN^3!
   1/4YENEA(c),aeYENOYEN!YENCURYENeCUREP:eEICURNOTCURA:CURCURTHCUR>>CURo!-L-
   YEN 1/2! 1/4YEN^1YEN^3!
   1/4YENEA(c),aeYEN.YEN^1YENAEYEN`aCURICUR^3CURIIa:AeCUREAD-CUR.CURAE.U^1d-CURo
   1/2D-CURuCURECURCURCUR?CURa!-c- CUR^3CUR`iCUReCURI 2
   CURA:CURIYENOYEN!YENCURYENeAEaIAECURI 1/4eCUReDEGaCUR"CURIIAEDEG
   *CUREE-A,CUR.CURTHCUR^1!-L- AiDEGO? 1/4CUR-YEN^3!
   1/4YENC,YEN-L-YENoYENDEGCUR^1CUR`iCURD-CUR^3CURICUReCUR|CUREIa:AeCURIEoCUR+-CUReCUR`iCURTHCUR^1CURNOT!-c-
   4.2BSD CURC,YENiYENoYENDEGYENOYEN!YENCURYENeYENI!
   1/4YEN`aCURNOTAE^3AEthCURuCUR`iCUR?CUR^3CURECURC, CUR^3CURIIa:AeCURI 1/4A
   1/4AAA-aCURECURECUR-CURECUReCURTHCUR.CUR?!-L-

2.8. YENOYEN!YENCURYENeuI?u!^1 1/2

   YENi!
   1/4YEN<<YENeYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUREAD-CUR^1CUReA`a-oiCURECURIAEo
   1/4iI`aCUR-c-CUReCURTHCUR^1!-L- CURTHCUR-o!-c-YENi!
   1/4YEN<<YENeYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUR^1CURUCURAECUREP:|A:ICUR.CURAE
   ^3NOTAO/^2 1/2CURuCUR`iCUR?YENOYEN!YENCURYENeCURIYENI!
   1/4YENssYENoYENDEG!-c-YENiYENAYEN-!-c-^3a:CUReAAo:CURAE!-c-
   ADEGA'EIy!-c-EY,iCURECURCURCURACUR?!-c-YENC,!
   1/4YEN?CURIuI?EyE!CURECURIAEEI(c)CUR.CUR?u!C, 1/2CURC,CUR^1!-L- 4.4BSD
   CURICUR^3CUR`iCUReCURIu!C, 1/2CURoA:oP:!CUR^1CUReA+-DEG`iCURI
   1/4AAoCURoE-:CUR"CURAECURCURCURTHCUR^1!-L-

   CURaCUR|DEG`iCURA:CURIuI?C,THAI 3/4aaCURECUR-aCUR+-CUReYENC,! 1/4YEN?^1
   1/2A(R)CURE'EIyCURC,CUR^1!-L- YENOYEN!YENCURYENeAEaIAECURouI?C,THAI
   3/4aaCUREC,UAO:CUR^1CUReCURICURIYENOYEN!YENCURYENeuI?u!^1
   1/2CURIIo^3a:CURC,CUR-c-CURe!-c- 4.4BSD CURI 3 
   1/4iI`aCURIDEGUCURECUReYENOYEN!YENCURYENeC,UAO:E!CUREAD-+-thCUR.CURAECURCURCURTHCUR^1!-L-

     * AAAAAyAA-aCURE Berkeley Fast Filesystem

     * Sprite CURECURCURCUR| OS CURIAss. *CUREI^3IeCUR^1CURe YENiYENDEG^1
       1/2ACUR^2 1/2YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a [Rosenblum &
       Ousterhout, 1992]

     * YENaYENaYENeYENU! 1/4YEN^1CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

   CUR^3CUR`iCUReCURIYENOYEN!YENCURYENeuI?u!^1 1/2CURI^1
   1/2A(R)CURICURTHCURACUR?CUR-DEGUCURECUReCURaCURICURC,CUR^1CURNOT!-c- CUR
   1/2CUR`iCURo>>EINCUR^1CUReYEN
   *YENiYEN>>YEN^1CUR<<CUReCURIDEGaCURCURCURoDEGO
   1/4+-CUR^1CUReCUR^3CURECURICUR-c-CUReCURTHCUR>>CURo!-L-

   Fast Filesystem CURI!-c-YENC,! 1/4YEN?CURoYEN.YENeYENoYENAYENDEGYENe!
   1/4YEN *CURECURCURCUR|A+-DEGICURC,^1 1/2A(R)CUR.CURTHCUR^1!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a^3NOTAO/CURIC,UAO:CUR<<CURe^1ICUR"CURAEAE+->>thCUREYEN-c-YEN-YEN>>YEN^1CURuCUR`iCURa:CUR^1CURCURCURE^1ICUR"CUReCUR`iCUReYENOYEN!YENCURYENeCURI!-c-
   AE+-CUR,YEN.YENeYENoYENAYENDEGYENe! 1/4YEN
   *CUREuI?CURuCUR`i!-c-AE+->>thCUREYEN-c-YEN-YEN>>YEN^1CURuCUR`iCURe^2A:C,
   1/2ACURIA:aCURCURYENOYEN!YENCURYENeCURI
   DEGUCURECUReYEN.YENeYENoYENAYENDEGYENe! 1/4YEN
   *CUREuI?CURuCUR`iCURTHCUR^1!-L- CUR^3CURIuI?u!^1 1/2CURC,CURIDEGE
   3/4aaCURICUReCUR|CURE!-c-E-L-?oCURIYENOYEN!YENCURYENeCURNOTAE+->>thCURE
   1/2nCUR^1thCURTHCUR`iCUR?CURECUR.CURAECURa!-c- uI?CURuCUR`iCURe 3/4`i
   1/2eCURIYENC,YEN-L-YEN^1YEN-CURICURTHCURACUR?CUR-DEGaCUR| 3/4`i
   1/2eCURECURECURe^2A:C, 1/2ACURNOTCUR-c-CUReCURICURC,CUR^1!-L-

   YENiYENDEG^1 1/2ACUR^2
   1/2YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI!-c-YENC,!
   1/4YEN?CURoYENiYENDEGCURECURCURCUR|.ACURC,^1 1/2A(R)CUR.CURTHCUR^1!-L-
   CUR-c-CURe>>thAAACURC,uI?CURuCUR`iCUR?YENC,!
   1/4YEN?CURICUR^1CURUCURAEDEG`iCURA:CURE 1/2,CURaCUReCUR`i!-c-
   AE+-CUR,YENC,YEN-L-YEN^1YEN-CURI 3/4`i 1/2eCURE
   1/2nCUR^1thCURTHCUR`iCURTHCUR^1!-L- YENC,! 1/4YEN?CURNOT 3/4aa
   1/2nCURCURuCUR`iCUReCUR^3CURECURIAa:AD-CURECUR-c-CUReCURTHCUR>>CURo!-L-
   YENOYEN!YENCURYENeCURI^1^1?.CURI!-c-YENOYEN!YENCURYENeCURo 3/4aa
   1/2nCURCUR^1CUReAaaCURiCUReCURE ?.CUR.CURCURYENOYEN!YENCURYENeCURo
   1/2nCUR^1thCURoCURC,CUR
   1/2CURIYENOYEN!YENCURYENeCURoAO:CUR'^1CUR"CUReCUR^3CURECURECUReCURACURAE^1OCURECURiCUR`iCURTHCUR^1!-L-
   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCUREP:oCURIAEIICURNOTCURECUR-CURECURe?.CUR?CUREP:oCURIAEIICURNOTENOTI
   *CURECURECURACUR? 3/4`i^1c,CURI YEN'YENss 1/2,CURa (garbage-collection)
   YEN *YENiYEN>>YEN^1CURNOT 1/4A^1OCURuCUR`i!-c-
   ,AACURCURYENOYEN!YENCURYENeCURNOT-oAEIo/INCURuCUR`iCURTHCUR^1!-L-

   YENaYENaYENeYENU!
   1/4YEN^1CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI!-c- YENC,!
   1/4YEN?CURo^2 3/4AUYENaYENaYENeCUREuI?CUR^1CUReCUReCUR|CUREAss.
   *CURuCUR`iCUR?CURaCURICURC,CUR^1!-L- CUR^3CUR`iCURI /tmp
   CURICUReCUR|CURE^1aA(R)YEN-c-YEN-YEN>>YEN^1CURNOTENOTI *CURC,!-c-
   +-EA^3AA-aCURC,CURECURCURYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURE>>ECURiCUR`iCURTHCUR^1!-L-
   YENaYENaYENeYENU!
   1/4YEN^1YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIIU:E,CURI!-c- ^2
   3/4AUYENaYENaYENe>>n,>>CURIIo/INIICURo^2A:C, 1/2CURE,ACURe-oC,
   3/4(R),ACUREEYCURA:CUR^3CURECURECUR-c-CUReCURTHCUR^1!-L-

2.9. YENIYENAYENEYENi! 1/4YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a

   AAo: 1/2e!-c-YENIYENAYENEYENi! 1/4YEN-A:I?(R)CURIYENC,!
   1/4YEN?CURoCUR-c-CUReYENTHYEN.YENoCUR<<CURe A 3/4CURIYENTHYEN.YENoCURO/AA
   3/4A-:CUR^1CUReCUR?CURaCUREINCURCURCUReCUR`iCURAECURCURCURTHCUR.CUR?CURNOT!-c-
   CURICURACURECUR 1/2CUR`iCURI!-c-YENae!
   1/4YENP:CURNOTIYENCUR`iCUR?YENTHYEN.YENoCURO/YENiYENDEGYENCURYENo^2A:C,
   1/2CURE.ACUREE-AA,CUR.CURTHCUR.CUR?!-L- 
   1/4!CURE'u:AOCURuCUR`iCUR?CURICURIYENae! 1/4YENP:CURNOTYENC,! 1/4YEN?CURo
   1/4eCURe^1OCUR-CURICURC,CURICURECUR-!-c- YENae! 1/4YENP:CURI,uCUREYENC,!
   1/4YEN?CURNOTCURa:CURACURAECUR-CUReCUReCUR|CURECUR^1CUReCUR^3CURECURC,CUR.CUR?!-L-
   CUR 1/2CURICUR?CURaCUREA,CURTHCUR`iCUR?CURICURNOTYENIYENAYENEYENi!
   1/4YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURC,CUR^1!-L- YENi!
   1/4YEN<<YENeCURC,-oiP:ECUR.CURAECURCURCUReYENae! 1/4YENP:CURIYEN!
   1/4AEthII>>thCUREYENIYENAYENEYENi! 1/4YEN-CURIAUCUR`iCURo'P:CUR,CUR-o!-c-
   CUReCURe+-thAAuACURIIECURCUR'A:P:CURo
   1/4eCUREAEthCUR`iCUR?CURICURC,CUR^1!-L-

   YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURoYENi!
   1/4YEN<<YENeYENTHYEN.YENoCURE>>yCURACURAECUR-CUReCUR^3CURECURI 
   1/2e'u:CURIYENu! 1/4YEND--YEN-YENeYENCURYEN-c-YENoYENE.?YEN-c-YEN
   *YENeYEN+-! 1/4YEN.YENc,YENoCURIAaeCURC, 1/4c,I
   *CURECURaCURICURICUROCURECURA:CURC,CUR.CUR?!-L- YENu! 1/4YEND- CURI 1
   CURA:CURaCUR.CUR-CURICUR 1/2CUR`iDEGE
   3/4aaCURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURo YEN"YEN-YEN^1YENY!
   1/4YENECUR^1CUReYENeYENa! 1/4YENECURIYENTHYEN.YENoCURC,CUR^1!-L-
   YEN-YENeYENCURYEN-c-YENoYENE CURICUR
   1/2CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURoYENCURYENoYENY!
   1/4YENECUR^1CUReYENi! 1/4YEN<<YENeCURIYENTHYEN.YENoCURC,CUR^1!-L- YENi!
   1/4YEN<<YENeCURIYEN-YENeYENCURYEN-c-YENoYENECUR<<CURe,<<CUReCURE!-c-
   YENeYENa!
   1/4YENECURC,YENTHYEN|YENoYENECURuCUR`iCUR?YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURI
   YENi! 1/4YEN<<YENeCUREYENTHYEN|YENoYENECURuCUR`iCUR?A
   3/4CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURICUReCUR|CURE
   YENOYEN!YENCURYENeYENA:YENe! 1/4CURII 3/4ADEGP:o'O:CURE,
   1/2CUR`iCURTHCUR^1!-L- YENi!
   1/4YEN<<YENeCURIYEN-YENeYENCURYEN-c-YENoYENECURI YENeYENa!
   1/4YENECURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a
   3/4aaCUREYENC,YEN-L-YEN`iYEN-YENEYENeCURoENCUR"CUR?CURe!-c- YENi!
   1/4YEN<<YENeCURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a
   3/4aaCURC,CUR^1CUReCURICURECURTHCURACUR?CUR-AE+-CUR,CUReCUR|CURE YENeYENa!
   1/4YENECURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURC,AEECURss
   1/2nCURCURoCUR.CUR?CURe!-c- YEND-YENCURYENEYENeCURo
   1/4A^1OCUR.CUR?CUReCURC,CURCURTHCUR^1!-L-

   YENi! 1/4YEN<<YENeCURIYEN-YENeYENCURYEN-c-YENoYENECURNOT YENeYENa!
   1/4YENECURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a
   3/4aaCURC,A`a-oiCUR^1CUReCURE!-c- CUR 1/2CURIA`a-oiI
   *uaCURNOTCUROCURECURTHCURECURaCURECURuCUR`iCURAEYENu!
   1/4YEND-CUREA-:CUReCUR`iCURTHCUR^1!-L- YENu! 1/4YEND-CURII
   *uaCURuCUR`iCUR?A`a-oiCURo^1OCURCUR!-c-
   YEN-YENeYENCURYEN-c-YENoYENECUR<<CUReI *uaCURuCUR`iCUR?
   3/4d-Eo!-c-CURaCUR.CUR-CURI!-c- CURECUR 1/4CUR 1/2CURII
   *uaCURNOTunAa:CURuCUR`iCUR?CUR<<CURo 1/4"CUR^1YEN"YENe!
   1/4CURoEO:CUR.CURTHCUR^1!-L- AANOTAUCUREAC, 1/2CURoAEACUReCURECURI!-c-
   YEN-YENeYENCURYEN-c-YENoYENECURIENEECUREYEN-c-YEN-YEN>>YEN^1CURuCUR`iCUR?YENC,!
   1/4YEN?CURoYENYENaYENAYEN.YENaaCUR.CURECUR+-CUR`iCURD-CURECUReCURTHCUR>>CURo!-L-
   YENeYENa!
   1/4YENEYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURIE-L->>"CURuCURI!-c- YENu!
   1/4YEND-CUREA?CUR-CURIYEN-YENeYENCURYEN-c-YENoYENECURI'O:CURIYENYENaYENAYEN.YENaaCURIDEG`i'OACURoDEGY>>yCUR^1CUReCUR^3CURECURECUR-c-CUReCURTHCUR^1!-L-

   A:^1'u:CURECURiCUR?CURACURAE?oA?CUR-CURIYENeYENa!
   1/4YENEYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aYEN
   *YENiYENEYEN^3YENeCURNOT^3<<E-CURuCUR`iCURAECURCURTHCUR.CUR?CURNOT!-c-
   UNIX
   YEN.YEN^1YENAEYEN`aCURECUR-aCURCURCURAE-oC,CURaEauUCUR.CURAECURCURCUReCURaCURICURI!-c-
   CUR 1/2CURIYEN *YENiYENEYEN^3YENeCURE 1/4AAoCURIAc,EoENOTCURNOT Sun
   Microsystems CURECUReCURACURAE^1OCURECURiCUR`iCUR? YENIYENAYENEYENi!
   1/4YEN-YENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`a (NFS) CURC,CUR^1!-L- 
   1/4AAoCURIYEN
   *YENiYENEYEN^3YENeuNOT^3ECUR<<CUReAEEI(c)CUR.CURAE^1OCURiCUR`iCURTHCUR.CUR?CURNOT!-c-
   4.4BSD YEN<<! 1/4YENIYENeCURI NFS YEN *YENiYENEYEN^3YENeCURoYENuYENY!
   1/4YENECUR.CURAECURCURCURTHCUR^1 [Macklem, 1994]!-L- NFS YEN
   *YENiYENEYEN^3YENeCURECURA:CURCURCURAECURI 9 
   3/4ICURC,AaIACUR.CURAECURCURCURTHCUR^1!-L-

2.10. A 1/4Eo:

   A 1/4Eo:CURI!-c-E, 1/2`aAA-aCUREYEN.YEN^1YENAEYEN`a I/O
   A`a-oiCURICURaCURACURiCURoCURICUR^3CURE!-c- AEthIIE,>>uCURIEO 1/2,CURa:
   1/2D-IICURIYENC,YEN-L-YEN`iYENCURCURIA(c),aeCURoCUR^1CUReCUR?CURaCURIA
   1/4Eo:,C,ICURIA`a-oiCURoCUROCURECURECUR-aCURe YENuYENY!
   1/4YENECUR.CURAECURCURCURTHCUR^1!-L-
   DEG`iEO:A:aCURCURYEN`iYENUYENeCURECUR-c-CUReCURICURI!-c-YENI!
   1/4YENEYEN|YENS:YEN-c-A 1/4Eo:YENY! 1/4YENECURoA(c),aeCUR^1CUReA
   1/4Eo:YENC,YEND-YENCURYEN^1YENEYENeYENCURYEND-CURC,CUR^1!-L- A
   1/4Eo:AEthIICURI!-c-CUR?CURECUR"CURD-YENU:! 1/4YEN`i!
   1/4YENECURICUReCUR|CURE'd-AAAA-aCUREA:I?(R)AEAACURa:!-c-
   YENNYENeYENAEYEN-L-,!-o-oCURICUReCUR|CUREYEN
   1/2YENOYENEYEN|YENS:YEN-c-CURC,A(c),ae^2A:C, 1/2CUREYENNYENeYENa!
   1/4YEN?I`aCURE  1/2 3/4CURACURAEDEG.CURiCUR`iCURTHCUR^1!-L-

   A 1/4Eo:YENC,YEND-YENCURYEN^1YENEYENeYENCURYEND-CURI
   3/4aaCURIAO/CURECURI!-c- E,>>u
   1/2eIyCURoCURECURIA:o/AAU^1OCURECUR|CUR<<CURoA:euACUR.CURAECURCURCURe
   YENeYENCURYENoYENC,YEN-L-YEN.YEN *YENeYENo (line discipline; ^2oAthA
   1/4Eo:A(c),ae) CURE,AECURD-CUR`iCUReCURaCURICURNOTCUR-c-CUReCURTHCUR^1!-L-
   AD-IAAA-aCUREYENiYENDEGYENCURYENoCURoCUR^1CUReCUR?CURaCUREYENY!
   1/4YENECURNOT
   INCURCURCUReCUR`iCUReCURECURCURECURIYENC,YENOYEN(c)YENeYENECURIYENeYENCURYENoYENC,YEN-L-YEN.YEN
   *YENeYENoCURNOTA-aAoCURuCUR`i!-c- CUR
   1/2CURIYENeYENCURYENoYENC,YEN-L-YEN.YEN
   *YENeYENoCURIYEN<<YENIYENEYEN<<YENeYENa!
   1/4YENECURC,AEDEG-oiCUR.CURTHCUR^1!-L- CUR^3CUR`iCURI!-c-AEthIICURNOTE,
   1/2`aAA-aCURE^1O>>O/,thEO 1/2,u!C, 1/2CURoA:oP:!CUR^1CUReCUReCUR|CURE
   1/2eIyCURuCUR`i!-c- AEthII 1/4<<AICURo^1OA+-DEGICURI 1/2eIyCURC,E 1/2,
   1/2CUR^1CUReYENa! 1/4YENECURC,CUR^1!-L-

   YEN^1YEN-YENe! 1/4YENoYEN"YENC,YEN-L-YEN?CURa:!-c-A
   3/4CURIYEN^3YENoYENOYENaa! 1/4YEN?CUREA:I?(R)CURoCUR^1CUReYEN
   *YENiYENDEGYENeYEN`a (IoAi: telnet CURECURE)
   CURI!-c-EaA:IEoYEN<<YENIYENEYEN<<YENeYENa! 1/4YENE (raw YENa!
   1/4YENECURa:YENYENaYENeYEN-YEN?CUR'CURECURIYENa! 1/4YENE
   (character-at-a-time mode) CURECURECURECURa,AECURD-CUR`iCURTHCUR^1)
   CURC,AEDEG-oiCUR.CURTHCUR^1!-L- CUR^3CUR`iCUReCURIYENa!
   1/4YENECURC,CURI!-c-AEthIICURICUR
   1/2CURICURTHCURTHCUR^1CURDEGCUREAEECURss^1thCURssA|CURI YEN
   *YENiYEN>>YEN^1CURO/CUREAAICURuCUR`iCURTHCUR^1!-L- CUR^1CURUCURAECURIAEA
   1/4`iE,>>uAEthIICURI 1/2eIyCURIIu,u^2 1/2CURuCUR`iCURAECURCURCURAE!-c- -oi
   1/2u:CURa:CUR 1/2CURIA 3/4CURI^1OEO 1/2,
   1/2eIyCURI^1OCURECURiCUR`iCUR-o!-c- CUR^1CURUCURAECURIE,>>uCURICUR
   1/2CURIA 1/4Eo:CUR<<CUReAEECURss^1thCURaCUR|CURECUR.CURAECURCURCUReYEN
   *YENiYEN>>YEN^1CURO/CUREAAICURuCUR`iCURTHCUR^1!-L-

   A 1/4Eo:CURI!-c-CUR^3CURIAEoCURA:CURII 3/4P:EA 1/4CURIYENa!
   1/4YENECURIAae'O:CURIA?CUR-CURIAECURss^1c,CURiCUR>>CURC,
   AssA:eCUR^1CUReCUR^3CURECURNOT^2A:C, 1/2CURC,CUR^1!-L-
   CUR?CURECUR"CURD-!-c-CUR-c-CUReYEN^1YEN-YENe!
   1/4YENoYEN"YENC,YEN-L-YEN?CURNOTYENae!
   1/4YENP:CUR<<CUReCURI^3a:CURe^1thCURssCURoEoAE+-'u:AA-aCURE 
   1/4oCUR+-AEthCUR`iCUR?CURCUR
   3/4`i^1c,CURE!-c-YEN.YENDEGYENEYENeCURoA,A(R)CUR^1CUReE,>>uCURa:
   1/2D-IICURII(R)IIA(c),aeCURouo:^2A:CUR.CUR?CURTHCURTH!-c- CUR
   1/2CUR`iDEGE^3DEGCURoEoYEN<<YENIYENEYEN<<YENeYENa!
   1/4YENECURC,AEDEGCUR<<CUR.CURAE!-c-CUR^3CUR`iCUReCURIE,>>uDEGE^3DEGCURIE,>>uCURo
   CURTHCURACUR?CUR-^2o
   1/4aCUR.CURECURCURCURTHCURTHAAICUR^1!-c-CURECURCURCUR|CUR^3CURECURNOT^2A:C,
   1/2CURC,CUR^1!-L-

   1/2D-IICURC,CURI!-c-A 1/4Eo: 1/2eIyCURI 1/4!CURICUReCUR|CUREA+-
   1/2aCUREADEG.AYENu! 1/4YENOYEN^1CURoA:oP:!CUR.CURAECURCURCURTHCUR^1!-L-

     * YENeYENCURYENoYENOYEN-L-! 1/4YENECURoYENYENaYENeYENAYEN,YENeYEN?!
       1/4YENoCUREYENeYENCURYENoYENOYEN-L-! 1/4YENECURIEACUROCURO/CUREEN'^1

     * AEAA:eCURIE,
       1/2`aAA-aCUREA(c),aeE,>>uCURI,aaCUREYENC,YEN-L-YEN`iYENCURCURoATHAEth

     * YEN?YENO:E,>>uCURIAA,^3<<

     * YEN"YEN^3! 1/4CURuCUR`iCUR?EoE 1/2 1/4"YEN-c-YEN^1YEN! 1/4E,>>uCURo
       ``^C'' (CUR^1CURECURiCURA!-c-YEN-c-YEN^1YEN!
       1/4CURIYENYENaYEN`iYENAYENEE,>>u CURI,aaCURE!-c-CUR
       1/2CURIYENYENaYENeYEN-YEN?CURIAICURoYEN-c-YEN^1YEN! 1/4CURI ``@''
       E,>>uCUR<<CUReCURIYEN-aYENOYEN>>YENAYENECURECUR.CUR? YEN-c-YEN^1YEN!
       1/4E,>>u) CURECURCURCUR|AEoE,>>uCURIEACUROCURECUR.CURAEE 1/2 1/4"

   CUR^3CUR`iCUReCURIADEG.Au!C, 1/2CURI!-c-YEN^3YENoYENEYENi!
   1/4YENeYENeYEN-YEN"YEN^1YENECURo>>ECURACURAECUR 1/2CUR`iCUR
   3/4CUR`iAEEI(c)CURE Iu,u^2 1/2CUR^1CUReCUR^3CURECURNOT^2A:C,
   1/2CURC,CUR^1!-L-

2.11. YEN *YENiYEN>>YEN^1'O:A:I?(R) (IPC)

   4.4BSD CURIYEN *YENiYEN>>YEN^1'O:A:I?(R) (IPC)
   CURI!-c-YEN^3YENssYENaaYENEYEN+-! 1/4YEN.YENc,YENo
   YENEYENaYENCURYENoAEaCURC,AE-CUR-CUReCUR|CURECURECURACURAECURCURCURTHCUR^1!-L-,
   1/2-ossYENuYENY! 1/4YENECURuCUR`iCURAE
   CURCURCUReYENEYENaYENCURYENoCURECURI!-c-AE+-CUR,YENTHYEN.YENo 3/4aaCURC,
   1/4A^1OCUR.CURAECURCURCUReE-L-?oCURIYEN *YENiYEN>>YEN^1'O:
   CURC,CURIA:I?(R)INCURIYENi! 1/4YEN<<YENeYENEYENaYENCURYENo!-c- TCP/IP YEN
   *YENiYENEYEN^3YENeYEN^1YENCUR! 1/4YENEINCURI (CUR-aCUR 1/2CUReCUR- the
   Internet AEa) YENCURYENoYEN?! 1/4YENIYENAYENEYENEYENaYENCURYENo!-c-
   ISO/OSI YEN
   *YENiYENEYEN^3YENeYENOYEN!YENssYENeCURC,CURIA:I?(R)CURo^1OCURECUR|CUR^3CURECURNOTENOTI
   *CUREYENuYENCURYENE'O:A:I?(R)INCURI ISO/OSI YEN
   *YENiYENEYEN^3YENeYENOYEN!YENssYENe!-c- XEROX Network Systems (XNS)
   CURo>>EINCUR.CUR?YEN *YENiYEN>>YEN^1'O:A:I?(R)INCURI XNS
   YENEYENaYENCURYENoCURNOT'THCURTHCUR`iCURAECURCURCURTHCUR^1!-L-

   YENEYENaYENCURYENoAEaCURC,CURI!-c-YEN
   1/2YEN+-YENAYENECURECUR.CURAEAICUReCUR`i CURAECURCURCUReA:I?(R) 1/2-aA
   1/4'O:CURC,A:I?(R)CURNOT^1OCURECURiCUR`iCURTHCUR^1!-L- 2.6
   AaCURC,AaIACUR.CURAECURCURCUReCUReCUR|CURE!-c- socket
   YEN.YEN^1YENAEYEN`aYEN^3! 1/4YENeCURIYEN
   1/2YEN+-YENAYENECURoA,A(R)CUR.!-c-CUR 1/2CURIu
   1/2O>>OCURoEO:CUR.CURTHCUR^1!-L- A 3/4CURI IPC YEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURECURA:CURCURCURAECURI 11  3/4ICURC,^2oAaCUR.CURTHCUR^1!-L-
   ^3AEYEN
   1/2YEN+-YENAYENECURI!-c-A:I?(R)YEN>>YENTHYENoYENAEYEN-L-YEN-YEN^1CURoA:euACUR.CUR?.?CURo>>yCURACURTHCUR^1!-L-
   CUR^3CURIYEN>>YENTHYENoYENAEYEN-L-YEN-YEN^1CURECURI?(R)IeA!-c- 1/2c,
   1/2o/!-c-YENaYENAYEN>>! 1/4YEN,CURI 1/2AAE-L-EE>>ssCURNOT
   'THCURTHCUR`iCURAECURCURCURTHCUR^1!-L-

   ^3AEYEN 1/2YEN+-YENAYENECURI!-c-A:I?(R)YEN *YENiYENEYEN^3YENe
   CURE'O/I-c-CUR.CURAECURCURCURTHCUR^1!-L- CUR^3CUR^3CURC,CURIYEN
   *YENiYENEYEN^3YENeCURI!-c-A:I?(R)Ae 1/4eCURIYEN 1/2YEN+-YENAYENECURI.?CURE
   1/2 3/4CURACURAE CUR 1/2CURIYEN 1/2YEN+-YENAYENECURC,I
   *uaCURuCUR`iCURAECURCURCUReYEN>>YENTHYENoYENAEYEN-L-YEN-YEN^1CURoA:oP:!CUR.CURTHCUR^1!-L-
   YEN-c-YEN *YENeYEN+-! 1/4YEN.YENc,YENoCURI!-c-YEN
   1/2YEN+-YENAYENECURoA,A(R)CUR^1CURe-oYCUREAEAA:eCURIYEN
   *YENiYENEYEN^3YENeCURo I
   *uaCUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1CUR.!-c-CURTHCUR?!-c-CUR
   1/2CURIYEN.YEN^1YENAEYEN`aCURI!-c- 3/4IeA,A(R)CURuCUR`iCURe YEN
   1/2YEN+-YENAYENECURI.?CURECUROCURuCURiCUR.CURCURYEN
   *YENiYENEYEN^3YENeCURoA-aAoCUR^1CUReCUReCUR|CURECUR^1CUReCUR^3CURECURa
   ^2A:C, 1/2CURC,CUR^1!-L-

   YEN 1/2YEN+-YENAYENECURI!-c-CUR 1/2CURIYEN
   1/2YEN+-YENAYENECURE'O/I-c-CURAACUR+-CURuCUR`iCUR?
   (YEND-YENCURYENoYENECURuCUR`iCUR?)
   YEN-c-YENEYEN`iYEN^1CURo>>yCURA:CUR^3CURECURNOTCURC,CURCURTHCUR^1!-L- YEN
   1/2YEN+-YENAYENEYEN-c-YENEYEN`iYEN^1CURI.A 1/4DEGCUREDEGOI-L-CURI!-c-CUR
   1/2CURIYEN 1/2YEN+-YENAYENECURNOTA,A(R)CURuCUR`iCUR?
   YEN^3YENssYENaaYENEYEN+-!
   1/4YEN.YENc,YENoYENEYENaYENCURYENoCUREDEGIA,CUR.CURTHCUR^1!-L- YENi!
   1/4YEN<<YENeYENEYENaYENCURYENoCURECUR-aCURCURCURAEYEN
   1/2YEN+-YENAYENECUREI 3/4ADEGCURoYEND-YENCURYENoYENECUR^1CUReCURE!-c- CUR
   1/2CURIYENOYEN!YENCURYENeYEN.YEN^1YENAEYEN`aCURECUR-aCURCURCURAEYENOYEN!YENCURYENeCURNOTA,A(R)CURuCUR`iCURTHCUR^1!-L-

   YEN 1/2YEN+-YENAYENECURoA:ICUR,CURAEA-: 1/4o?(R)CURuCUR`iCUReA:I
   3/4iCURIYENC,!
   1/4YEN?CURI.?CURAACUR+-CURuCUR`iCURAECURCURCURTHCUR>>CURo!-L- YENC,!
   1/4YEN?E 1/2, 1/2CURECURA:CURCURCURAECURI!-c-YEN
   *YENiYEN>>YEN^1'O:A:I?(R)u!C, 1/2CURI-oC,
   3/4aaDEGICUREDEGIAO:CUR^1CUReYENeYENCURYENO:YENeYENeCUREAOC,CURCURNOTCUR-c-CUReCURTHCUR^1!-L-
   A:I 3/4iYENC,!
   1/4YEN?CURIC,UA-:CURE^2ACUR"CURAE!-c-YEN^3YENssYENaaYENEYEN+-!
   1/4YEN.YENc,YENoYENEYENaYENCURYENoCURI access rights
   CURECURCURCUR|AEAEICURE.?CURIYENC,! 1/4YEN?CURI A-: 1/4o?(R)CURoYENuYENY!
   1/4YENECUR^1CUReCUR^3CURECURNOTCURC,CURCURTHCUR^1!-L-
   CUR?CURECUR"CURD-YENi! 1/4YEN<<YENeYENEYENaYENCURYENoCURIYEN
   *YENiYEN>>YEN^1'O:CURC,u 1/2O>>OCURoAAICUR^1CUR?CURaCURE!-c- CUR^3CURIu!C,
   1/2CURo>>EINCUR.CURTHCUR^1!-L-

   4.2BSD CUReCUReADEGCURI UNIX CURECUR-aCUR+-CUReYENIYENAYENEYENi!
   1/4YEN-u!C, 1/2CURI 1/4AAoCURI!-c-
   Ac,A:nYENYENaYENeYEN-YEN?YENC,YEND-YENCURYEN^1YENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURoYEN-a! 1/4YEND-YENi! 1/4YENECURuCUR>>CUReCUR^3CURECURC,
   AEDEG-oiCUR.CURAECURCURCURTHCUR.CUR?!-L- YEN
   1/2YEN+-YENAYENEYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURIIU:AA-aCURIDEG`iCURA:CURI!-c-A+- 1/2aCUREYEN
   *YENiYENDEGYENeYEN`aCURNOT YEN^1YENEYENe!
   1/4YEN`a.?CURIA:I?(R)CURoEN^1^1CUR>>CUR-oCUREAEDEG-oiCUR^1CUReCUReCUR|CURECUR^1CUReCUR^3CURECURC,CUR^1!-L-
   CUR 1/2CURICUReCUR|CUREYEN *YENiYENDEGYENeYEN`aCURI!-c-read CURE write
   CURIYEN.YEN^1YENAEYEN`aYEN^3!
   1/4YENeCURNOTEN^1^1CURuCUR`iCURECUR+-CUR`iCURD- AEDEG-oiCUR.CURTHCUR^1!-L-
   AAo:A^3!-c-,uCURIYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURNOTCUR
   1/2CURICURTHCURTH>>A:CURuCUR`iCUR`iCURD-!-c- YEN^1YENEYENe!
   1/4YEN`a.?CURIYEN 1/2YEN+-YENAYENE
   3/4aaCURC,AEDEG-oiCUR.A^3CUR+-CUReCUReCUR|CURECURECUReCURTHCUR^1!-L- send
   CURI^3AE,AECURO
   1/2D-CUR.CURC,>>O/A:eCUR.CURECUR+-CUR`iCURD-CURECUReCURECURCUR
   A-:?(R)AeYEN-c-YENEYEN`iYEN^1CURo>>yCURA:YENC,!
   1/4YEN?YENDEGYENeYEN`aCURoA-:?(R)CUR^1CUReCUReCUR|CURE!-c-
   CUReCUReE-L->>"CUREYEN
   1/2YEN+-YENAYENEINCURE?.CUR.CURCURYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURNOTA:E^2ACURuCUR`iCURTHCUR.CUR?!-L-

   CURaCUR|DEG`iCURA:CURIIo/AAACURI!-c-CUR^3CURI?.CUR.CURCURYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURIDEGU:?-c-ACURNOT Eo
   3/4iCUREIECURCURCURECURCURCUR|CUR^3CURECURC,CUR^1!-L- YEND-! 1/4YEN-YEN`i!
   1/4CUR<<CUReAEth 1/4eCURC,CURCUR?YENAEYEN^1YENEYENeYENe!
   1/4YEN^1CURICUR^1CURDEG,aaCURC,!-c- YEN
   1/2YEN+-YENAYENEYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURI UNIX
   YENUYENoYENACURECUReCURACURAE System III
   CUREDEGU:?-c-CURuCUR`iCURTHCUR.CUR? (CUR.CUR<<CUR.!-c-AT&T CURI System V
   Release 4 CURIYENeYENe! 1/4YEN^1CURTHCURC,YEN
   1/2YEN+-YENAYENEYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURoYENuYENY!
   1/4YENECUR>>CUR-o!-c- CUR 1/2CURIAaaCURiCUReCURE Eighth Edition
   CURIYEN^1YENEYENe! 1/4YEN`au!^1 1/2CURo>>EINCUR^1CURe
   CUR^3CURECURo.eCURaCURTHCUR.CUR?)!-L- YEN
   1/2YEN+-YENAYENEYENCURYENoYEN?YENOYENS:! 1/4YEN^1CURICURTHCUR?!-c-Excelan 
   1/4OCURa: Interlan  1/4OCURICUReCUR|CURE
   YENUYENoYENACURECUReCURACURAEA?CUR-CURIYENCUR! 1/4YENuYENIYENAYENEYEN<<!
   1/4YENECURC,AEDEG-oiCUR^1CUReCUReCUR|CUREDEGU:?-c-CURuCUR`i!-c-
   YENTHYEN.YENoCURNOT 3/4(R)CURuCUR^1CUR(R)CURAEYENaYENCURYENoYEN
   *YENiYEN>>YENAYENuAaeCURC,YENIYENAYENEYENi! 1/4YEN-A:I?(R)CURoAEDEG-oi
   CURuCUR>>CUReCUR^3CURECURNOTCURC,CURCURECURCUR PC >>O 3/4`iCUREC,a:CURe
   1/2D-CURuCUR`iCURTHCUR.CUR?!-L- CUR'CUR--oC,P:aCURC,CURI!-c-Microsoft 
   1/4OCURI Windows INCURI Winsock YENIYENAYENEYENi!
   1/4YEN-YENCURYENoYEN?YENOYENS:! 1/4YEN^1CURI'd-E *CURECUR.CURAE YEN
   1/2YEN+-YENAYENEYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURNOT>>ECURiCUR`iCURAECURCURCURTHCUR^1!-L-

2.12. YENIYENAYENEYENi! 1/4YEN-A:I?(R)

   YEN 1/2YEN+-YENAYENE IPC u!^1 1/2CURNOTAD-+-thCUR.CURAECURCURCURe
   YENIYENAYENEYENi!
   1/4YEN-YENEYENaYENCURYENoCURICURCURCUR-CURA:CUR<<CURI!-c-
   YENIYENAYENEYENi! 1/4YEN-YEN
   *YENiYENEYEN^3YENeCURO/CURIYEN-c-YEN-YEN>>YEN^1CURoA:oP:!CUR.CURAECURCURCURTHCUR^1!-L-
   CUR^3CUR`iCUReCURIYEN *YENiYENEYEN^3YENeCURIIyIA 3/4aa!-c- YEN<<!
   1/4YENIYENeCURIYEN 1/2YEN+-YENAYENEYEN
   1/2YENOYENEYEN|YENS:YEN-c-CUReCUReCURa^2 1/4CURIAO/CURECUR-c-CURe
   EICURIYEN 1/2YENOYENEYEN|YENS:YEN-c-CURECUR.CURAE
   1/4AAoCURuCUR`iCURAECURCURCURTHCUR^1!-L- YEN<<!
   1/4YENIYENeCURI!-c-YEND-YENAYENOYEN!'EIy!-c-YENaYENAYEN>>!
   1/4YEN,C,UA-:!-c- ^3AEYEN
   *YENiYENEYEN^3YENeCURO/CURIEAEINYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURoA:oP:!CUR.!-c-
   CURTHCUR?!-c-CURuCURTHCURP:CURTHCUREYENIYENAYENEYENi! 1/4YEN-YEN
   *YENiYENEYEN^3YENeCURo>>EINCUR^1CUReCUR?CURaCURI YENIYENAYENEYENi!
   1/4YEN-YENCURYENoYEN?YENOYENS:!
   1/4YEN^1YENEYENeYENCURYEND-CURO/CURIYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURECURE!-c- A?CUR-CURIEO?iYENu!
   1/4YENOYEN^1CURoA:oP:!CUR.CURTHCUR^1!-L-

   4.2BSD CURNOT
   1/4AAoCURuCUR`iCUR?>>thAAACURC,CURICURuCURTHCURP:CURTHCUREYENIYENAYENEYENi!
   1/4YEN-YEN *YENiYENEYEN^3YENeCURNOT
   >>EINCURuCUR`i!-c-CURTHCUR?^3<<E-AaeCURIAE^3NOTCURECUR-c-CUReCURTHCUR.CUR?!-L-
   CUR 1/2CUR`iCUReCURICUR 1/2CUR`iCUR 3/4CUR`i,C,ICURIP:-CURssCURE
   1/4aaCURssCURo>>yCURACURAECUR-aCURe!-c- IACUReCUR<<CUREIYENCUR`iCUR?YEN
   *YENiYENEYEN^3YENeCURa:YEN *YENiYENEYEN^3YENeYEN^1YENCUR!
   1/4YENECURECURCURCUR|CURaCURICURIA,-ossCUR.CURTHCUR>>CURoCURC,CUR.CUR?!-L-
   4.2BSD CURIE-L-?oCURIYEN
   *YENiYENEYEN^3YENeCUREAD-+-thCUR^1CUReCUR^3CURECURC,!-c- YEND-!
   1/4YEN-YEN`i! 1/4^1>>CURI'A:P:CURC,Io/IN^2A:C,
   1/2CURACURACUR?CURuCURTHCURP:CURTHCUREYENTHYEN.YENo'O:CURC,CURI
   >>n,>>CURIP:|ICURa:!-c-Ae,ss+-?INCURIA:oP:!CURo^2A:C,
   1/2CURECUR.CURAECURCURCURTHCUR.CUR?!-L- CURTHCUR?CUR^3CURIE-L-?oYEN
   *YENiYENEYEN^3YENeCURO/CURIAD-+-thCURI!-c- 
   3/4IeAA-aCUREEN^1^1CUREE-:CUR"CURAEAss.
   *CURuCUR`iCURAECURCURCURTHCUR.CUR?!-L-
   -o-L-AEu:Io/INCURuCUR`iCURAECURCURCURe 10-100Mbps CURIYENCUR!
   1/4YENuYENIYENAYENEINCURIYEN *YENiYENEYEN^3YENeCURI!-c-  3/4IeCURI
   1-10Gbps ,-:YENOYEN!YENCURYEND-YENIYENAYENEYENi!
   1/4YEN-CUREAD-CUR.CURAE!-c- CUR-aCUR 1/2CUReCUR- 1/2
   1/2ENOTCURECURaCURICURC,CURICURECURCURCURC,CUR.CURc,CUR|!-L- CUR
   1/2CURICUR?CURa!-c-YENIYENAYENEYENi!
   1/4YEN-A:I?(R)YEN`iYENCURYENa:CURIE-L-?oCURIYEN
   *YENiYENEYEN^3YENeCUREAD-+-thCURC,CURCUReCUReCUR|CURE Ass.
   *CURuCUR`iCURAECURCURCURTHCUR^1!-L- ?.CUR.CURCURYEN
   *YENiYENEYEN^3YENeCURNOTYEN<<! 1/4YENIYENeCUREA:E^2ACURuCUR`iCURAECURa!-c-
   'uA,CURIYEN *YENiYENEYEN^3YENeCURNOTCUR 1/2CURI+-AEP:ACURo
   1/4oCUR+-CUReCUR^3CURECURICURTHCURACUR?CUR-CUR-c-CUReCURTHCUR>>CURo!-L-
   ?.CUR.CURCURYEN-c-YEN *YENeYEN+-!
   1/4YEN.YENc,YENoCURI?.CUR.CURCURYENIYENAYENEYENi! 1/4YEN-YEN
   *YENiYENEYEN^3YENeCURC,AEDEG-oiCUR.!-c- DEG`iEyCURC,'uA,CURIYEN-c-YEN
   *YENeYEN+-! 1/4YEN.YENc,YENoCURaCURTHCUR?!-c- CUR
   1/2CUR`iCUREAE+-CUR,E-aIyYENIYENAYENEYENi! 1/4YEN-
   3/4aaCURC,-o-L-CURTHCURC,CURECUR-aCUReCURIYEN *YENiYENEYEN^3YENeCURo
   Io/INCUR.A^3CUR+-CUReCUR^3CURECURNOT^2A:C, 1/2CURC,CUR^1!-L-

2.13. YENIYENAYENEYENi! 1/4YEN- 1/4AAo

   4.2BSD CURC, 1/4AAoCURuCUR`iCUR?-oC, 1/2eCURIYEN
   *YENiYENEYEN^3YENeYEN^1YENCUR! 1/4YENECURI DARPA CURI Transmission Control
   Protocol/Internet Protocol (TCP/IP) CURC,CUR.CUR?!-L- CSRG CURI!-c-YEN
   1/2YEN+-YENAYENE IPC YENOYEN`i! 1/4YEN`aYENi!
   1/4YEN-CUREAECURss^1thCUR`a-oC, 1/2eCURIYENIYENAYENEYENi!
   1/4YEN-CURECUR.CURAE TCP/IP CURoA-aAoCUR.CURTHCUR.CUR?!-L-CUR
   1/2CURIIyI^3CURI!-c-4.1BSD YENU! 1/4YEN^1CURI 1/4AAoCURNOT DARPA
   CURNOTYEN^1YENYYENoYENu! 1/4CURECURECURACURAECURCURCUR?
   Bolt!-c-Beranek!-c-Newman (BBN) CURECUR-aCUR+-CUReYEN
   *YENiYEN,YENS:YEN-YENECUR<<CUReYENNYENO:YENeYENAYEN-CUREAEth 1/4e^2A:C,
   1/2CURACURACUR?CUR<<CUReCURC,CUR^1!-L- CUR
   1/2CUR`iCURIAc,CURCUREA-aAoCURC,CUR.CUR?!-L- CUR^3CURIYEN
   *YENiYENEYEN^3YENeYEN^1YENCUR! 1/4YENECURNOTEo
   3/4iCURE^1CUR-Io/INCURuCUR`iCUR?CURICURI!-c-  1/4c,CURE 4.2BSD
   CURC,CURICUR^3CURI 1/4AAoCURNOTIyI^3CURECURECURACURAECURCURCURTHCUR^1!-L-
   TCP/IP CURI 1/4AAoCUREAD-CUR^1CUReCUR 1/2CURI,aaCURIAC, 1/2CUREC,
   1/2IICURI^2thA+-CURa^1CUR--oIINCURuCUR`iCURTHCUR.CUR?!-L- TCP/IP CURI
   1/4AAoCURECURA:CURCURCURAECURI!-c-13  3/4ICURC,
   3/4U:-oUCURE^2oAaCUR.CURAECURCURCURTHCUR^1!-L-

   4.3BSD CURIYENeYENe! 1/4YEN^1CURC,CURI!-c-YENaYENe!
   1/4YENeYENoYENEAc,^3O/CUREYEN^3! 1/4YENIYENeAc,^3O/CURC,EoENOTAA-aCURE
   ^3<<E-CURuCUR`iCUR? Xerox Network Systems (XNS) YEN
   *YENiYENEYEN^3YENeYEN^1YENCUR!
   1/4YENECURNOTA:E^2ACURuCUR`iCURTHCUR.CUR?!-L- CUR^3CURIYEN
   *YENiYENEYEN^3YENeYEN^1YENCUR! 1/4YENECURI!-c-TCP/IP
   CURo>>EINCUR.CURAEA:I?(R)CURC,CURCURECURCUR,EI(c)CUR.CUR?YENTHYEN.YENoCURE
   A:I?(R)CUR^1CUReCURICUREENOTI *CURC,CUR.CUR?!-L-

   4.4BSD CURIYENeYENe!
   1/4YEN^1CURC,CURI!-c-P:a-o-c-EAE^1nAEa^3DEGCURC,Ay^2ACUR.CURAECURCURCURe
   ISO YEN *YENiYENEYEN^3YENeYEN^1YENCUR!
   1/4YENECURNOTA:E^2ACURuCUR`iCURTHCUR.CUR?!-L- ISO YEN
   *YENiYENEYEN^3YENe.^2CURICUR?CURaCUREA?
   3/4-DEGUCURECUReYEN>>YENTHYENoYENAEYEN-L-YEN-YEN^1CURoA:euACUR.CUR?CURICURC,!-c-
   CUR^3CUR`iCUReCURIYEN>>YENTHYENoYENAEYEN-L-YEN-YEN^1CUREAANOT^1c,CURuCUR>>CUReCUR?CURa
   YEN 1/2YEN+-YENAYENEYENCURYENoYEN?YENOYENS:!
   1/4YEN^1CURECURCURCUR-CURA:CUR<<CURI 3/4(R)CURuCUREEN^1^1CURNOTENOTI
   *CURECURECUReCURTHCUR.CUR?!-L- CUR 1/2CURIEN^1^1CURI!-c- A 3/4CURI'uA,YEN
   *YENiYENEYEN^3YENeCURIYEN-YENeYENCURYEN-c-YENoYENECURECURIENOTCUR<<CUReCURECURCURCUReCUR|CURECURECURuCUR`iCURAECURCURCURTHCUR^1!-L-
   ISO YEN *YENiYENEYEN^3YENe.^2INCURE 4.3BSD YEN<<!
   1/4YENIYENeCURC,A:oP:!CURuCUR`iCUR? 2 YEN`iYENUYENeYENe!
   1/4YENAEYEN-L-YENoYENDEGYENAE!
   1/4YENO:YENeCUREAD-CUR^1CUReAc,uNOTIICUREA:E^2ACURaENOTI
   *CURC,CUR.CUR?!-L- 4.4BSD CURC,Ac,CURCUR-^3EA:YENCURuCUR`iCUR?YENe!
   1/4YENAEYEN-L-YENoYENDEGu!C, 1/2CURI!-c-
   ^2A:ENA:^1YEN-c-YENEYEN`iYEN^1CURE YENIYENAYENEYENi!
   1/4YEN-YENTHYEN^1YEN-CURo>>yCURA:C,CURDEGOCURIYEN`iYENUYENeCURIYENe!
   1/4YENAEYEN-L-YENoYENDEGCURNOT'THCURTHCUR`iCURAECURCURCURTHCUR^1!-L-

2.14. YEN.YEN^1YENAEYEN`a+-?IN

   YENO:! 1/4YENEYEN^1YENEYENeYENAYEN *u!^1
   1/2CURIYEN.YEN^1YENAEYEN`aCURou-AEDEGCUR^1CUReCUR?CURaCUREIo/INCURuCUR`iCURTHCUR^1!-L-
   CURTHCUR-o-oC, 1/2eCURE!-c-4.4BSD YEN<<! 1/4YENIYENeCURI CPU
   CURIYENaYENCURYENoYENaYENaYENeCUREAEECURss^1thCURTHCUR`iCURTHCUR^1!-L-
   YEN<<! 1/4YENIYENeCURNOTAEECURss^1thCURTHCUR`iCUReCURE!-c- AEAA:eCURI
   3/4oAO:CURO/YENI! 1/4YENEYEN|YENS:YEN-c-CURoAssA:eCUR^1CURe 1/2e'u:^2
   1/2YENOYENS:! 1/4YEN-oCUREDEGU:^1OCUR.CURTHCUR^1!-L-  1/4!CURE!-c-YEN<<!
   1/4YENIYENeCURI 1/4<<AEDEGAssA:e (autoconfiguration)
   CURo^1OCURECURCURCURTHCUR^1!-L- CUR^3CUR`iCURI CPU CUREAU:A^3CURuCUR`iCUR?
   1/4thEOu!'iCURI,! 1/2D-CUREAssA:eCURo^1OCURECUR|^2aA:o/CURC,CUR^1!-L-
   YEN.YEN^1YENAEYEN`aCURI-oC,
   1/2e!-c-YENC,YEN-L-YEN^1YEN-YENAYENS:YENAYEN-!-c-YEN-c-YEN<<YEN|YENoYENE
   1/2eIy!-c- quota YENAYENS:YENAYEN-CURo^1OCURECUR|YEN^1YEN?!
   1/4YENEYEN-c-YENAYEN *YEN^1YEN-YENeYEN *YENECURo YEN.YENoYENDEGYENeYENae!
   1/4YENP:YENa! 1/4YENECURC, 1/4A^1OCUR.CURTHCUR^1!-L- YEN^1YEN?!
   1/4YENEYEN-c-YENAYEN *YEN^1YEN-YENeYEN
   *YENECURI-oC,,aaCUREDEG`iEIAA-aCUREIo/INCURuCUR`iCUReYEN.YEN^1YENAEYEN`aYENu!
   1/4YENOYEN^1.^2CURou-AEDEGCUR.!-c-
   YEN.YEN^1YENAEYEN`aCURo'DEGA'CUREYENTHYENeYENAYENae! 1/4YENP:YENa!
   1/4YENECUREDEGU:^1OCURuCUR>>CURTHCUR^1!-L-

   YENTHYENeYENAYENae! 1/4YENP:YENa! 1/4YENECURC,CURI!-c-YEN
   *YENiYEN>>YEN^1CURNOT YENae!
   1/4YENP:CURNOTYEN-c-YEN-YEN>>YEN^1CURC,CURCUReCUReCUR|CUREAssA:eCURuCUR`iCUR?A
   1/4Eo:^2oAthCURa: YENIYENAYENEYENi! 1/4YEN-YENY! 1/4YENE
   3/4aaCURC,CURIYENiYENDEGYENCURYENoI *uaCURoAOCURACURTHCUR^1!-L-
   YENiYENDEGYENCURYENoI *uaCURNOT,!
   1/2D-CURuCUR`iCUReCUREYENiYENDEGYENCURYENoYEN
   *YENiYEN>>YEN^1CURNOTA,A(R)CURuCUR`i!-c- YENae! 1/4YENP:CURI^3IC,S:
   1/2eIyCURNOT^1OCURiCUR`iCURTHCUR^1!-L- CUR 1/2CUR.CURAEYENae!
   1/4YENP:CURI^3IC,S: 1/2eIyCURNOTA(R),uCUR^1CUReCURE!-c- CUR 1/2CURIYENae!
   1/4YENP:CUREAD-CUR.CURAE!-c- A 3/4CURIYEN *YENiYEN>>YEN^1CURo
   1/4A^1OCURC,CURCUReCUReCUR|CURECUR^1CUReCUR?CURaCURIYENiYENDEGYENCURYENoYEN.YENS:YENeCURNOTA,A(R)CURuCUR`iCURTHCUR^1!-L-

>>^2^1IE,,YEN

   [Accetta et al, 1986] !O:Mach: A New Kernel Foundation for UNIX
   Development"! *. Accetta M. [FAMILY Given], Baron R. [FAMILY Given],
   Bolosky W. [FAMILY Given], Golub D. [FAMILY Given], Rashid R. [FAMILY
   Given], Tevanian A. [FAMILY Given], !-c- Young M. [FAMILY Given]. 93-113.
   USENIX Association Conference Proceedings. USENIX Association. June 1986.

   [Cheriton, 1988] !O:The V Distributed System! *. Cheriton D. R. [FAMILY
   Given]. 314-333. Comm ACM, 31, 3. March 1988.

   [Ewens et al, 1985] !O:Tunis: A Distributed Multiprocessor Operating
   System! *. Ewens P. [FAMILY Given], Blythe D. R. [FAMILY Given],
   Funkenhauser M. [FAMILY Given], !-c- Holt R. C. [FAMILY Given]. 247-254.
   USENIX Assocation Conference Proceedings. USENIX Association. June 1985.

   [Gingell et al, 1987] !O:Virtual Memory Architecture in SunOS! *. Gingell
   R. [FAMILY Given], Moran J. [FAMILY Given], !-c- Shannon W. [FAMILY
   Given]. 81-94. USENIX Association Conference Proceedings. USENIX
   Association. June 1987.

   [Kernighan & Pike, 1984] The UNIX Programming Environment. Kernighan B. W.
   [FAMILY Given] !-c- Pike R. [FAMILY Given]. Prentice-Hall. Englewood
   Cliffs NJ . 1984.

   [Macklem, 1994] The 4.4BSD NFS Implementation. Macklem R. [FAMILY Given].
   6:1-14. 4.4BSD System Manager's Manual. O'Reilly & Associates, Inc..
   Sebastopol CA . 1994.

   [McKusick & Karels, 1988] !O:Design of a General Purpose Memory Allocator
   for the 4.3BSD UNIX Kernel! *. McKusick M. K. [FAMILY Given] !-c- Karels
   M. J. [FAMILY Given]. 295-304. USENIX Assocation Conference Proceedings.
   USENIX Assocation. June 1998.

   [McKusick et al, 1994] Berkeley Software Architecture Manual, 4.4BSD
   Edition. McKusick M. K. [FAMILY Given], Karels M. J. [FAMILY Given],
   Leffler S. J. [FAMILY Given], Joy W. N. [FAMILY Given], !-c- Faber R. S.
   [FAMILY Given]. 5:1-42. 4.4BSD Programmer's Supplementary Documents.
   O'Reilly & Associates, Inc.. Sebastopol CA . 1994.

   [Ritchie, 1988] Early Kernel Design. private communication. Ritchie D. M.
   [FAMILY Given]. March 1988.

   [Rosenblum & Ousterhout, 1992] !O:The Design and Implementation of a
   Log-Structured File System! *. Rosenblum M. [FAMILY Given] !-c- Ousterhout
   K. [FAMILY Given]. 26-52. ACM Transactions on Computer Systems, 10, 1.
   Association for Computing Machinery. February 1992.

   [Rozier et al, 1988] !O:Chorus Distributed Operating Systems! *. Rozier M.
   [FAMILY Given], Abrossimov V. [FAMILY Given], Armand F. [FAMILY Given],
   Boule I. [FAMILY Given], Gien M. [FAMILY Given], Guillemont M. [FAMILY
   Given], Herrmann F. [FAMILY Given], Kaiser C. [FAMILY Given], Langlois S.
   [FAMILY Given], Leonard P. [FAMILY Given], !-c- Neuhauser W. [FAMILY
   Given]. 305-370. USENIX Computing Systems, 1, 4. Fall 1988.

   [Tevanian, 1987] Architecture-Independent Virtual Memory Management for
   Parallel and Distributed Environments: The Mach Approach. Technical Report
   CMU-CS-88-106,. Tevanian A. [FAMILY Given]. Department of Computer
   Science, Carnegie-Mellon University. Pittsburgh PA . December 1987.

                   EOI?A AEu:EU:,`i^2 1/2CURECURA:CURCURCURAE

   IU: 1/4!

   A.1. EYIo 1/4O

   The Design and Implementation of 4.4BSD Operating System Chapter 2
   CURIAEu:EU:,`i^2 1/2CURI!-c-,P:Ao/CURI 1/2D-EC,,uCURC,CUR-c-CURe
   Addison-Weslay!-c- EYIo 1/2D-EC,,-c-CURoEYICUR^1CURe Pearson Education
   Japan CURIP:"IICURoAEACURAE!-c- FreeBSD
   AEu:EU:,`iYENEYENYENaaYENaYENoYENAE! 1/4YEN.YENc,YENoYEN
   *YENiYEN,YENS:YEN-YENE (FreeBSD doc-jp)
   CURECUReCURACURAE^1OCURECURiCUR`iCURTHCUR.CUR?!-L-
   AEu:EU:,`iEC,CURECURA:CURCURCURAE^2?CUR<<CUR-auCUREOCURCURIAAACURNOTCUR-c-CUReCURTHCUR.CUR?CURe
   AEu:EU:,`iYENEYENYENaaYENaYENoYENAE! 1/4YEN.YENc,YENoYEN
   *YENiYEN,YENS:YEN-YENE <doc-jp@jp.FreeBSD.org>
   CURTHCURC,CUR'I-c-IiCUR-CURACURuCURCUR!-L-

   CUR^3CURIAEu:EU:,`iEC,CURIAo/-oi,-c-CURI!-c-,P:Ao/ 1/4O!-c-,P:Ao/CURI
   1/2D-EC,,uCURC,CUR-c-CURe Addison-Weslay
   CUR-aCUReCUROAEu:EU:,`iEC,CURIEYIo 1/2D-EC,,-c-CURoEYICUR^1CURe Pearson
   Education Japan CUREu-c-ADEGCUR.CURTHCUR^1!-L-CUR 1/2CURICUR?CURa!-c-
   CUR^3CURIE, 1/2nCURoCUR^3CUR`iCUReCURIAo/-oi,-c-EYI 1/4OCURIIA
   1/4"AA-aCUREuo:^2A:CURECUR-E-L-A 1/2!-c-
   -oAEC,UEUCUR^1CUReCUR^3CURECURIP:O/>>ssCURuCUR`iCURAECURCURCURTHCUR^1!-L-

   2001 C,- 5 .i 5 AEu:CUREYEN^1YEN?! 1/4YENECUR.CUR?AEu:EU:,`i^2
   1/2-oiP:ECURECURI!-c-
   CURuCURTHCURP:CURTHCUREEy!^1CURNOTEYIoCURE>>^2^2ACURuCUR`iCURTHCUR.CUR?!-L-
   FreeBSD doc-jp CURC,CURI!-c-FreeBSD 'O/I-c-E,
   1/2nCURIAEu:EU:,`iEC,CURo-oiA(R)CUR^1CURe-oiP:ECURoA-oIIAA-aCUREA^3CUR+-CURAECURCURCURTHCUR^1!-L-
   CUR^3CURI-oiP:ECUREP:"IICUR.CUR?CURCURCURE>> *CURiCUR`iCUReEyCURI!-c- CUR
   1/4CUROFreeBSD AEu:EU:,`iYENEYENYENaaYENaYENoYENAE! 1/4YEN.YENc,YENoYEN
   *YENiYEN,YENS:YEN-YENECURIYENU! 1/4YEN,CURoCUR'I-:CURI 3/4aa doc-jp
   CURO/CUR'>>^2^2ACUR-CURACURuCURCUR!-L-

A.1. EYIo 1/4O

     * ?uA 1/4 u(R)>>I <sugimura@jp.FreeBSD.org> (2.1, 2.2 Aa)

     * IKENO Naoki <nao@mc.kcom.ne.jp> (2.3 Aa)

     * AAA:E-a 'i^1, <ytabata@tkf.att.ne.jp> (2.4 Aa)

     * Atsuto <atsuto@guitar.interq.or.jp> (2.5 Aa)

     * CURICUReCURACURCURiCUR| <kiroh@jp.FreeBSD.org> (2.6, 2.7 Aa)

     * ^1aAAA: AI 1/4u <tomoki@leergirls.org> (2.8 Aa)

     * AOEE +-N^1O <rushani@bl.mmtr.or.jp> (2.9 Aa)

     * +-o:-oe AoIe <tshiozak@FreeBSD.org> (2.10 Aa)

     * CUR^3CURNOT CUReCUR|CURCURCURACURiCUR| <y-koga@jp.FreeBSD.org> (2.11,
       2.13 Aa)

     * ?^1 A: 3/4C,. <mori@jp.FreeBSD.org> (2.12 Aa)

     * -oa:DEGae  1/2c,^1O <sakai@lac.co.jp> (2.14 Aa)

     * AEaAi 'i 3/4I <yoshiaki@kt.rim.or.jp> (-o-oAEE)

     * AEu:Ii ^1A>>O: <hino@ccm.cl.nec.co.jp> (-o-oAEE)

     * >>^3,y ^2i?(R) <yamagu-m@titan.ocn.ne.jp> (EYIoA:oP:!)
