                            ADEGS:U FreeBSD

  Jordan Hubbard

   $FreeBSD:
   release/8.4.0/zh_TW.Big5/articles/contributing/article.xml 39632
   2012-10-01 11:56:00Z gabor $

   $FreeBSD:
   release/8.4.0/zh_TW.Big5/articles/contributing/article.xml 39632
   2012-10-01 11:56:00Z gabor $

   FreeBSD NOTO FreeBSDDEGo-a-:.|-a-ouuYENUDEGO 1/4D-

   IEEE, POSIX, (c)M 802 NOTO Institute of Electrical and Electronics
   Engineers, Inc. |bNOTu:DEGe-a-ouuYENUDEGO 1/4D-!C

   ^3\|h>>s^3yDEGO(c)M,g 3/4PDEGO"IYENICUR@"C,-oUNOTDEGDEGO
   1/4D--a-o^1I(R) *(c)ICURaa|r^3]p"O^1u:AAa|UCURv-a-o^2-L-<<~!C
   YEN>>CURaaCURCURYENX^2{-a-o^2^3|hDEGO 1/4D-!AYENHCURI FreeBSD
   Project YEN>>" 1/4s(c)OCURH-a 3/4-a-oDEGO 1/4D-!A<<a+-+-NYENH
   '(TM)' (c)I '(R)' ^2AA,^1"O 1/4D-uu!C

   uL 1/2 *NOTOOCURH(c)INOTO|U-oO/^2OA'!A|p-aGS:AE+-aeNOTDEG FreeBSD
   '-L-"NADEGS:U!A^3-L-YENiYENH|bYEN>>CURaaCURCURS:a:"`i|X
   3/4A-a-oCURe-ak!C

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

   S:AS:AE+-ae'A FreeBSD
   DEGuAICURDEG>>oP:U:!HCURO|nCURF!AS:UIAAw-aiS:A!CFreeBSD
   YEN?NOTO|^3?`a(c)o
   1/4sCURj"IYENI-aI-a-oDEG^A:mCUR~+-oYENHuo(R)iS:S:CURj-a-o!CS:UICUR-L-P:E<<D+-`.PAA+-z(c)ODEGu-a-oDEG^A:m!A|OYENB!A^3o"C,CURuS:@^1i(c)o
   FreeBSD -a-o<<uA:ouo(R)iCUR]|U:Ao:<<n!C

   CUR]^3\>>P+-z.Q^1^3-a-oCUR-L-|P!A+-zNOTJCUR-L-YEN^2+-oNOTOCUR@|WYENX|a-a-o
   Programmer!ACUR]uLP:.(c)M FreeBSD core team
   |"u|^3<<U:|n-a-o"pYENae!AS:UI.|CUR@uo/|PCUR--a-o^1i<<Y+-z-a-oCURuS:@!C
   FreeBSD
   -a-oP:}uoCURHu^1MYENNOTYENth^2y!ACURj(R)aS:TH^3N+-M-ao/|U^2S:!A|~A:O:CURAYENNOTCUR]<<D+-`
   1/4s-ax!C uM|O!A"CCURNS:UI^3-L-|b+-^1i<<uA:o
   1/4WYEN[-a-oCURuS:@!A|OW(c)o"S|^3"NOTDEG-:-a-oCURHCURa!A|]|^1S:UIAH(R)EAAw-ai+-z-a-oADEGS:U!C

   FreeBSD p^1-o(c)O^3B^2z-a-oNOTOCUR@OS:^1
   3/4a-a-oS:@.~"t^2IAo^1O!A|OCUR-L-YENuNOTOCUR@O kernel
   (c)INOTOCUR@"C,^1s'^2-a-oCURu"aYEN]!C |]|^1!AS:UI-a-o TODO
   <<Y?`iYENoDEGE|C-ai,IYEN]S:t|U|!|U 1/4E-a-oCURuS:@!G
   +-qCURaaYENo!B"IYENI-aI'u,O!Bdemo!A"`i"t^2I|w,Eu{|!(c)MS:o+-M.~-a-o
   kernel P:}uo!C |]|^1uL 1/2
   *+-z-a-oS:TH^3NCURo.C,|p|o!A+-q"AE|o-oO/>>aDEG`i!A^3-L-YENiYENHADEGS:U^3oOp^1-o!C

   S:UI^1-aAy+-q"AE(c)M FreeBSD
   NOTUAo:CURuS:@-a-oYENo/.~(c)MS:UIApA'!C
   +-z>>YnCUR@"C,-S(R)i-a-oAX(R)i"O"I+-z-a-o^2-L-<<~^1BA`aDEG_"OP:U:!H
   +-z.|uo^2{S:UI<<U: 1/4O:.Nu-aA^3+-z-a-o
   1/2D-"D!ADEG-L-<<DNOTO-SS:Ou}(c)_YENj(c)C,-a-o!C
   +-zNOTOS:_YEN?+-q"AENOTUAo:-a-o 1/4WE.~DEGE!H
   AAyS:UI"OADEGS:U+-zS:a!A
   S:UICUR]^3\YENiYENH|bNOTY"C,CURe+-NOTUCURNOT|XS:@!C
   |UYENN^3nAAeNOTEYEN?|bS:VCUROYEN'-}AA|^3-a-o(R)O/(R)O/(^1^3NOTOAo:(c)o^3nAAeP:}uo!B
   3/4PDEGa(c)M-ouAA@)!A S:UIS:AE+-aeAu
   1/2D-+-z|U:CURO:-`au^1YEN|CUR@|, 3/4-:.|!C

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

1. S:UI-a-o>>Y"D

   CURU+-|CYENXCURFCUR@"C,>>YnS:^1|"-a-oYENoDEGE(c)MCURlp^1-o!A
   YEN|IYENN-ai TODO(<<Y?`iYENoDEGE|C-ai)
   |C-ai-a-o.N<<a:!AYENHCURI"IYENI-aI-a-on"D!C

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

  1.1. YEN?|bP:i|aeCURCUR-a-oYENoDEGE(<<Du{|!P:}uoCURHu)

   <<U:|hDEGNYEN[ FreeBSD p^1-o-a-oCURHCUR-L-NOTO Programmer!C
   ^3oOp^1-o,I|^3CURaaYENo 1/4P:
   1/4g-aI!B-ooP:^3]p(R)v!BYENHCURIS:TH^3NCURa:'(c)CURHu!C
   ^1i(c)o^3o"C,,qCURu"O>>!!AYENLIYENu>>YnDEG^A:mCUR@"C,(R)EP:!!A"AYENB"a|^3
   3/4C,^2ss-a-o.NA:@!C

    1. +-zYENiYENH(R)E+-`A 1/2 3/4\ FAQ (c)MCURaYENU(Handbook)
       !A|p-aGuo^2{|^3,NA:ACUR-L-^2M.!-a-o|aCURe!A(c)INOTOCUR-L-|X(R)E(c)y-a-oCURaaYENo!ANOTAE|U:S:^1YENthCUR-L-YEN?
       1/2T-a-o|aCURe!A ^3-L-
       1/2D-S:iP:DS:UI!C.iuM!AY-`aP:P:CURaS:aYENLI
       *YEN?!A"AS:aDEGE>>~+-Hu^1S:UI!A"-o'NS:o|nCURF!C:) (SGML
       "a:^1e"ACUR-L-Ao/ 3/4C,!A|yS:UICUR]CUR-L-CURI^1i+-z-a
       1/2+-u'-L-YENaeCUR@-e ASCII -a-o-ACURaa|r-a(c)YEN>>)!C

    2. ADEGS:US:UIS:a FreeBSD CURaaYENoA 1/2A:P:|"S:A-a-oYENA>>y!C
       |p-aGS:A-a-oYENA>>y-a(c)YEN>>CURw,g|s|bCURF!A CUR]YENiYENHA
       1/2A:P:CUR@"C,ABYEN~-a-oCURaaYENo!A(c)I-aIAENOTd"-o"C,CURw|^3-a-oCURaaYENoNOTOS:_NOTDEG^3I.s-a(c)!C
       +-zYENiYENHYENyA^2^3aeNOTYNOTY FreeBSD
       CURaaYENop^1-oCURCUR|^3Ao: A 1/2A:P:(R)E-a-o+-`"-L-DEGYAD!C
       DEGNYEN[A 1/2A:P:CURuS:@!A"ACUR-L-NOTO>>!+-zn(c)tx 3/4A: 3/4OA
       1/2A:P:(c)O|^3 FreeBSD CURaaYENo!C
       "NOTDEG,qCURu!AnDEGu|hCURO:CURuS:@S:^1YENth"u"M(c)o+-z-a-o.NA:@!CCUR@YEN^1NOTYOCURHP:}(c)lA
       1/2A:P:CURF!A
       CURS:<<a'XYENGCUR@(c)w.||^3"a:YENLCURHDEGN>>P"`i^3o"C,CURuS:@CURCUR"O!C
       |p-aG(R)EP:!|^3!A(c)I-aI-oeCUROCUR-L-DEG-:YENhA 1/2A:P:
       3/4aYEN-:CURaaYENo!A"-oYENiYENH-oYENyYENhA
       1/2A:P:|w,E<<u:<<n!C

    3. 3/4\AA-a FreeBSD general questions P:l>> 1/4 1/2 * 3/4A
       "ADEG,-o,A 1/2 3/4\(NOTAE|U:|^3^3W<<ss|a^3o 1/4EDEGu) the
       comp.unix.bsd.freebsd.misc newsgroup
       !C>>PS:OCURHCURA"E+-z-a-o+-M.~-a 3/4AN!A
       "AADEGS:UYENLI,N"MDEGYAD!ANOTOYENoYENOCURH'r(R)(R)-a-o"AE+-!!F
       |^3(R)EO!A+-zNOTAE|U:YENiYENH|b^3oO^1Lu{CURCUR
       3/4C,"`iCUR@"C,.s-aF|e!I ^3o"C, 1/2 *
       3/4A|^3(R)ECUR].|NOTDEG+-z?EuoYENXCUR@"C,CUR-L-?u-a-o.Q-ak!C

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

  1.2. YEN?|bP:i|aeCURCUR-a-oYENoDEGE(u{|!P:}uoCURHu)

   |C|b^3o,I-a-oCURj^3!CURAYENoDEGE^3-L->>Yn+-zS:eCURJYENiAE[-a-o(R)EP:!!A(c)I-aI>>Yn+-z|b
   FreeBSD kernel CURe+-|^3A *'I-a-o-a
   3/4AN!A(c)I-aI"a-aI^3-L-n!C.iuM^3o,ICUR]|^3<<U:|h<<n-a-oYENoDEGE!A
   3/4A|X^1^3NOTO !S:weekend hackers!" ^3oAthYENuYENIP:gYEN
   1/2'NYENiYENH.d(c)w-a-o Hacker!C

    1. |p-aG+-zYEN?|bP:]-a-oNOTO FreeBSD -CURRENT
       -a(c)YEN>>!A"AYENB-oo,o^3t<< *AUCUR-L-?u!A "-o>>oYENiYENH"`i
       current.FreeBSD.org!A ^3oYENx"CCURN.||^3CUR@O.s-a(c)YEN>> !X!X
       |p-aG+-z|^3-aAA!A +-zYENiYENHCURTCUR-L-CUR(R)ECURU,u:"A|w,E!A
       "a:P:!|p-aGYENXCURFCURDEG>>oDEGYAD!A 1/2D-S:iP:DS:UI!C

    2. 3/4\AA-a FreeBSD problem reports P:l>> 1/4 1/2 *
       3/4A!C^3o"C,DEGYAD!A(c)I^3\+-z-`a'-L-"N|^3<<O/^3](c)E.N,q-a-o.N"-L-!A
       (c)I-aIADEG|-L-'u,OCUR@"C, patch
       !C|^1YEN~!ANOTAE|U:YENiYENH^1A,O
       *YEN?"a:CURCUR-a-oCUR@"C,DEGYAD!C

    3. |p-aG+-z-a 3/4^1D|^3CUR@"C, *YEN?CURw,g|b -CURRENT
       CURW|"YEN\|a"IYENI!A |y|b,g^1LCUR@NOTq(R)EP:!(^3q+-`NOTO 2
       P:gYEN-aYENk)CURS:<<a!ACUR'YEN 1/4|X"O:"`i -STABLE
       (^3o"BAEJ'NNOTO MFC -- Merged From
       Current)!A"-o>>oYENiYENHu^1NOTUAo:-a-o committer
       CURHuuo<<EAS:>>-a-a-o'-L-?o<<H!C

    4. +-N^2A:CURTCURe(3rd party)^3nAAeYEN[CURJ"`i`i(c)l
       1/2XCURCUR-a-o src/contrib YENO/?y!C

    5. 1/2T<<O src/contrib CURCUR-a-o`i(c)l 1/2XNOTO^3I.s-a-o!C

    6. 1/2sA:P:`i(c)l 1/2X((c)INOTO^3!CURA`i(c)l 1/2X)(R)E!A
       1/2D-S:iYENIS:oDEG-a-a-oA:uS:iuYEN-AA(warning level)
       YENH<<KDEG>>?u(debug)YENI!A"A|bS:^1|"'u,O!B
       1/2T>>{YEN?+-`S:^1^2|CURS:<<a!A^2MDEG-L-^3o"C,
       1/2sA:P:-a-oA:uS:iuYEN-AA!C

    7. S:o.s"-o"C,|b ports CURCUR"IYENI^1L(R)E-a-o-aF|e!A "O|p gets()
       (c)IYEN]S:t malloc.h (c)O^2-L-YENI-a-oA:uS:i!C

    8. |p-aG|^3NOTDEG ports S:@CURFYENo|o *YEN?!A 
       1/2D-DEGO+-o+-N+-z-a-o patch uou^1`iS:@-aI (^3o
       1/4ECURU|,CURE-AA(R)E!A+-z-a-oCURuS:@.|AAU:+-o>>'APCUR@"C,)!C

    9. YENy"u+-oYEN?|!-a-o 1/4D-.C,!A|p POSIX(R) -a-oDEGAEYEN>>!C |b
       FreeBSD C99 & POSIX  1/4D-.C,NOTU(R)ep^1-o
       -oo-,CURW!AYENiYENH+-o"`iNOTUAo:A`i+-u!C  1/2D-+-N FreeBSD
       -a-o|aeNOTDEG>>PCURWz-a-o
       1/4D-.C,P:i|aeCURn,u!AY(c)O+-ou^2-aG>>P C99 & POSIX 
       1/4D-.C,CUR-L-|P-a-o,U:!A
       -SS:ONOTO"-o"C,^2O,`|aCURe-a-o.LCURp(R)t^2S:!A
       1/2D-uoCUR@OAo:(c)oYEN|-a-o PR (DEGYAD^3o/S:i)!C
       |p-aGYENi-`a!A 1/2D-<<u:YENX|p|o *YEN?YEN|!A"AAH PR '-L-YENae
       patch !C |p-aG+-z>>{NOTDEG 1/4D-.C,|^3DEGYAD!A
       1/2D-|V^3o"C,^3W(R)ae 1/4D-.C,-a-oNOTUAo:^1IAAe!A
       1/2D-"D^1i"a:P:i|ae<<.s-a-o|O 1/4{!C

   10. NOTDEG^3oYEN-:|C-ai'-L-"NS:o|h<<O/A:^3!I

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

  1.3. NOTd 3/4\ 3/4aO PR ,e(R)AE(R)w

   FreeBSD PR |C-ai ^3o,I.|AAaYENU:YENO/<<e(c)O|^3 PR
   -a-oDEGYAD-aNOT-oA!AYENHCURIYENN FreeBSD
   "IYENI-aI'-L-YENae-a-oS:iP:i<<O/A:^3!C PR
   ,e(R)AE(R)w|P(R)EYEN]NOTACURFP:}uoCURHu(c)M<<DP:}uoCURHu-a-oYENoDEGE!C
   NOTdNOTY"-o"C,(c)|YEN 1/4,N"M-a-o PR!A"ANOTYNOTYNOTOS:_|^3+-z.P?^3
   1/2`i-a-oYENoDEGE!C
   ^3o"a:CURCURYENi-`a|^3CUR@"C,NOTO<<D+-`A^2^3ae-a-oDEGYAD!AYENu>>YnNOTYCUR@NOTY"A
   1/2T>>{ PR NOTOYEN? 1/2T-a-o!C YENtYEN~CUR@"C,YENi-`a.|<<D+-`
   1/2AEAo/!A(c)I-aIS:^1YENthYEN 1/4-athYENo|o *YEN?!C

   -oYENyNOTYCUR@NOTY"-o"C,AU"S|^3CURH+-uCURa-a-o PR!C |p-aG PR
   CURw,gCURADEGtu^1CURF"a:YEN|CURH!A|yNOTYDEG_"ONOTO+-z-`aDEG-:^3B^2z-a-o!A
   +-zYENiYENH+-H<<Hu^1"-oOCURH!A"A,ssDEGY+-zNOTOS:_YENiYENH'-L-"NADEGS:U
   !X!X YENLIYENi-`aCURw,g|^3YENi"N'u,O-a-o patch
   !A(c)I|^3CUR@"C,YENi"NDEGQ 1/2 *-a-o.N"-L-!C

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

  1.4. YENN !S:Ideas!" CURCUR?iCUR@P:u

   FreeBSD list of projects and ideas for volunteers |P
   1/4E|aP:}(c)nu^1|^3.NA:@DEGN>>P FreeBSD p^1-o-a-oCURH!C
   ^3oYEN-:^2M^3ae+-N<<uA:o|aS:o.s!A|P(R)E'-L-"N|UOP:uYENO/-a-o,eDEGTu^1(c)O|^3CURH
   !]CUR-L- 1/2 *NOTOS:_NOTDEGu{|!^3]pCURHu!^!C

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

2. |p|o'-L-"NADEGS:U

   DEGoYEN>>CURWYENiYENHCURANOTDEGYENHCURU 5 -oO/CURe|!!G

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

  2.1. ?u>>~^3o/S:i(c)M.N"-L-uo-ai

   ^3q+-`!ACUR@-e -a-oS:TH^3N.Q-ak(c)M<<O/A:^3A^3,Ouo"`i FreeBSD
   technical discussions P:l>> 1/4 1/2 * 3/4A!C |P
   1/4E|a!A^1i(c)o^3o"C,-aF|e|^3?^3 1/2`i-a-oCURH (.iuM!A
   YENLI|P(R)EAUn-`aDEG-:(R)eS:O CURjP:q-a-o P:lYENo!I) YENiYENH|O
   1/4{q 3/4\ FreeBSD technical discussions P:l>> 1/4 1/2 * 3/4A!C 
   1/2D-DEGN 3/4\ FreeBSD "IYENICURaYENU YENHCURF,NAo:(c)o^3oOP:l>>
   1/4 1/2 * 3/4A!A YENHCURI"a:YEN|P:l>> 1/4 1/2 *
   3/4A-a-o,O^2O+-!-ap!C

   |p-aG+-zuo^2{CURF bug (c)I-aI.Qn'-L-YENaeNOTY"C, *S:i!A 
   1/2D-^3z^1L send-pr(1) u{|!(c)I"IYENI -ooP:CURP:+- -a-o|^^3o/
   "O'-L-YENae!C 1/2D-,OuUP:n 1/4g PR -a-o"COP:uYENO/!C
   CUR@-e"O>>!!ADEG-L-<<D patch AEP:W^1L 65 KB!AS:UI<<O/A:^3|b PR
   CURCUR-a 1/2+-u-athCURW patch 'NYENiYENHCURF!C YYENi-a
   1/2+-u(R)MYENI patch "`i`i(c)l 1/2X-a-o,U:!A"-o>>o<<O/A:^3|b PR
   -a-o Synopsis A:ae|`iuu(c)u [PATCH]!C ^1iCURF!A|b-athCURW patch
   (R)E!A 1/2D- CUR-L-n ^3z^1L.AE^1<<-a-o!y
   1/2AE>>s!BP:KCURW!z"OP:i|ae!A|]NOTDEG^3o 1/4EDEGu.|S:a Tab
   AAU:|"-aAA(R)ae!A .| 3/4EP patch 'NCUR-L--`aYENICURF!C|p-aG patch
   P:W^1L 20KB!A  1/2D-|O 1/4{A-L-AYYEN|"A"IYENI uuencode(1) "OP:i|ae
   1/2s 1/2X!C

   |b 1/4gS:^1 PR CURS:<<a!A+-z.||NOT"`iCUR@<<E
   1/2T>>{P:lYENoYENHCURI"AEYENoDEGlAU: 1/2s,^1!C  1/2D-<<O-d^3oO
   1/2s,^1!A|]NOTDEG"AE<<aYENiYENHYENI^3o 1/2s,^1uo<<H"`i
   <bug-followup@FreeBSD.org>
   "O|^AD-!B'-L-"NAo:(c)o,O"AEYENo-a-o<<aA:o,e(R)AE!C+-z>>YnDEGu-a-oNOTO+-N
   1/2s,^1(c)n"`iP:lYENo-a-o 1/4D-ADCURCUR!A "O|p "Re: kern/3377"!C
   YNOTO|PCUR@DEGYAD-a-o|^AD-CURe+-!AA^3,O^3z^1L^3o-oO/CURe|!"OP:i|ae!C

   |p-aG+-z|bCUR@NOTq(R)EP:! (P:W^1L 3 CURNNOTAE|U: 1
   P:g!A^3o"u"M(c)o+-z-a-oP:lYENo-aADEGE)CURS:<<aCUR'uM"S|^3|NOT"`i
   1/2T>>{<<H (c)I-aIYENN(c)oCUR@"C,`i|]uL-ak"IYENI send-pr(1) u{|!!A
   <<hYENiYENHuo<<H"`i FreeBSD problem reports P:l>> 1/4 1/2 * 3/4A
   "O 1/2D-S:OCURHADEGS:AYENN+-H!C

   1/2D-DEGN 3/4\ ^3o 1/2gCURaa^3^1 CURF,N|p|o 1/4P:
   1/4g|n-a-oDEGYAD^3o/S:i!C

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

  2.2. ^1i(c)oCURaaYENo-a-o *q

   CURaaYENo-a-o *S:iCURe+-!ANOTOYENN FreeBSD documentation project
   P:l>> 1/4 1/2 * 3/4A "O 1/4fNOTd!C  1/2D-DEGN 3/4\ FreeBSD
   Documentation Project Primer "OAo+-oS:^1 3/4a-a-o+-D- 3/4C,^2O,`!C
   1/2D-<<o:.O uU 2.1 ,` CURCURCURP:^2D--a-oCURe-ak"IYENI send-pr(1)
   "O'-L-YENae.s-a-oCURaaYENo!A(c)I-aIS:iu 1/2^2{|^3-a-oCURaaYENo
   (th(c)ENOTO<<U:CURp-a-oS:iP:iCUR]NOTOAAw-ai-a-o!I)!C

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

  2.3. ^1i(c)o^2{|^3`i(c)l 1/2X-a-o *S:i

   |b^2{|^3`i(c)l 1/2XCURWP:i|ae *S:i(c)I
   1/4WYEN[YEN\-`a!A|bNOTY-oO/u{<<
   *CURWNOTO>>YnS:o|hS:THYEN(c)-a-o"AE!A "AYENBAU,o+-z^1i(c)oYENO/<<e
   FreeBSD -a-oP:}uo^2{-aNOTCURF,Nu{<< *|^3Ao:!C
   |^3|h-oO/CURe|!YENiYENH+-o"`i^3Q-oUS:@ !S:FreeBSD-CURRENT!" -a-o
   FreeBSD P:}uo-a(c)YEN>>!C  1/2D-DEGN 3/4\ FreeBSD
   "IYENICURaYENU-a-o NOTUAo:^3!YEN-: !A"OCURF,N"IYENI
   FreeBSD-CURRENT -a-o,O+-!!C

   |bAA-a-o`i(c)l 1/2XCURWP:i|ae *S:i!A<<h^3q+-`YENi-`a`i(c)l
   1/2XCURw^1L(R)E!A
   (c)I>>P.s-a-o-a(c)YEN>>(R)t^2S:CUROCURj|OuL-ak^3Q<<.s 3/4a|X"`i
   FreeBSD CURCUR!C |p-aG+-z|^3q FreeBSD announcements P:l>> 1/4 1/2
   * 3/4A YENHCURI FreeBSD-CURRENT P:l>> 1/4 1/2 * 3/4A -a-o,U:!A
   <<hYENiYENH^3z^1LYEN|I"OCURjPCURF,NYENO/<<e-a-oP:}uo-aNOT-oA!C

   Y+-z-`aDEG-: 3/4"P:qYENH^3I.s-a-o`i(c)l 1/2X"OP:i|ae+-z-a-o *S:i!A
   <<hCURUCUR@"BnDEGu-a-o"AE+-!'NNOTO^2-L-YENI+-z(c)O *S:i-a-o diff
   AE!A "A+-NYEN|uou^1 FreeBSD
   -a-o-ouAA@CURHu!C^3oP:uCURuS:@YENiYENH^3z^1L diff(1)
   (c)RYENO"OS:^1|"!C

   '-L-YENae patch (R)E!A<<O/A:^3 diff(1) (R)ae|!+-A:YENI unified
   diff (YENiYENHYENI diff -u "O^2-L-YENI)!CCUR-L-^1L!A|p-aG+-z
   *S:iCURFCURjP:q-a-o`i(c)l 1/2X!A <<h"IYENI diff -c "OYENI|"-a-o
   context diff -a-o diff YENi-`aS:o(R)e(c)o:
   3/4\AA-a!A|]|O+-AAE"IYENI!CCUR@-e|O"YEN!ACURj^3-L-NOTO+-A:YENI
   diff -ruN S:YYENi!C

   "O|p!G



 % diff -c oldfile newfile

   (c)I

 % diff -c -r olddir newdir

   +-N.|^1i-S(c)wYENO/?y!A^2-L-YENI context -a-o diff AE!C

   (c)I-aI^1^3NOTO...

 % diff -u oldfile newfile

   (c)I

 % diff -u -r olddir newdir

   +-N^2-L-YENICUR@ 1/4E-a-o diff !A|yNOTO(R)ae|!NOTDEG unified !C

   S:o|h-a-o^2O,`^3!YEN-:!A 1/2D-DEGN 3/4\ diff(1)!C

   CUR@YEN^1+-z"IYENI diff(1) "O^2-L-YENI diff AE (YENiYENH"IYENI
   patch(1)
   (c)RYENO"O'u,OCUR@CURU)!A'NYENiYENH'-L-YENaeYEN|I!AYENH<<K^3Q
   FreeBSD |NOT?y!C ^3z^1L"IYENI uU 2.1 ,` CURCUR(c)OCURP:^2D--a-o
   send-pr(1) u{|!'NYENiYENHS:^1|"^3oP:uCURuS:@!C 
   1/2D--a`.N!GCUR-L-nYENuS:a diff AEuo"`i FreeBSD technical
   discussions P:l>> 1/4 1/2 * 3/4A!A S:_<<hYEN|IYENi-`a.|^3Q?oS:N!I
   S:UI.|<<D+-`.P?E+-z'-L-YENae-a-o *S:i
   (^3oNOTOCUR@O,qCURup^1-o!I)!F |]NOTDEGS:UI^3-L-<<U:|-L-!A
   |]|^1|^3(R)ECUR-L-CUR@(c)w-`aDEG-:YENssS:Y *YEN?DEGYAD!A|y PR
   ,e(R)AE(R)w+-NCUR@-a 1/2<<O<<uuU^3o"C,DEGO?y!A
   |]|^1YENun|^3CURH|^3CURF(R)EP:!YEN|I'N-`a^3QS:iYEN?CURF!C
   |p-aG+-z-a-oDEGYAD^3o/S:iCURCURYEN]NOTA patch !ACUR-L-nS:NCURF|b
   1/4D-ADYEN[CURW [PATCH] "O+-j 1/2OCUR@CURU!C

   |p-aG+-z>>{NOTDEG|X 3/4A ("O|p 1/4W!BS:RAE(R) *(c)IS:oS:iAE|W)!A
   AUYENiYENH|O 1/4{"IYENI tar "O+-NAE(R) *YEN'YEN]!AuM<<aYENI
   uuencode(1) "O 1/2s 1/2X!C|^1YEN~!ACUR]YENiYENHYENI shar(1)
   ^2-L-YENI-a-oCURe|!!C

   |p-aG+-z-a-o *S:iYENi-`a|s|b 1/4c,|b-a-o-aS:A:^3!A"O|p!A +-zCUR-L-
   1/2T(c)wNOTUAo:-a-o-a(c)AAvDEGYAD!A(c)I-aI.PA:+->>Yn,g^1LS:oA:Y(R)ae-a-o'_
   1/4fCUR~YENiYENHuoS:GYEN|I!A <<hA^3-a 1/2+-uuou^1 FreeBSD core
   team!A|OCUR-L-NOTO^3z^1L send-pr(1) "OuoDEGe!C FreeBSD core team
   ^3oCURp^2O|"uCURj|h+-q"AE FreeBSD -a-oCURe+-`CURuS:@!C
   >>Yn-a`.N-a-oNOTO!A^3oOCURp^2OCUR]|]|^1CURQCURA|-L-,L!A
   |]|^1YENu|^3|b<<D+-`YEN^2n-a-o(R)EO!ACUR~A^3 1/4g<<Hu^1YENLI!C

   1/2D-DEGN|O intro(9) (c)M style(9) YENHCURF,NAo:(c)o 1/4P:
   1/4gu{|! 1/2X-a-o.(R)aeDEG 3/4|n!C Y-`a|bDEGeYENXNOTUAo:u{|!
   1/2XCURS:<<e!AYENyCURF,N^3o"C,!A"-o^1iCURj(R)a"O>>!+-NNOTO.YENCURj-a-oADEGS:U!C

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

  2.4. .s`i(c)l 1/2X(c)I<<n-a-oYEN[E^3nAAeYEN]

   |p-aG+-zYEN'-oa'-L-"N^3W 1/4O,uCURj-a-o`i(c)l 1/2X!A(c)I-aINOTDEG
   FreeBSD  1/4WYEN[<<n-a-o.sYEN\-`a!A
   <<hYENi-`aYEN^2P:.+-NYEN|I^3z^1L uuencode P:i|ae 1/2s
   1/2X!A(c)IP:C,"`iNOTYO Web (c)I FTP
   -,AI!AYENH<<KS:o|h-a-oCURH-`aDEG-:+-o"`iYEN|!C|p-aG+-z"S|^3^3o
   1/4E-a-oYEND 3/4-:!A  1/2D-"`iNOTUAo:-a-o FreeBSD P:l>> 1/4 1/2 *
   3/4A'-L-YENX!ANOTYNOTYNOTOS:_|^3CURHA:@.NADEG+-z(c)n,mYEN|I!C

   ^1i(c)oCURjP:q-a-o`i(c)l
   1/2X|O"YEN!AAo:(c)o-a(c)AAv-a-oDEGYAD-aO:(c)w.|^3Q'-L-YENX!C
   FreeBSD
   DEGoYEN>>"t^2ICURCUR-`aDEG-:"IYENI-a-o-a(c)AAvAn(c)uYEN]NOTA!G

    1. BSD -a(c)AAv!CS:UIP:E|V(c)o"IYENI^3oAth+-AAAv-a-o`i(c)l 1/2X!A
       |]NOTDEGYEN|!yCUR-L--athYEN[|h
       3/4l-a-o+-o/YENo!z!A|]|OS:o-`aDEG-:S:lCURTHDEGO.~YENo/.~"IYENI!C
       FreeBSD "ACUR-L-CURI^1iDEGO.~CUR 1/2YENq"IYENIYEN|-a-o`i(c)l
       1/2X!ANOTUCURI!A S:UI?n.YEN|a^1-aAyDEGO.~CUR
       1/2YENq"IYENIS:UI-a-o`i(c)l 1/2X!A .iuM!A|p-aGYEN|IY^3I^2
       *-`aS:a^3!CURA`i(c)l 1/2X!A<<.s(R) 1/2AO/u^1 FreeBSD
       'NS:o|nCURF!C

    2. GNU General Public License!A(c)IA^2-oU !S:GPL!"!C
       S:UI"ACUR-L-<<U:AAw-ai"IYENI^3o 1/4E+-AAAv-a-o`i(c)l 1/2X!A
       |]NOTDEGDEGO.~CUR
       1/2YENq"IYENIYEN|>>YnDEGuS:o|h-a-oCURuS:@!CCUR-L-^1L!AYENN(c)o<<U:|h"IYENI
       GPL +-AAAv-a-o`i(c)l 1/2XYENO/<<eNOTOuL-akA *S:K-a-o
       (compiler, assembler, text formatteruYENuYEN)
       !A(c)Uu'"IYENI(c)O|^3+-A:YENI^3o
       1/4E+-AAAv-a-o^3nAAeNOTO<<U:CUR-L-(c)u' 1/4-a-o!C +-A:YENI GPL
       +-AAAv-a-o`i(c)l 1/2X.|^3Q(c)n"`i`i(c)l
       1/2X-a-oCUR@"C,-S(c)w-a-o|`i,m!A"O|p /sys/gnu (c)I
       /usr/src/gnu!AYENH<<K"-o"C,>>{NOTDEG GPL
       YENi-`a.|^3y|"^3A.D--a-oCURH-`aDEG-:S:@YENX 3/4A.i-a-oS:PA_!C

   "IYENI"a:YEN|+-AAAv-a-o`i(c)l 1/2X|bP:iCURJ FreeBSD
   CURS:<<eYEN^2P:.,g^1L.V<<-a-o'_ 1/4f(c)M|O 1/4{!C
   +-A:YENIYEN]S:tA:Y 1/4F"i-a-oDEGO.~+-AAAv-a-o`i(c)l
   1/2X!ACUR@-e"O>>!.|^3Q(c)Uu'!A |yS:UI^1-aAy^3o"C,`i(c)l
   1/2X-a-oS:@-aI!A^3z^1L|UCURv-a-o-oTH^1D"OuoYENNOTYEN|I!C

   Yn|b+-z-a-o|"-aGCURWYEN[CURJ !S:BSD-based!" -a(c)AAv-a-o,U:!A 
   1/2D-S:aCURU|CCURaa|r(c)n"`i"CYEN-:`i(c)l
   1/2X-a-o^3IP:}(c)l^3!CURA!A "AYENI 3/4A.i-a-oCURaa|r'A'<< %%
   CURS:P:!-a-oCURaa|r!C

 Copyright (c) %%proper_years_here%%
         %%your_name_here%%, %%your_state%%  %%your_zip%%.
         All rights reserved.

 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions
 are met:
 1. Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer as
    the first lines of this file unmodified.
 2. Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.

 THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

         $Id$

   NOTDEGCURFCURe<<K+-z-a-o"IYENI!A|b
   /usr/share/examples/etc/bsd-style-copyright
   CUR]YENiYENHS:a:"`i|^1+-AAAv-a-oDEGAEYEN>>!C

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

  2.5. AUS:U,e-a-:!BuwAAe(c)I Internet mirror

   S:UI<<D+-`A:@.N+-u"u:|U-oO/S:I|!-a-o(R)
   1/2AO/!AYENHP:iCUR@"B(c)Y(R)i FreeBSD p^1-o
   !A|]NOTDEG|^3+-z-a-oCURa:<<u!A^1^3S:UI^3o
   1/4E-a-o,qCURuS:VCUROCUR~-`aDEG-:|^3S:oCURj-a-o|"'N!I (R)
   1/2AO/uwAAeCUR]<<D+-`<<n!A|]NOTDEG^3o 1/4E-`aDEG-:ADEGS:US:UI
   1/4WYEN[YENiCURa:'(c)-a-ouwAAe-oO/Ath!A
   |OS:UICURCUR-a-o<<U:|hCURH"A"S|^3"NOTDEG-:-a-o,e-a-:"OAE,m^3o"C,uwAAe!C

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

    2.5.1. (R) 1/2'U

   FreeBSD DEGo-a-:.|NOTOCUR@O<<DAc,S:Q-a-o!B|^3
   1/2Ou|AAAS:KAAv-a-oDEGo-a-:.|!A
   CURS:(c)OYENH.|<<O/YENss^3oODEGo-a-:.|!ANOTONOTDEGCURFAAy FreeBSD
   p^1-o-`aDEG-:YENi-ao/YENiCUR[!C |]NOTDEG,ODEGo-a-:.|A:Y 501(c)3
   ^1eAAe!ACUR@-e|O"YEN(R)
   1/2'Uu^1DEGo-a-:.|-a-o,U:!AYENiYENHS:KA-oNOTu:DEGeAp"^1|NOTCURJu|!A
   YENHCURINOT`iA^1(c)O|h|{|NOTCURJu|!C^3q+-`^1i(c)o|^3
   1/2Ou|AAAS:KAAv-a-o^1eAAeP:i|ae(R) 1/2AO/-a-o,U:!A
   YENiYENHS:e(c)eAp"^1|NOTCURJCURCURA^3 1/2Ou|^3!CURA-a-o-a-:AB!C

   +-zYENiYENHS:aCURa:^2 1/4+-H(c)^1!G

       The FreeBSD Foundation
       7321 Brockway Dr.
       Boulder, CO 80303
       USA
     

   FreeBSD DEGo-a-:.|^2{|bYENiYENH^3z^1L PayPal +-q-ooCURW+-u"u:(R)
   1/2'U!C |p-aG+-z.Q|VDEGo-a-:.|(R) 1/2'U!A 1/2D-DEGN 3/4\ FreeBSD
   DEGo-a-:.| -oo-,!C

   Ao:(c)o FreeBSD DEGo-a-:.|-a-oS:o|h,O+-!!AYENiYENH|b FreeBSD
   DEGo-a-:.| -- CURP:^2D- S:a:"`i!CnApu,DEGo-a-:.|!A 
   1/2D-uoDEGe^1qCURlP:lYENo"`i <bod@FreeBSDFoundation.org>!C

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

    2.5.2. (R) 1/2AO/uwAAe

   FreeBSD p^1-oAAw-aiYENo|oCURH(R) 1/2AO/YENiYENH"IYENI-a-ouwAAe!C
   |p-aG+-z|^3?^3 1/2`i(R) 1/2AO/uwAAe!A 1/2D-ApA' (R)
   1/2AO/Apu,CURH?`iCUR 1/2<<C,!C

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

    2.5.3. |"NOTDEG FreeBSD mirror -a-o-oo-,

   S:UIAAw-ai.s-a-o FTP!BWWW (c)I cvsup mirror
   -,!C|p-aG+-zS:AE+-ae|"NOTDEG^3o 1/4E-a-o mirror -,!A  1/2D-DEGN
   3/4\ |p|oNOT[^3] FreeBSD mirror
   CUR@CURaa!AYENHCURF,NP:iCUR@"B-a-o+-!-ap!C

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

YEN>>CURaaCURI"a:YENLCURaaYENo!AYENiYENN|^1CURU,u:!Gftp://ftp.FreeBSD.org/pub/FreeBSD/doc/!C

        Y|^3 FreeBSD CURe+--oADEGY!A 1/2D-YENy 3/4\AA-a FreeBSD
         NOTUAo:CURaaYENo!A|pCUR-L--`a,N"M-a-o,U:!A|ANOT-c-,ss
                       <questions@FreeBSD.org>!C
  Ao:(c)oYEN>>CURaaYENo-a-oDEGYAD!A 1/2D-NOT-c-,ss <doc@FreeBSD.org>!C
