Date: Fri, 28 Jul 2006 03:08:00 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 102628 for review Message-ID: <200607280308.k6S380Ze061607@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=102628 Change 102628 by jb@jb_freebsd2 on 2006/07/28 03:07:22 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#17 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#15 integrate .. //depot/projects/dtrace/doc/share/sgml/man-refs.ent#10 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/book.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/introduction/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/tools/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/share/sgml/authors.ent#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/share/sgml/catalog#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/share/sgml/l10n.ent#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/share/sgml/trademarks.ent#2 integrate .. //depot/projects/dtrace/ports/GIDs#2 integrate .. //depot/projects/dtrace/ports/MOVED#7 integrate .. //depot/projects/dtrace/ports/Mk/bsd.php.mk#3 integrate .. //depot/projects/dtrace/ports/Mk/bsd.scons.mk#4 integrate .. //depot/projects/dtrace/ports/Mk/bsd.sites.mk#4 integrate .. //depot/projects/dtrace/ports/UIDs#2 integrate .. //depot/projects/dtrace/ports/UPDATING#7 integrate .. //depot/projects/dtrace/src/UPDATING#5 integrate .. //depot/projects/dtrace/src/bin/sh/sh.1#3 integrate .. //depot/projects/dtrace/src/bin/test/test.1#3 integrate .. //depot/projects/dtrace/src/etc/rc.d/ipfw#3 integrate .. //depot/projects/dtrace/src/etc/rc.d/mdconfig#2 integrate .. //depot/projects/dtrace/src/etc/rc.d/mdconfig2#2 integrate .. //depot/projects/dtrace/src/etc/rc.d/natd#3 integrate .. //depot/projects/dtrace/src/etc/rc.subr#7 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/ld/Makefile.alpha#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/ld/Makefile.amd64#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/ld/Makefile.arm#1 branch .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/ld/Makefile.i386#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/ld/Makefile.ia64#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/libbfd/Makefile.arm#1 branch .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/libopcodes/Makefile.arm#1 branch .. //depot/projects/dtrace/src/gnu/usr.bin/cc/cc_tools/auto-host.h#3 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_arm.c#1 branch .. //depot/projects/dtrace/src/lib/libc/gen/tls.c#3 integrate .. //depot/projects/dtrace/src/lib/libc/net/Makefile.inc#4 integrate .. //depot/projects/dtrace/src/lib/libc/net/getaddrinfo.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/net/name6.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/malloc.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/sys/Symbol.map#2 integrate .. //depot/projects/dtrace/src/lib/libfetch/Makefile#3 integrate .. //depot/projects/dtrace/src/lib/libftpio/Makefile#3 integrate .. //depot/projects/dtrace/src/lib/libkvm/kvm_proc.c#4 integrate .. //depot/projects/dtrace/src/lib/libmemstat/memstat.h#4 integrate .. //depot/projects/dtrace/src/lib/libthr/pthread.map#4 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_init.c#6 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_sig.c#3 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_syscalls.c#3 integrate .. //depot/projects/dtrace/src/lib/libutil/Makefile#4 integrate .. //depot/projects/dtrace/src/libexec/rlogind/Makefile#3 integrate .. //depot/projects/dtrace/src/libexec/telnetd/Makefile#3 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#6 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#13 integrate .. //depot/projects/dtrace/src/release/doc/share/misc/dev.archlist.txt#6 integrate .. //depot/projects/dtrace/src/rescue/librescue/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/Makefile#5 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifconfig.8#3 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifieee80211.c#3 integrate .. //depot/projects/dtrace/src/sbin/ipfw/ipfw.8#5 integrate .. //depot/projects/dtrace/src/sbin/ping6/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/route/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/rtsol/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/setkey/Makefile#3 integrate .. //depot/projects/dtrace/src/sbin/sysctl/sysctl.c#3 integrate .. //depot/projects/dtrace/src/share/man/man4/Makefile#11 integrate .. //depot/projects/dtrace/src/share/man/man4/acpi_thermal.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/altq.4#6 integrate .. //depot/projects/dtrace/src/share/man/man4/enc.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/miibus.4#4 integrate .. //depot/projects/dtrace/src/share/man/man4/polling.4#4 integrate .. //depot/projects/dtrace/src/share/man/man4/stge.4#1 branch .. //depot/projects/dtrace/src/share/man/man4/vlan.4#3 integrate .. //depot/projects/dtrace/src/share/man/man5/rc.conf.5#9 integrate .. //depot/projects/dtrace/src/share/man/man8/rc.subr.8#4 integrate .. //depot/projects/dtrace/src/share/man/man9/mbuf.9#3 integrate .. //depot/projects/dtrace/src/share/misc/bsd-family-tree#5 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/machdep.c#5 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/trap.c#4 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/vm_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/ia32/ia32_syscall.c#3 integrate .. //depot/projects/dtrace/src/sys/arm/arm/trap.c#4 integrate .. //depot/projects/dtrace/src/sys/arm/at91/kb920x_machdep.c#7 integrate .. //depot/projects/dtrace/src/sys/arm/include/db_machdep.h#3 integrate .. //depot/projects/dtrace/src/sys/arm/xscale/i80321/i80321.c#3 integrate .. //depot/projects/dtrace/src/sys/arm/xscale/i80321/iq80321.c#5 integrate .. //depot/projects/dtrace/src/sys/boot/forth/loader.conf#4 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_stream.c#5 integrate .. //depot/projects/dtrace/src/sys/conf/Makefile.arm#5 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#13 integrate .. //depot/projects/dtrace/src/sys/conf/files#23 integrate .. //depot/projects/dtrace/src/sys/conf/files.i386#10 integrate .. //depot/projects/dtrace/src/sys/conf/files.powerpc#4 integrate .. //depot/projects/dtrace/src/sys/crypto/via/padlock.c#7 integrate .. //depot/projects/dtrace/src/sys/crypto/via/padlock.h#1 branch .. //depot/projects/dtrace/src/sys/crypto/via/padlock_cipher.c#1 branch .. //depot/projects/dtrace/src/sys/crypto/via/padlock_hash.c#1 branch .. //depot/projects/dtrace/src/sys/dev/acpica/acpi_thermal.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-pci.h#4 integrate .. //depot/projects/dtrace/src/sys/dev/ath/ath_rate/sample/sample.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_ath.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/em/if_em.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/iwi/if_iwi.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/kbdmux/kbdmux.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/gentbi.c#1 branch .. //depot/projects/dtrace/src/sys/dev/mii/ip1000phy.c#1 branch .. //depot/projects/dtrace/src/sys/dev/mii/ip1000phyreg.h#1 branch .. //depot/projects/dtrace/src/sys/dev/mii/miidevs#4 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.c#13 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_pci.c#11 integrate .. //depot/projects/dtrace/src/sys/dev/ral/rt2560.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/scc/scc_core.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/scc/scc_dev_z8530.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sk/if_sk.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/sk/if_skreg.h#6 integrate .. //depot/projects/dtrace/src/sys/dev/stge/if_stge.c#1 branch .. //depot/projects/dtrace/src/sys/dev/stge/if_stgereg.h#1 branch .. //depot/projects/dtrace/src/sys/dev/uart/uart_cpu_powerpc.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/uart/uart_dev_z8530.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/uart/uart_tty.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/usb/if_ural.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/usb/uplcom.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/usb/usbdevs#5 integrate .. //depot/projects/dtrace/src/sys/fs/udf/ecma167-udf.h#3 integrate .. //depot/projects/dtrace/src/sys/fs/udf/udf_vfsops.c#4 integrate .. //depot/projects/dtrace/src/sys/geom/eli/g_eli.c#5 integrate .. //depot/projects/dtrace/src/sys/geom/eli/g_eli_integrity.c#2 integrate .. //depot/projects/dtrace/src/sys/i386/conf/GENERIC#13 integrate .. //depot/projects/dtrace/src/sys/i386/i386/machdep.c#6 integrate .. //depot/projects/dtrace/src/sys/i386/i386/trap.c#9 integrate .. //depot/projects/dtrace/src/sys/ia64/ia32/ia32_trap.c#3 integrate .. //depot/projects/dtrace/src/sys/ia64/ia64/trap.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/kern_malloc.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/kern_mutex.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/kern_rwlock.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/kern_sx.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/subr_acl_posix1e.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/sys_socket.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_domain.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_sockbuf.c#1 branch .. //depot/projects/dtrace/src/sys/kern/uipc_socket.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_socket2.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_syscalls.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_usrreq.c#8 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_syscalls.c#6 integrate .. //depot/projects/dtrace/src/sys/modules/Makefile#13 integrate .. //depot/projects/dtrace/src/sys/modules/agp/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/asr/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/bridgestp/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/hwpmc/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/if_bridge/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/mii/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/osf1/Makefile#3 delete .. //depot/projects/dtrace/src/sys/modules/padlock/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/stge/Makefile#1 branch .. //depot/projects/dtrace/src/sys/net/bpf.c#7 integrate .. //depot/projects/dtrace/src/sys/net/bridgestp.c#3 integrate .. //depot/projects/dtrace/src/sys/net/bridgestp.h#1 branch .. //depot/projects/dtrace/src/sys/net/if_bridge.c#8 integrate .. //depot/projects/dtrace/src/sys/net/if_bridgevar.h#3 integrate .. //depot/projects/dtrace/src/sys/net/if_enc.c#4 integrate .. //depot/projects/dtrace/src/sys/net/if_ethersubr.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_gif.c#5 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211.c#4 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211.h#3 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_freebsd.h#3 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_ioctl.c#4 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_ioctl.h#3 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_output.c#3 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_proto.c#3 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_proto.h#3 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_var.h#3 integrate .. //depot/projects/dtrace/src/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#4 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_ether.c#3 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_ksocket.c#3 integrate .. //depot/projects/dtrace/src/sys/netinet6/README#3 delete .. //depot/projects/dtrace/src/sys/netinet6/icmp6.c#3 integrate .. //depot/projects/dtrace/src/sys/netipsec/keysock.c#4 integrate .. //depot/projects/dtrace/src/sys/netncp/ncp_sock.c#3 integrate .. //depot/projects/dtrace/src/sys/netsmb/smb_trantcp.c#3 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_socket.c#6 integrate .. //depot/projects/dtrace/src/sys/nfsserver/nfs_srvsock.c#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/conf/GENERIC#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/conf/NOTES#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/include/md_var.h#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/include/ofw_machdep.h#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/include/pcb.h#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/clock.c#5 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/mem.c#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/ofw_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/trap.c#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/psim/sio_iobus.c#3 delete .. //depot/projects/dtrace/src/sys/powerpc/psim/uart_iobus.c#1 branch .. //depot/projects/dtrace/src/sys/sparc64/conf/GENERIC#7 integrate .. //depot/projects/dtrace/src/sys/sparc64/sparc64/trap.c#4 integrate .. //depot/projects/dtrace/src/sys/sys/_label.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/bufobj.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/extattr.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/mbuf.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/mutex.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/protosw.h#6 integrate .. //depot/projects/dtrace/src/sys/sys/socket.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/socketvar.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/syscallsubr.h#5 integrate .. //depot/projects/dtrace/src/sys/sys/unpcb.h#3 integrate .. //depot/projects/dtrace/src/sys/vm/vm_object.c#4 integrate .. //depot/projects/dtrace/src/tools/tools/nanobsd/FlashDevice.sub#4 integrate .. //depot/projects/dtrace/src/usr.bin/enigma/enigma.c#3 integrate .. //depot/projects/dtrace/src/usr.bin/ftp/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/logger/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/make/parse.c#3 integrate .. //depot/projects/dtrace/src/usr.bin/rpcinfo/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/systat/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/systat/mbufs.c#4 integrate .. //depot/projects/dtrace/src/usr.bin/telnet/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/truss/i386-fbsd.c#4 integrate .. //depot/projects/dtrace/src/usr.sbin/Makefile#6 integrate .. //depot/projects/dtrace/src/usr.sbin/inetd/Makefile#4 integrate .. //depot/projects/dtrace/src/usr.sbin/lpr/Makefile.inc#3 integrate .. //depot/projects/dtrace/src/usr.sbin/mld6query/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/ndp/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/rip6query/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/route6d/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/rrenumd/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/rtadvd/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/rtsold/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/devices.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/syslogd/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/traceroute6/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/trpt/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.sbin/trpt/trpt.c#3 integrate .. //depot/projects/dtrace/www/de/docs/books.sgml#4 integrate .. //depot/projects/dtrace/www/de/news/news.xml#10 integrate .. //depot/projects/dtrace/www/de/news/press.xml#8 integrate .. //depot/projects/dtrace/www/de/platforms/alpha.sgml#2 integrate .. //depot/projects/dtrace/www/en/cgi/Makefile#2 integrate .. //depot/projects/dtrace/www/en/cgi/cgi-style.pl#3 integrate .. //depot/projects/dtrace/www/en/cgi/gallery.cgi#2 delete .. //depot/projects/dtrace/www/en/docs/books.sgml#3 integrate .. //depot/projects/dtrace/www/en/gnome/news.xml#5 integrate .. //depot/projects/dtrace/www/en/projects/ideas/index.sgml#11 integrate .. //depot/projects/dtrace/www/en/prstats/Makefile#2 integrate .. //depot/projects/dtrace/www/en/prstats/index.sgml#2 integrate .. //depot/projects/dtrace/www/en/smp/index.sgml#3 integrate .. //depot/projects/dtrace/www/en/snapshots/index.sgml#6 integrate .. //depot/projects/dtrace/www/fr/prstats/Makefile#2 integrate .. //depot/projects/dtrace/www/fr/prstats/index.sgml#2 integrate .. //depot/projects/dtrace/www/ja/prstats/Makefile#2 integrate .. //depot/projects/dtrace/www/share/sgml/includes.header.xsl#3 integrate .. //depot/projects/dtrace/www/share/sgml/usergroups.xml#6 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#17 (text+ko) ==== @@ -1,4 +1,4 @@ -<!-- $FreeBSD: doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml,v 1.593 2006/07/18 22:27:23 acm Exp $ --> +<!-- $FreeBSD: doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml,v 1.594 2006/07/26 19:45:59 novel Exp $ --> <!-- NOTE TO COMMITTERS: Contributors lists are sorted in alphabetical order by first name. @@ -5592,6 +5592,11 @@ </listitem> <listitem> + <para>Martin Tournoij + <email>carpetsmoker@gmail.com</email></para> + </listitem> + + <listitem> <para>Martti Kuparinen <email>martti.kuparinen@ericsson.com</email></para> </listitem> ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#15 (text+ko) ==== @@ -1,7 +1,7 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/porters-handbook/book.sgml,v 1.735 2006/07/20 11:20:58 erwin Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/porters-handbook/book.sgml,v 1.737 2006/07/24 20:32:20 simon Exp $ --> <!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [ @@ -9553,194 +9553,30 @@ <sect1 id="dads-uid-and-gids"> <title>UIDs and GIDs</title> + <para>The current list of reserved UIDs and GIDs can be found + in <filename>ports/UIDs</filename> and + <filename>ports/GIDs</filename>.</para> + <para>If your port requires a certain user to be on the installed system, let the <filename>pkg-install</filename> script call <command>pw</command> to create it automatically. Look at - <filename role="package">net/cvsup-mirror</filename> for an example.</para> + <filename role="package">net/cvsup-mirror</filename> for an example. + Please note that this is strongly discouraged, please register + user/group ID numbers as stated below.</para> <para>If your port must use the same user/group ID number when it is installed as a binary package as when it was compiled, then you must - choose a free UID from 50 to 999 and register it below. Look at + choose a free UID from 50 to 999 and register it either in + <filename>ports/UIDs</filename> (for users) or in + <filename>ports/GIDs</filename> (for groups). Look at <filename role="package">japanese/Wnn6</filename> for an example.</para> <para>Make sure you do not use a UID already used by the system or other ports.</para> - <para>This is the current list of UIDs between 50 and 999.</para> - - <!-- Please keep this list sorted by uid --> - <programlisting>bind:*:53:53:Bind Sandbox:/:/sbin/nologin -majordom:*:54:54:Majordomo Pseudo User:/usr/local/majordomo:/nonexistent -rdfdb:*:55:55:rdfDB Daemon:/var/db/rdfdb:/bin/sh -spamd:*:58:58:SpamAssassin user:/var/spool/spamd:/sbin/nologin -cyrus:*:60:60:the cyrus mail server:/nonexistent:/nonexistent -gnats:*:61:1:GNATS database owner:/usr/local/share/gnats/gnats-db:/bin/sh -proxy:*:62:62:Packet Filter pseudo-user:/nonexistent:/nonexistent -uucp:*:66:66:UUCP pseudo-user:/var/spool/uucppublic:/usr/libexec/uucp/uucico -xten:*:67:67:X-10 daemon:/usr/local/xten:/nonexistent -pop:*:68:6:Post Office Owner (popper):/nonexistent:/sbin/nologin -wnn:*:69:7:Wnn:/nonexistent:/nonexistent -pgsql:*:70:70:PostgreSQL pseudo-user:/usr/local/pgsql:/bin/sh -oracle:*:71:71::0:0:Oracle:/usr/local/oracle7:/sbin/nologin -ircd:*:72:72:IRC daemon:/nonexistent:/nonexistent -ircservices:*:73:73:IRC services:/nonexistent:/nonexistent -simscan:*:74:74:Simscan User:/nonexistent:/sbin/nologin -ifmail:*:75:66:Ifmail user:/nonexistent:/nonexistent -www:*:80:80:World Wide Web Owner:/nonexistent:/sbin/nologin -alias:*:81:81:QMail user:/var/qmail/alias:/nonexistent -qmaild:*:82:81:QMail user:/var/qmail:/nonexistent -qmaill:*:83:81:QMail user:/var/qmail:/nonexistent -qmailp:*:84:81:QMail user:/var/qmail:/nonexistent -qmailq:*:85:82:QMail user:/var/qmail:/nonexistent -qmailr:*:86:82:QMail user:/var/qmail:/nonexistent -qmails:*:87:82:QMail user:/var/qmail:/nonexistent -mysql:*:88:88:MySQL Daemon:/var/db/mysql:/sbin/nologin -vpopmail:*:89:89:VPop Mail User:/usr/local/vpopmail:/nonexistent -firebird:*:90:90:Firebird Database Administrator:/usr/local/firebird:/bin/sh -mailman:*:91:91:Mailman User:/usr/local/mailman:/sbin/nologin -gdm:*:92:92:GDM Sandbox:/:/sbin/nologin -jabber:*:93:93:Jabber Daemon:/nonexistent:/nonexistent -p4admin:*:94:94:Perforce admin:/usr/local/perforce:/sbin/nologin -interch:*:95:95:Interchange user:/usr/local/interchange:/sbin/nologin -squeuer:*:96:96:SQueuer Owner:/nonexistent:/bin/sh -mud:*:97:97:MUD Owner:/nonexistent:/bin/sh -msql:*:98:98:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh -rscsi:*:99:99:Remote SCSI:/usr/local/rscsi:/usr/local/sbin/rscsi -squid:*:100:100:squid caching-proxy pseudo user:/usr/local/squid:/sbin/nologin -quagga:*:101:101:Quagga route daemon pseudo user:/usr/local/etc/quagga:/sbin/nologin -ganglia:*:102:102:Ganglia User:/nonexistent:/sbin/nologin -sgeadmin:*:103:103:Sun Grid Engine Admin:/nonexistent:/sbin/nologin -slimserv:*:104:104:Slim Devices SlimServer pseudo-user:/nonexistent:/sbin/nologin -dnetc:*:105:105:distributed.net client and proxy pseudo-user:/nonexistent:/sbin/nologin -clamav:*:106:106:Clamav Antivirus:/nonexistent:/sbin/nologin -cacti:*:107:107:Cacti Sandbox:/nonexistent:/sbin/nologin -webkit:*:108:108:WebKit Default User:/usr/local/www/webkit:/bin/sh -quickml:*:109:109:quickml Server:/nonexistent:/sbin/nologin -vscan:*:110:110:Scanning Virus Account:/var/amavis:/bin/sh -fido:*:111:111:Fido System:/usr/local/fido:/bin/sh -dcc:*:112:112:Distributed Checksum Clearinghouse:/nonexistent:/sbin/nologin -amavis:*:113:113:Amavis-stats Account:/nonexistent:/sbin/nologin -dhis:*:114:114:DHIS Daemon:/nonexistent:/sbin/nologin -_symon:*:115:115:Symon Account:/var/empty:/sbin/nologin -hplip:*:116:116:HPLIP Server:/nonexistent:/sbin/nologin -postfix:*:125:125:Postfix Mail System:/var/spool/postfix:/sbin/nologin -_bgpd:*:130:130:BGP Daemon:/var/empty:/sbin/nologin -_ospfd:*:131:131:OSPF Daemon:/var/empty:/sbin/nologin -rbldns:*:153:153:rbldnsd pseudo-user:/nonexistent:/sbin/nologin -sfs:*:171:171:Self-Certifying File System:/nonexistent:/sbin/nologin -agk:*:172:172:AquaGateKeeper:/nonexistent:/nonexistent -polipo:*:173:173:polipo web cache:/nonexistent:/sbin/nologin -bogomilter:*:174:174:milter-bogom:/nonexistent:/sbin/nologin -moinmoin:*:192:192:MoinMoin User:/nonexistent:/sbin/nologin -sympa:*:200:200:Sympa Owner:/nonexistent:/sbin/nologin -privoxy:*:201:201:Privoxy proxy user:/nonexistent:/sbin/nologin -dspam:*:202:202:Dspam:/nonexistent:/sbin/nologin -shoutcast:*:210:210:Shoutcast sandbox:/nonexistent:/bin/sh -_tor:*:256:256:Tor anonymising router:/var/db/tor:/bin/sh -smxs:*:260:260:Sendmail X SMTPS:/nonexistent:/sbin/nologin -smxq:*:261:261:Sendmail X QMGR:/nonexistent:/sbin/nologin -smxc:*:262:262:Sendmail X SMTPC:/nonexistent:/sbin/nologin -smxm:*:263:263:Sendmail X misc:/nonexistent:/sbin/nologin -smx:*:264:264:Sendmail X other:/nonexistent:/sbin/nologin -mrtg:*:279:279:MRTG daemon:/nonexistent:/sbin/nologin -ldap:*:389:389:OpenLDAP Server:/nonexistent:/sbin/nologin -drweb:*:426:426:Dr.Web Mail Scanner:/nonexistent:/sbin/nologin -courier:*:465:465:Courier Mail Server:/nonexistent:/sbin/nologin -_bbstored:*:505:505::0:0:BoxBackup Store Daemon:/nonexistent:/bin/sh -ejabberd:*:544:544::0:0:ejabberd pseudo user:/var/spool/ejabberd:/bin/sh -qtss:*:554:554:Darwin Streaming Server:/nonexistent:/sbin/nologin -ircdru:*:555:555:Russian hybrid IRC server:/nonexistent:/bin/sh -messagebus:*:556:556:D-BUS Daemon User:/nonexistent:/sbin/nologin -avahi:*:558:558:Avahi Daemon User:/nonexistent:/sbin/nologin -bnetd:*:700:700:Bnetd user:/nonexistent:/sbin/nologin -bopm:*:717:717:Blitzed Open Proxy Monitor:/nonexistent:/bin/sh -openxpki:*:777:777:OpenXPKI Owner:/nonexistent:/usr/sbin/nologin -bacula:*:910:910:Bacula Daemon:/var/db/bacula:/sbin/nologin</programlisting> - - <para>This is the current list of reserved GIDs.</para> - - <!-- Please keep this list sorted by gid --> - <!-- XXX incomplete! --> - <programlisting>bind:*:53: -rdfdb:*:55: -spamd:*:58: -cyrus:*:60: -proxy:*:62: -authpf:*:63: -uucp:*:66: -xten:*:67: -dialer:*:68: -network:*:69: -pgsql:*:70: -simscan:*:74: -audit:*:77: -www:*:80: -qnofiles:*:81: -qmail:*:82: -mysql:*:88: -vpopmail:*:89: -firebird:*:90: -mailman:*:91: -gdm:*:92: -jabber:*:93: -p4admin:*:94: -interch:*:95: -squeuer:*:96: -mud:*:97: -msql:*:98: -rscsi:*:99: -squid:*:100: -quagga:*:101: -ganglia:*:102: -sgeadmin:*:103: -slimserv:*:104: -dnetc:*:105: -clamav:*:106: -cacti:*:107: -webkit:*:108: -quickml:*:109: -vscan:*:110: -fido:*:111: -dcc:*:112: -amavis:*:113: -dhis:*:114: -_symon:*:115: -postfix:*:125: -maildrop:*:126: -_bgpd:*:130: -_ospfd:*:131: -rbldns:*:153: -sfs:*:171: -agk:*:172: -polipo:*:173: -moinmoin:*:192: -sympa:*:200: -dspam:*:202: -_tor:*:256: -smxs:*:260: -smxq:*:261: -smxc:*:262: -smxm:*:263: -smx:*:264: -mrtg:*:279: -ldap:*:389: -drweb:*:426: -courier:*:465: -_bbstored:*:505: -ejabberd:*:544: -qtss:*:554: -ircdru:*:555: -messagebus:*:556: -realtime:*:557: -avahi:*:558: -bnetd:*:700: -bopm:*:717: -openxpki:*:777: -bacula:*:910:</programlisting> - - <para>Please include a notice when you submit a port (or an upgrade) - that reserves a new UID or GID in this range. This allows us to - keep the list of reserved IDs up to date.</para> + <para>Please include a patch against these two files when you + require a new user or group to be created for your + port.</para> </sect1> <sect1 id="dads-rational"> ==== //depot/projects/dtrace/doc/share/sgml/man-refs.ent#10 (text+ko) ==== @@ -20,7 +20,7 @@ lexicographical order by the entity (i.e., the dots used in place of special characters should not be expanded when comparing). - $FreeBSD: doc/share/sgml/man-refs.ent,v 1.390 2006/06/25 15:07:09 marck Exp $ + $FreeBSD: doc/share/sgml/man-refs.ent,v 1.393 2006/07/25 15:38:35 bmah Exp $ --> <!ENTITY man...1 "<citerefentry/<refentrytitle/[/<manvolnum/1//"> @@ -3304,6 +3304,7 @@ <!ENTITY man.em.4 "<citerefentry/<refentrytitle/em/<manvolnum/4//"> <!ENTITY man.emu10k1.4 "<citerefentry/<refentrytitle/emu10k1/<manvolnum/4//"> <!ENTITY man.en.4 "<citerefentry/<refentrytitle/en/<manvolnum/4//"> +<!ENTITY man.enc.4 "<citerefentry/<refentrytitle/enc/<manvolnum/4//"> <!ENTITY man.ep.4 "<citerefentry/<refentrytitle/ep/<manvolnum/4//"> <!ENTITY man.esp.4 "<citerefentry/<refentrytitle/esp/<manvolnum/4//"> <!ENTITY man.ex.4 "<citerefentry/<refentrytitle/ex/<manvolnum/4//"> @@ -3505,6 +3506,7 @@ <!ENTITY man.npx.4 "<citerefentry/<refentrytitle/npx/<manvolnum/4//"> <!ENTITY man.nsp.4 "<citerefentry/<refentrytitle/nsp/<manvolnum/4//"> <!ENTITY man.null.4 "<citerefentry/<refentrytitle/null/<manvolnum/4//"> +<!ENTITY man.nfe.4 "<citerefentry/<refentrytitle/nfe/<manvolnum/4//"> <!ENTITY man.nve.4 "<citerefentry/<refentrytitle/nve/<manvolnum/4//"> <!ENTITY man.ofw.console.4 "<citerefentry/<refentrytitle/ofw_console/<manvolnum/4//"> <!ENTITY man.ohci.4 "<citerefentry/<refentrytitle/ohci/<manvolnum/4//"> @@ -3601,6 +3603,7 @@ <!ENTITY man.snd.csa.4 "<citerefentry/<refentrytitle/snd_csa/<manvolnum/4//"> <!ENTITY man.snd.ds1.4 "<citerefentry/<refentrytitle/snd_ds1/<manvolnum/4//"> <!ENTITY man.snd.emu10k1.4 "<citerefentry/<refentrytitle/snd_emu10k1/<manvolnum/4//"> +<!ENTITY man.snd.emu10kx.4 "<citerefentry/<refentrytitle/snd_emu10kx/<manvolnum/4//"> <!ENTITY man.snd.envy24.4 "<citerefentry/<refentrytitle/snd_envy24/<manvolnum/4//"> <!ENTITY man.snd.es137x.4 "<citerefentry/<refentrytitle/snd_es137x/<manvolnum/4//"> <!ENTITY man.snd.ess.4 "<citerefentry/<refentrytitle/snd_ess/<manvolnum/4//"> @@ -3633,6 +3636,7 @@ <!ENTITY man.ste.4 "<citerefentry/<refentrytitle/ste/<manvolnum/4//"> <!ENTITY man.stf.4 "<citerefentry/<refentrytitle/stf/<manvolnum/4//"> <!ENTITY man.stg.4 "<citerefentry/<refentrytitle/stg/<manvolnum/4//"> +<!ENTITY man.stge.4 "<citerefentry/<refentrytitle/stge/<manvolnum/4//"> <!ENTITY man.stl.4 "<citerefentry/<refentrytitle/stl/<manvolnum/4//"> <!ENTITY man.stli.4 "<citerefentry/<refentrytitle/stli/<manvolnum/4//"> <!ENTITY man.streams.4 "<citerefentry/<refentrytitle/streams/<manvolnum/4//"> @@ -3891,6 +3895,7 @@ <!ENTITY man.uuencode.5 "<citerefentry/<refentrytitle/uuencode/<manvolnum/5//"> <!ENTITY man.uuencode.format.5 "<citerefentry/<refentrytitle/uuencode.format/<manvolnum/5//"> <!ENTITY man.vgrindefs.5 "<citerefentry/<refentrytitle/vgrindefs/<manvolnum/5//"> +<!ENTITY man.wpa.supplicant.conf.5 "<citerefentry/<refentrytitle/wpa_supplicant.conf/<manvolnum/5//"> <!ENTITY man.wtmp.5 "<citerefentry/<refentrytitle/wtmp/<manvolnum/5//"> <!ENTITY man.adventure.6 "<citerefentry/<refentrytitle/adventure/<manvolnum/6//"> ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/book.sgml#2 (text+ko) ==== @@ -1,7 +1,8 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/zh_TW.Big5/books/developers-handbook/book.sgml,v 1.1 2006/06/17 10:22:43 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/developers-handbook/book.sgml,v 1.2 2006/07/26 03:57:20 vanilla Exp $ + Original revision: 1.52 --> <!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [ @@ -15,7 +16,7 @@ <bookinfo> <title>FreeBSD Developers' Handbook</title> - <corpauthor>The FreeBSD Documentation Project</corpauthor> + <corpauthor>FreeBSD 文件計畫</corpauthor> <pubdate>August 2000</pubdate> @@ -46,25 +47,25 @@ </legalnotice> <abstract> - <para>Welcome to the Developers' Handbook. This manual is a - <emphasis>work in progress</emphasis> and is the work of many - individuals. Many sections do not yet exist and some of those - that do exist need to be updated. If you are interested in - helping with this project, send email to the &a.doc;.</para> - - <para>The latest version of this document is always available - from the <ulink url="&url.base;/index.html">FreeBSD World - Wide Web server</ulink>. It may also be downloaded in a - variety of formats and compression options from the <ulink - url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">FreeBSD FTP - server</ulink> or one of the numerous <ulink - url="&url.books.handbook;/mirrors-ftp.html">mirror - sites</ulink>.</para> + <para> + 歡迎使用 Developers' Handbook! + 這份文件是由許多人 <emphasis>不斷撰寫</emphasis> 而成的, + 而且許多章節仍需更新或者內容還是一片空白, + 如果你想幫忙 FreeBSD 文件計劃, + 請寄信到 &a.doc;。 + </para> + + <para> + 最新版的文件都在 <ulink url="&url.base;/index.html">FreeBSD 官網</ulink> 上面, + 也可從 <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">FreeBSD FTP server</ulink> 下載不同格式的資料。 + 當然也可以在其他的 <ulink url="&url.books.handbook;/mirrors-ftp.html">mirror站</ulink>下載。 + </para> + </abstract> </bookinfo> <part id="Basics"> - <title>Basics</title> + <title>基本概念</title> &chap.introduction; &chap.tools; @@ -75,7 +76,7 @@ </part> <part id="ipc"> - <title>Interprocess Communication</title> + <title>Interprocess Communication(IPC)</title> &chap.sockets; &chap.ipv6; @@ -83,7 +84,7 @@ </part> <part id="kernel"> - <title>Kernel</title> + <title>Kernel(核心)</title> &chap.dma; &chap.kerneldebug; @@ -91,14 +92,14 @@ </part> <part id="architectures"> - <title>Architectures</title> + <title>Architectures(電腦架構)</title> &chap.x86; </part> <part id="appendices"> - <title>Appendices</title> + <title>附錄</title> <bibliography> ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/introduction/chapter.sgml#2 (text+ko) ==== @@ -1,7 +1,8 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/zh_TW.Big5/books/developers-handbook/introduction/chapter.sgml,v 1.1 2006/06/17 10:22:43 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/developers-handbook/introduction/chapter.sgml,v 1.2 2006/07/26 03:55:46 vanilla Exp $ + Original revision: 1.18 --> <chapter id="introduction"> @@ -18,83 +19,65 @@ </author> </authorgroup> </chapterinfo> - <title>Introduction</title> + <title>簡介</title> <sect1 id="introduction-devel"> - <title>Developing on FreeBSD</title> + <title>在 FreeBSD 開發程式</title> + <para>好了我們開始吧!我想你的 FreeBSD 已經安裝好了,而且已經準備好要用它寫點程式了吧? + 但是要從哪裡開始呢?&os; 有提供寫程式的程式或環境嗎? + 身為 programer 的我可以做什麼呢?</para> - <para>So here we are. System all installed and you are ready to - start programming. But where to start? What does FreeBSD - provide? What can it do for me, as a programmer?</para> - - <para>These are some questions which this chapter tries to answer. - Of course, programming has different levels of proficiency like - any other trade. For some it is a hobby, for others it is their - profession. The information in this chapter might be aimed - toward the beginning programmer; indeed, it could serve useful - for the programmer unfamiliar with the &os; platform.</para> - + <para>本章試著回答你一些問題,當然,單就 programming 程度來說可分很多種層次, + 有的人只是單純當興趣,有的則是他的專業, + 本章主要內容是針對程式初學者, + 當然,對於那些不熟 &os; 的程式開發者而言,本文件內容也是十分實用的。</para> </sect1> <sect1 id="introduction-bsdvision"> <title>The BSD Vision</title> - <para>To produce the best &unix; like operating system package - possible, with due respect to the original software tools - ideology as well as usability, performance and - stability.</para> + <para>為了讓你寫出來的程式在 &unix; like系統上具有良好的使用性、效能和穩定性, + 我們必須跟你介紹一些程式概念(original software tools ideology)。 </para> </sect1> <sect1 id="introduction-archguide"> - <title>Architectural Guidelines</title> + <title>程式架構指南</title> - <para>Our ideology can be described by the following - guidelines</para> + <para>我們想介紹的概念如下</para> <itemizedlist> - <listitem><para>Do not add new functionality unless an - implementor cannot complete a real application without - it.</para></listitem> + <listitem><para>在整個程式還沒寫完前,不要增加新的功能。</para></listitem> - <listitem><para>It is as important to decide what a system is - not as to decide what it is. Do not serve all the world's - needs; rather, make the system extensible so that additional - needs can be met in an upwardly compatible - fashion.</para></listitem> + <listitem><para>另外一個重點就是,讓你自己選擇你的程式將會具有何種功能, + 而不是讓別人決定,不想要去滿足全世界的需求,除非你想讓你的程式具有擴充性或相容性。</para></listitem> - <listitem><para>The only thing worse than generalizing from one - example is generalizing from no examples at - all. </para></listitem> + <listitem><para>千萬記住:在沒有相關經驗時,參考範例程式碼所寫出來的程式, + 會比自己憑空寫出來的好。</para></listitem> - <listitem><para>If a problem is not completely understood, it is - probably best to provide no solution at all.</para></listitem> + <listitem><para>當你寫的程式沒辦法完全解決問題時,最好的方法就是不要試著要去解決它。</para></listitem> - <listitem><para>If you can get 90 percent of the desired effect - for 10 percent of the work, use the simpler - solution.</para></listitem> + <listitem><para>若用 10% 的心力就能輕鬆完成 90% 的工作份量,就用這個簡單法子吧。</para></listitem> - <listitem><para>Isolate complexity as much as - possible.</para></listitem> + <listitem><para>盡可能地簡化問題的複雜。</para></listitem> - <listitem><para>Provide mechanism, rather than policy. In - particular, place user interface policy in the client's - hands.</para></listitem> + <listitem><para>提供機制(mechanism),而非原則(policy)。 + 比方說,把使用者介面選擇權交由使用者來決定。</para></listitem> </itemizedlist> - <para>From Scheifler & Gettys: "X Window System"</para> + <para>以上摘自 Scheifler & Gettys 的 "X Window System" 論文</para> </sect1> <sect1 id="introduction-layout"> - <title>The Layout of - <filename class="directory">/usr/src</filename></title> + <title><filename class="directory">/usr/src</filename> 的架構</title> - <para>The complete source code to FreeBSD is available from our - public CVS repository. The source code is normally installed in - <filename class="directory">/usr/src</filename> which contains the - following subdirectories:</para> + <para> + 完整的 FreeBSD 原始碼都在公開的 CVS repository 中。 + 通常 FreeBSD 原始碼都會裝在 <filename class="directory">/usr/src</filename>, + 而且包含下列子目錄: + </para> <para> <informaltable frame="none" pgwide="1"> ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/tools/chapter.sgml#2 (text+ko) ==== @@ -1,7 +1,8 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/zh_TW.Big5/books/developers-handbook/tools/chapter.sgml,v 1.1 2006/06/17 10:22:44 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/developers-handbook/tools/chapter.sgml,v 1.2 2006/07/26 03:56:43 vanilla Exp $ + Original revision: 1.46 --> <chapter id="tools"> @@ -19,127 +20,111 @@ </authorgroup> </chapterinfo> - <title>Programming Tools</title> - <sect1 id="tools-synopsis"><title>Synopsis</title> + <title>程式開發工具</title> + <sect1 id="tools-synopsis"><title>概敘</title> - <para>This chapter is an introduction to using some of the - programming tools supplied with FreeBSD, although much of it - will be applicable to many other versions of &unix;. It does - <emphasis>not</emphasis> attempt to describe coding in any - detail. Most of the chapter assumes little or no previous - programming knowledge, although it is hoped that most - programmers will find something of value in it.</para> + <para> + 本章將介紹如何使用一些 FreeBSD 所提供的程式開發工具(programing tools), + 本章所介紹的工具程式在其他版本的 &unix; 上也可使用, + 在此 <emphasis>並不會</emphasis> 嘗試描述寫程式時的每個細節, + 本章大部分篇幅都是假設你以前沒有或只有少數的寫程式經驗, + 不過,還是希望大多數的程式開發人員都能從中重新得到一些啟發。 + </para> </sect1> - <sect1 id="tools-intro"><title>Introduction</title> + <sect1 id="tools-intro"><title>簡介</title> - <para>FreeBSD offers an excellent development environment. - Compilers for C, C++, and Fortran and an assembler come with the - basic system, not to mention a Perl interpreter and classic &unix; - tools such as <command>sed</command> and <command>awk</command>. - If that is not enough, there are many more compilers and - interpreters in the Ports collection. FreeBSD is very - compatible with standards such as <acronym>&posix;</acronym> and - <acronym>ANSI</acronym> C, as well with its own BSD heritage, so - it is possible to write applications that will compile and run - with little or no modification on a wide range of - platforms.</para> + <para> + FreeBSD 提供一個非常棒的開發環境, + 比如說像是 C、C++、Fortran 和 assembler(組合語言)的編譯器(compiler), + 在 FreeBSD 中都已經包含在基本的系統中了 + 更別提 Perl 和其他標準 &unix; 工具,像是<command>sed</command> 以及 <command>awk</command>, + 如果你還是覺得不夠,FreeBSD在 Ports collection 中還提供其他的編譯器和直譯器(interpreter), + FreeBSD 相容許多標準,像是 <acronym>&posix;</acronym> 和 <acronym>ANSI</acronym> C, + 當然還有它所繼承的 BSD 傳統。 + 所以在 FreeBSD 上寫的程式不需修改或頂多稍微修改,就可以在許多平台上編譯、執行。 + </para> - <para>However, all this power can be rather overwhelming at first - if you have never written programs on a &unix; platform before. - This document aims to help you get up and running, without - getting too deeply into more advanced topics. The intention is - that this document should give you enough of the basics to be - able to make some sense of the documentation.</para> + <para> + 無論如何,就算你從來沒在 &unix; 平台上寫過程式,也可以徹底感受到FreeBSD 令人無法抗拒的迷人魔力。 + 本章的目標就是協助你快速上手,而暫時不需深入太多進階主題, + 並且講解一些基礎概念,以讓你可以瞭解我們在講些什麼。 + </para> - <para>Most of the document requires little or no knowledge of - programming, although it does assume a basic competence with - using &unix; and a willingness to learn!</para> + <para> + 本章內容並不要求你得有程式開發經驗,或者你只有一點點的經驗而已。 + 不過,我們假設你已經會 &unix; 系統的基本操作, + 而且更重要的是,請保持樂於學習的心態! + </para> </sect1> <sect1 id="tools-programming"> - <title>Introduction to Programming</title> + <title>Programming 概念</title> - <para>A program is a set of instructions that tell the computer to - do various things; sometimes the instruction it has to perform - depends on what happened when it performed a previous - instruction. This section gives an overview of the two main - ways in which you can give these instructions, or - <quote>commands</quote> as they are usually called. One way - uses an <firstterm>interpreter</firstterm>, the other a - <firstterm>compiler</firstterm>. As human languages are too - difficult for a computer to understand in an unambiguous way, - commands are usually written in one or other languages specially - designed for the purpose.</para> + <para> + 簡單的說,程式只是一堆指令的集合體;而這些指令是用來告訴電腦應該要作那些事情。 + 有時候,指令的執行取決於前一個指令的結果而定。 + 本章將會告訴你有 2 個主要的方法,讓你可以對電腦下達這些指示(instruction) 或 <quote>命令(commands)</quote>。 + 第一個方法就是 <firstterm>直譯器(interpreter)</firstterm>, + 而第二個方法是 <firstterm>編譯器(compiler)</firstterm>。 + 由於對於電腦而言,人類語言的語意過於模糊而太難理解, + 因此命令(commands)就常會以一種(或多種)程式語言寫成,用來指示電腦所要執行的特定動作為何。 + </para> <sect2> - <title>Interpreters</title> + <title>直譯器</title> - <para>With an interpreter, the language comes as an environment, - where you type in commands at a prompt and the environment - executes them for you. For more complicated programs, you can - type the commands into a file and get the interpreter to load - the file and execute the commands in it. If anything goes - wrong, many interpreters will drop you into a debugger to help - you track down the problem.</para> + <para> + 使用直譯器時,所使用的程式語言就像變成一個會和你互動的環境。 + 當在命令提示列上打上命令時,直譯器會即時執行該命令。 + 在比較複雜的程式中,可以把所有想下達的命令統統輸入到某檔案裡面去, + 然後呼叫直譯器去讀取該檔案,並且執行你寫在這個檔案中的指令。 + 如果所下的指令有錯誤產生,大多數的直譯器會進入偵錯模式(debugger), + 並且顯示相關錯誤訊息,以便對程式除錯。 + </para> - <para>The advantage of this is that you can see the results of - your commands immediately, and mistakes can be corrected - readily. The biggest disadvantage comes when you want to - share your programs with someone. They must have the same - interpreter, or you must have some way of giving it to them, - and they need to understand how to use it. Also users may not - appreciate being thrown into a debugger if they press the - wrong key! From a performance point of view, interpreters can - use up a lot of memory, and generally do not generate code as - efficiently as compilers.</para> + <para> + 這種方式好處在於:可以立刻看到指令的執行結果,以及錯誤也可迅速修正。 + 相對的,最大的壞處便是當你想把你寫的程式分享給其他人時,這些人必須要有跟你一樣的直譯器。 + 而且別忘了,他們也要會使用直譯器直譯程式才行。 + 當然使用者也不希望不小心按錯鍵,就進入偵錯模式而不知所措。 + 就執行效率而言,直譯器會使用到很多的記憶體, + 而且這類直譯式程式,通常並不會比編譯器所編譯的程式的更有效率。 + </para> - <para>In my opinion, interpreted languages are the best way to - start if you have not done any programming before. This kind - of environment is typically found with languages like Lisp, - Smalltalk, Perl and Basic. It could also be argued that the - &unix; shell (<command>sh</command>, <command>csh</command>) is itself an - interpreter, and many people do in fact write shell - <quote>scripts</quote> to help with various - <quote>housekeeping</quote> tasks on their machine. Indeed, part - of the original &unix; philosophy was to provide lots of small - utility programs that could be linked together in shell - scripts to perform useful tasks.</para> + <para> + 筆者個人認為,如果你之前沒有學過任何程式語言,最好先學學習直譯式語言(interpreted languages), + 像是 Lisp,Smalltalk,Perl 和 Basic 都是,&unix; 的 shell 像是 <command>sh</command> 和 <command>csh</command> + 它們本身就是直譯器,事實上,很多人都在它們自己機器上撰寫各式的 shell <quote>script</quote>, + 來順利完成各項 <quote>housekeeping(維護)</quote> 任務。 + &unix; 使用哲學之一就是提供大量的小工具, + 並使用 shell script 來組合運用這些小工具,以便工作更有效率。 </sect2> <sect2> - <title>Interpreters available with FreeBSD</title> + <title>FreeBSD 提供的直譯器</title> - <para>Here is a list of interpreters that are available from - the &os; Ports Collection, with a brief discussion of - some of the more popular interpreted languages.</para> + <para> + 下面這邊有份 &os; Ports Collection 所提供的直譯器清單,還有討論一些比較受歡迎的直譯式語言</para> - <para>Instructions on how to get and install applications - from the Ports Collection can be found in the - <ulink url="&url.books.handbook;/ports-using.html"> - Ports section</ulink> of the handbook. - + <para> + 至於如何使用 Ports Collection 安裝的說明,可參閱 FreeBSD Handbook 中的 + <ulink url="&url.books.handbook;/ports-using.html">Ports章節</ulink>。 <variablelist> <varlistentry> <term><acronym>BASIC</acronym></term> <listitem> - <para>Short for Beginner's All-purpose Symbolic - Instruction Code. Developed in the 1950s for teaching - University students to program and provided with every - self-respecting personal computer in the 1980s, - <acronym>BASIC</acronym> has been the first programming - language for many programmers. It is also the foundation - for Visual Basic.</para> + <para>BASIC 是 Beginner's ALL-purpose Symbolic Instruction Code 的縮寫。 + BASIC 於 1950 年代開始發展,最初開發這套語言的目的是為了教導當時的大學學生如何寫程式。 + 到了 1980,<acronym>BASIC</acronym>已經是很多 programmer 第一個學習的程式語言了。 + 此外,BASIC 也是 Visual Basic 的基礎。</para> - <para>The Bywater Basic Interpreter can be found in the - Ports Collection as - <filename role="package">lang/bwbasic</filename> - and the Phil Cockroft's Basic Interpreter - (formerly Rabbit Basic) is available as - <filename role="package">lang/pbasic</filename>.</para> + <para>FreeBSD Ports Collection 也有收錄相關的 BASIC 直譯器。 + Bywater Basic 直譯器放在 <filename role="package">lang/bwbasic</filename>。 + 而 Phil Cockroft's Basic 直譯器(早期也叫 Rabbit Basic)放在 <filename role="package">lang/pbasic</filename>。 </listitem> </varlistentry> @@ -147,29 +132,22 @@ <term>Lisp</term> <listitem> - <para>A language that was developed in the late 1950s as - an alternative to the <quote>number-crunching</quote> >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200607280308.k6S380Ze061607>