À°§U FreeBSD

$FreeBSD: release/9.1.0/zh_TW.Big5/articles/contributing/article.sgml 38826 2012-05-17 19:12:14Z hrs $

Legal Notice

µL½×¬O­Ó¤H©Î¬O¦UºØ²Õ´¡A¦pªG§Æ±æ¬° FreeBSD ´£¨ÑÀ°§U¡A³£¥i¥H¦b¥»¤å¤¤§ä¨ì¦X¾Aªº¤èªk¡C


Table of Contents
1 §Ú­Ìªº»Ý¨D
2 ¦p¦ó´£¨ÑÀ°§U

§A§Æ±æ´À FreeBSD °µÂI¤°»ò¶Ü¡H¤Ó¦n¤F¡A§Ú­ÌÅwªï§A¡CFreeBSD ¥¿¬O¦³¿à©ó¼s¤j¨Ï¥ÎªÌªº°^Äm¤~±o¥Hµo®i§§¤jªº¡C§Ú­Ì¤£¶È«D±`·PÁ±z©Ò°µªº°^Äm¡A¦Ó¥B¡A³o¨Ç¤u§@¹ï©ó FreeBSD ªº«ùÄòµo®i¤]¦ÜÃö­«­n¡C

¤]³\»P±z·Q¹³ªº¤£¦P¡A±z¬J¤£¥²±o¬O¤@¦W¥X¦âªº Programmer¡A¤]µL¶·©M FreeBSD core team ¦¨­û¦³«Ü¦nªº¨p¥æ¡A§Ú­Ì·|¤@µø¦P¤¯ªº¹ï«Ý±zªº¤u§@¡C FreeBSD ªº¶}µo¤H­û¹M¥¬¥þ²y¡A¤j®a§Þ³N±Mªø¦U²§¡A¦~ÄÖ¤À¥¬¤]«D±`¼sªx¡C µM¦Ó¡A¨C¤Ñ§Ú­Ì³£¦b­±¹ï«ùÄò¼W¥[ªº¤u§@¡A¦Ó­W©ó¨S¦³¨¬°÷ªº¤H¤â¡A¦]¦¹§Ú­ÌÀH®ÉÅwªï±zªºÀ°§U¡C

FreeBSD ­p¹º©Ò³B²zªº¬O¤@­Ó§¹¾ãªº§@·~¨t²ÎÀô¹Ò¡A¦Ó¤£¥u¬O¤@­Ó kernel ©Î¬O¤@¨Ç¹s´²ªº¤u¨ã¥]¡C ¦]¦¹¡A§Ú­Ìªº TODO «Ý¿ì¥ô°È¦Cªí¸Ì¥]§t¦U¦¡¦U¼Ëªº¤u§@¡G ±q¤å¥ó¡B¨Ï¥ÎªÌ´ú¸Õ¡Bdemo¡A¨ì¨t²Î¦w¸Ëµ{¦¡©M§ó±M·~ªº kernel ¶}µo¡C ¦]¦¹µL½×±zªº§Þ³N¤ô·Ç¦p¦ó¡A±q¨Æ¦óºØ»â°ì¡A³£¥i¥HÀ°§U³o­Ó­p¹º¡C

§Ú­Ì¹ªÀy±q¨Æ©M FreeBSD ¬ÛÃö¤u§@ªº¥ø·~©M§Ú­ÌÁpô¡C ±z»Ý­n¤@¨Ç¯S®íªºÂX®i¨Ó¨Ï±zªº²£«~¹BÂà°_¨Ó¶Ü¡H ±z·|µo²{§Ú­Ì«Ü¼Ö·NµªÀ³±zªº½Ð¨D¡A°£«D¬O¯S§Oµ}©_¥j©Çªº¡C ±z¬O§_¥¿±q¨Æ¬ÛÃöªº¼W­È·~°È¡H Åý§Ú­Ì¨ÓÀ°§U±z§a¡A §Ú­Ì¤]³\¥i¥H¦b¬Y¨Ç¤è­±¬Û¤¬¦X§@¡C ¦Û¥Ñ³nÅé¬É¥¿¦b§V¤O¥´¯}¦³ªº®Ø®Ø(¹³¬OÃö©ó³nÅé¶}µo¡B¾P°â©MºûÅ@)¡A §Ú­Ì§Æ±æÀµ½Ð±z¦Ü¤Ö¯àµ¹¥¦¤@¦¸¾÷·|¡C

1 §Ú­Ìªº»Ý¨D

¤U­±¦C¥X¤F¤@¨Ç»Ý­n§¹¦¨ªº¥ô°È©M¤l­p¹º¡A ¥¦­Ì¥Nªí TODO(«Ý¿ì¥ô°È¦Cªí) ¦Cªíªº·N«ä¡A¥H¤Î¨Ï¥ÎªÌªº­n¨D¡C

1.1 ¥¿¦b¶i¦æ¤¤ªº¥ô°È(«Dµ{¦¡¶}µo¤H­û)

«Ü¦h°Ñ¥[ FreeBSD ­p¹ºªº¤H¤£¬O Programmer¡C ³o­Ó­p¹º¸Ì¦³¤å¥ó¼¶¼gªÌ¡Bºô­¶³]­p®v¡B¥H¤Î§Þ³N¤ä´©¤H­û¡C ¹ï©ó³o¨Ç¸q¤u¨Ó»¡¡A¥L­Ì¥u»Ý­n°^Äm¤@¨Ç®É¶¡¡A¨Ã¥B¨ã¦³¾Ç²ßªº·NÄ@¡C

  1. ±z¥i¥H®É±`½¾\ FAQ ©M¤â¥U(Handbook) ¡A¦pªGµo²{¦³¸ÑÄÀ¤£²M·¡ªº¦a¤è¡A©Î¬O¤£¦X®É©yªº¤å¥ó¡A¬Æ¦Ü§¹¥þ¤£¥¿½Tªº¦a¤è¡A ³£½Ð§i¶D§Ú­Ì¡C·íµM¡A­Y¯à¶¶¤â§â¥L­Ì­×¥¿¡A¨Ã§â°É»~±Hµ¹§Ú­Ì¡A¨º´N§ó¦n¤F¡C:) (SGML ¨ä¹ê¨Ã¤£Ãø¾Ç¡A¦ý§Ú­Ì¤]¤£¤Ï¹ï±zª½±µ´£¥æ¤@¯ë ASCII ªº¯Â¤å¦rª©¥»)¡C

  2. À°§U§Ú­Ì§â FreeBSD ¤å¥ó½Ķ¦¨§Aªº¥À»y¡C ¦pªG§Aªº¥À»yª©¥»¤w¸g¦s¦b¤F¡A ¤]¥i¥H½Ķ¤@¨ÇÃB¥~ªº¤å¥ó¡A©ÎªÌÀˬd¨º¨Ç¤w¦³ªº¤å¥ó¬O§_¬°³Ì·sª©¡C ±z¥i¥H¥ý²³æ¬Ý¬Ý FreeBSD ¤å¥ó­p¹º¤¤¦³Ãö ½Ķ®Éªº±`¨£°ÝÃD¡C °Ñ¥[½Ķ¤u§@¡A¨Ã¤£¬O»¡±z­n©t­x¾Ä¾Ô½Ķ©Ò¦³ FreeBSD ¤å¥ó¡C ¨­¬°¸q¤u¡A­n°µ¦h¤Ö¤u§@§¹¥þ¨ú¨M©ó±zªº·NÄ@¡C¤@¥¹¬Y­Ó¤H¶}©l½Ķ¤F¡A ¤§«á´X¥G¤@©w·|¦³¨ä¥L¤H°Ñ»P¨ì³o¨Ç¤u§@¤¤¨Ó¡C ¦pªG®É¶¡¦³­­¡A©ÎªÌºë¤O¤£°÷¥h½Ķ¾ã¥÷¤å¥ó¡A¨º¥i¥H­º¥ý¥h½Ķ¦w¸Ë«ü«n¡C

  3. ¾\Ū FreeBSD general questions ¶l»¼½×¾Â ¨Ã°¸º¸Â½¾\(¬Æ¦Ü¦³³W«ß¦a³o¼Ë°µ) the comp.unix.bsd.freebsd.misc newsgroup ¡C»P§O¤H¤À¨É±zªº±M·~ª¾ÃÑ¡A ¨ÃÀ°§U¥L­Ì¸Ñ¨M°ÝÃD¡A¬O¥ó¥O¤H´r®®ªº¨Æ±¡¡F ¦³®É­Ô¡A±z¬Æ¦Ü¥i¥H¦b³o­Ó¹Lµ{¤¤¾Ç¨ì¤@¨Ç·sªF¦è¡I ³o¨Ç½×¾Â¦³®É¤]·|¬°±z¿Eµo¥X¤@¨Ç¤£¿ùªº·Qªk¡C

1.2 ¥¿¦b¶i¦æ¤¤ªº¥ô°È(µ{¦¡¶}µo¤H­û)

¦C¦b³o¸Ìªº¤j³¡¤À¥ô°È³£»Ý­n±z§ë¤J¥iÆ[ªº®É¶¡¡A©ÎªÌ»Ý­n±z¦b FreeBSD kernel ¤è­±¦³Â×´Iªºª¾ÃÑ¡A©ÎªÌ¨âªÌ³£­n¡C·íµM³o¸Ì¤]¦³«Ü¦h­«­nªº¥ô°È¡A¾A¦X¹³¬O ¡§weekend hackers¡¨ ³oÃþ¥u¥Î¶g¥½´N¥i¥H·d©wªº Hacker¡C

  1. ¦pªG±z¥¿¦b¶]ªº¬O FreeBSD -CURRENT ª©¥»¡A¨Ã¥Bºô¸ô³t«×ÁÙ¤£¿ù¡A ¨º»ò¥i¥H¨ì current.FreeBSD.org¡A ³o¥x¨C¤Ñ·|¦³¤@­Ó·sª©¥» ¡X¡X ¦pªG±z¦³ªÅ¡A ±z¥i¥H¤T¤£¤­®É¤U¸ü¨Ã¦w¸Ë¡A ¨ä¶¡¦pªG¥X¤F¤°»ò°ÝÃD¡A½Ð§i¶D§Ú­Ì¡C

  2. ¾\Ū FreeBSD problem reports ¶l»¼½×¾Â¡C³o¨Ç°ÝÃD¡A©Î³\±z¯à´£¨Ñ¦³«Ø³]©Ê·N¸qªº·N¨£¡A ©ÎªÌÀ°¦£´ú¸Õ¤@¨Ç patch ¡C¦¹¥~¡A¬Æ¦Ü¥i¥H¹Á¸Õ­×¥¿¨ä¤¤ªº¤@¨Ç°ÝÃD¡C

  3. ¦pªG±zª¾¹D¦³¤@¨Ç­×¥¿¤w¸g¦b -CURRENT ¤W¦¨¥\¦a¨Ï¥Î¡A ¦ý¦b¸g¹L¤@¬q®É¶¡(³q±`¬O 2 ¶g¥ª¥k)¤§«á¡A¤´¥¼¦X¨Ö¨ì -STABLE (³o¨BÆJ´N¬O MFC -- Merged From Current)¡A¨º»ò¥i¥Hµ¹¬ÛÃöªº committer ¤H­ûµo«Ê§»ªªº´£¿ô«H¡C

  4. ±N²Ä¤T¤è(3rd party)³nÅé¥[¤J¨ì­ì©l½X¤¤ªº src/contrib ¥Ø¿ý¡C

  5. ½T«O src/contrib ¤¤ªº­ì©l½X¬O³Ì·sªº¡C

  6. ½sĶ­ì©l½X(©Î¬O³¡¤À­ì©l½X)®É¡A½Ð§ï¥Î§ó°ªªºÄµ§iµ¥¯Å(warning level) ¥H«K°»¿ù(debug)¥Î¡A¨Ã¦b§¹¦¨´ú¸Õ¡B½T»{¥¿±`§¹²¦¤§«á¡A²M°£³o¨Ç½sĶªºÄµ§iµ¥¯Å¡C

  7. §ó·s¨º¨Ç¦b ports ¤¤¨Ï¥Î¹L®ÉªºªF¦è¡A ¨Ò¦p gets() ©Î¥]§t malloc.h ©Ò²£¥ÍªºÄµ§i¡C

  8. ¦pªG¦³¬° ports §@¤F¥ô¦ó­×¥¿¡A ½Ð°O±o±N±zªº patch µoµ¹­ì§@ªÌ (³o¼Ë¤U¦¸¤É¯Å®É¡A±zªº¤u§@·|Åܱo»´ÃP¤@¨Ç)¡C

  9. ¥ý¨ú±o¥¿¦¡ªº¼Ð·Ç¡A¦p POSIX® ªº°Æ¥»¡C ¦b FreeBSD C99 & POSIX ¼Ð·Ç¬Û®e­p¹º ºô¯¸¤W¡A¥i¥H±o¨ì¬ÛÃöÃì±µ¡C ½Ð±N FreeBSD ªº¦æ¬°»P¤W­zªº¼Ð·Ç¶i¦æ¤ñ¸û¡A­Y©Ò±oµ²ªG»P C99 & POSIX ¼Ð·Ç¤£¦Pªº¸Ü¡A ¯S§O¬O¨º¨Ç²Ó¸`¦a¤èªº·L¤p®t²§¡A½Ðµo¤@­ÓÃö©ó¥¦ªº PR (°ÝÃD³ø§i)¡C ¦pªG¥i¯à¡A½Ð«ü¥X¦p¦ó­×¥¿¥¦¡A¨ÃÀH PR ´£¥æ patch ¡C ¦pªG±z»{¬°¼Ð·Ç¦³°ÝÃD¡A½Ð¦V³o¨Ç³W®æ¼Ð·Çªº¬ÛÃö¹ÎÅé¡A½Ð¨D¹ï¨ä¶i¦æ­«·sªº¦Ò¼{¡C

  10. ¬°³o¥÷¦Cªí´£¨Ñ§ó¦h«ØÄ³¡I

1.3 ¬d¾\¾ã­Ó PR ¸ê®Æ®w

FreeBSD PR ¦Cªí ³o¸Ì·|Åã¥Ü¥Ø«e©Ò¦³ PR ªº°ÝÃDª¬ºA¡A¥H¤Î¥Ñ FreeBSD ¨Ï¥ÎªÌ´£¥æªº§ï¶i«ØÄ³¡C PR ¸ê®Æ®w¦P®É¥]¬A¤F¶}µo¤H­û©M«D¶}µo¤H­ûªº¥ô°È¡C ¬d¬Ý¨º¨Ç©|¥¼¸Ñ¨Mªº PR¡A¨Ã¬Ý¬Ý¬O§_¦³±z·P¿³½ìªº¥ô°È¡C ³o¨ä¤¤¥i¯à¦³¤@¨Ç¬O«D±`²³æªº°ÝÃD¡A¥u»Ý­n¬Ý¤@¬Ý¨Ã½T»{ PR ¬O¥¿½Tªº¡C ¥t¥~¤@¨Ç¥i¯à·|«D±`½ÆÂø¡A©ÎªÌ§¹¥þ¥¼ªþ¥ô¦ó­×¥¿¡C

­º¥ý¬Ý¤@¬Ý¨º¨ÇÁÙ¨S¦³¤H±µ¤âªº PR¡C ¦pªG PR ¤w¸g¤À°tµ¹¤F¨ä¥¦¤H¡A¦ý¬Ý°_¨Ó¬O±z¯à°÷³B²zªº¡A ±z¥i¥H±H«Hµ¹¨º­Ó¤H¡A¨Ã¸ß°Ý±z¬O§_¥i¥H´£¨ÑÀ°§U ¡X¡X ¥L­Ì¥i¯à¤w¸g¦³¥i¨Ñ´ú¸Õªº patch ¡A©Î¦³¤@¨Ç¥i¨Ñ°Q½×ªº·N¨£¡C

1.4 ¥Ñ ¡§Ideas¡¨ ¤¤¿ï¤@¶µ

FreeBSD list of projects and ideas for volunteers ¦P¼Ë¦a¶}©ñµ¹¦³·NÄ@°Ñ»P FreeBSD ­p¹ºªº¤H¡C ³o¥÷²M³æ±N«ùÄò¦a§ó·s¡A¦P®É´£¨Ñ¦U­Ó¶µ¥Øªº¸ê°Tµ¹©Ò¦³¤H ¡]¤£½×¬O§_¬°µ{¦¡³]­p¤H­û¡^¡C

¥»¤å¤Î¨ä¥L¤å¥ó¡A¥i¥Ñ¦¹¤U¸ü¡Gftp://ftp.FreeBSD.org/pub/FreeBSD/doc/¡C

­Y¦³ FreeBSD ¤è­±ºÃ°Ý¡A½Ð¥ý¾\Ū FreeBSD ¬ÛÃö¤å¥ó¡A¦p¤£¯à¸Ñ¨Mªº¸Ü¡A¦A¬¢¸ß <questions@FreeBSD.org>¡C
Ãö©ó¥»¤å¥óªº°ÝÃD¡A½Ð¬¢¸ß <doc@FreeBSD.org>¡C