FreeBSD 3.0-RELEASE 发行说明(1998 年 10 月)
发布说明
FreeBSD 3.0-RELEASE 版本
这是我们第一次发布 3.0-CURRENT 版本,主要面向早期采用者和开发者。一些文档内容可能尚未更新,如果遇到此类问题,请报告。自然,任何安装失败或崩溃也应尽快报告,可以通过发送邮件到 freebsd-bugs@FreeBSD.org
或使用 send-pr
命令来报告(喜欢基于网页的界面的人也可以查看此页面)。
有关 FreeBSD 和 3.0-RELEASE 目录布局的信息(特别是如果你是从软盘安装),请参阅 ABOUT.TXT。安装说明请参见 INSTALL.TXT
和 HARDWARE.TXT
文件。
这也不是 3.0-current(HEAD)分支上的最后一个发布版本,日常快照发布将在此发布后继续进行。请从以下地址安装:ftp://current.FreeBSD.org/pub/FreeBSD
如果你希望获取最新的 3.0-RELEASE 后的技术更新。
1. 自 2.2.X-RELEASE 以来的更新
此处描述的所有变更仅适用于 3.0 分支,除非特别标记为 [MERGED](已合并)功能。
1.1. 内核变更
2.2.x 的 SCSI 子系统几乎完全被新的 "CAM"(通用访问方法)SCSI 系统取代,该系统提供了更好的性能、更好的错误恢复能力,并且支持更多的 SCSI 控制器。
Network Computing Services, Inc. 的 Host ATM Research Platform(“HARP”)软件已集成到系统中。更多信息请参见
/usr/src/share/examples/atm
。SMP(对称多处理)分支已合并。虽然内核目前大部分还不支持重入,但相关工作正在进行中。
4.4BSD-Lite2 的代码已(最终)已合并。
现在支持安全 RPC(并且可以与 NFS 等一同使用)。
现在支持 Sun 的 WEBNFS 标准。
MSDOS 文件系统代码现在支持 VFAT 和 FAT32 分区。 [已合并:也在 2.2.7 及以后版本的 2.2-STABLE 分支中]
支持 ATAPI/IDE 光盘刻录机(测试版)。
支持 ATAPI/IDE 磁带驱动器(测试版)。
支持使用 VESA 视频模式。现在可以选择并使用现代显卡上 BIOS 提供的模式。这使得例如 132x60 大小的控制台和高分辨率图形可以在支持的硬件上以通用方式使用。还支持在光栅模式下运行控制台,这使得 XFree86 能够在通常不受支持的视频硬件上以 800x600 分辨率运行简单的 16 色服务器。
支持 AdvanSys SCSI 控制器。
支持 QLogic SCSI 和光纤通道控制器。
支持基于 Adaptec 7890、7891、7895、7896 和 7897 的控制器(如新款的 2940/2950/3940/3950 等)。
ed0(wd8xxxx, 3c503, NE2000, HP Lan+)以太网设备的默认 IRQ 已从 IRQ 5 变更为 IRQ 10。 ed1 以太网设备已被移除。请使用 Userconfig 工具将 ed0 的值变更为与你的网络卡设置匹配。[已合并:这两个变更也出现在 2.2.6 及以后版本的 2.2-STABLE 分支中]
负责维护日期时间的代码已被重写。新增功能包括:内核和用户空间均支持纳秒级时间,NTPD 进行连续调整而非逐步调整,支持与高精度外部时间信号的同步。
已向打印机驱动程序新增对 PPS API(见 draft-mogul-pps-api-02.txt)的支持,用于 TTL 上升沿输入,支持通过并行打印机端口。
使用新的 if_multiaddrs 列表来处理多播地址,而不是以前涉及 struct in_ifaddr 和 arpcom 的方法,摆脱了可憎的 multi_kludge。
引入了新的 if_media 选择方法,来自 Jason Thorpe 为 NetBSD 实现的版本。[已合并:也在 2.2.5 及以后版本的 2.2-STABLE 分支中]
多会话 ISO-9660 CD-ROM 现在完全支持。默认情况下,将挂载最后一个会话(包括根目录挂载)。对于非根目录挂载,mount_cd9660(8) 可以接受一个参数来挂载特定的会话,而不是默认的会话。
UPAGES 已从每个进程的地址空间中移除,这可通过引用计数实现完全的地址空间和页表共享。
新创建的子进程直接返回用户模式,而不是通过 fork() 系统调用树返回。这消除了在 fork 时的内核栈复制,并简化了某些其他内部操作。这也是支持移除 UPAGES 所必需的。(这个想法最初来自 NetBSD,但我们出于不同的原因实现了它。)
vfork() 现在通过利用新的共享语义而完全功能化,并且测得了显著的速度提升。若出现问题,可以通过 sysctl 变量
kern.fast_vfork
禁用它。由于 4.4BSD(net2, Lite 和 Lite2)中的 popen() 实现存在 bug,因此来自旧版本和其他 BSD 平台的静态链接二进制文件会出现问题。rfork() 也可以访问这些功能,旨在支持内核辅助线程。在 Berkeley Software Design, Inc.、Jonathan Lemmon、Mike Smith、Sean Eric Fagan 和 John Dyson 的贡献下,内核已增加对 VM86 的支持,并且 BSD/OS 提供的 doscmd 已被移植。
实现了参数
SA_NOCLDWAIT
,提供了 System V 选项,允许进程表示希望永远不会接收到僵尸进程或 SIGCHLD 信号。实现了 poll(2),其核心源自 NetBSD 实现。select() 和 poll() 系统调用都使用了 poll 设备、文件和 vnode 操作例程。
实现了类似于 OpenBSD 的 issetugid(2) 调用。我们在更多情况下设置该参数,实施更为谨慎。
异步 IO 已实现(目前在非 SMP 环境下),并增加了对内核辅助线程的支持。
其他一些系统调用,用于与其他系统兼容:getsid(2)、setpgid(2)、nanosleep(2)。
新的系统调用 signanosleep(2) 类似于 nanosleep(2),但使用特定的信号掩码来确定哪些信号会唤醒睡眠。简而言之,这是“等待一组特定的信号,直到达到指定时间”。
sleep(3) 和 usleep(3) 现在是基于 signanosleep(2) 实现的,并且现在具有正确的 SIGALRM 交互语义,sleep(3) 会正确返回剩余时间。
实现了内核链接器,旨在替代 lkm 系统及其相关问题。
所有支持的网络协议已更新,以避免“大的选择” pr_usrreq(),并将进程指针传递给每个可能需要进程凭证或想要休眠的用户请求,取代了以前偶尔正确执行的 curproc 检查和 SS_PRIV 套接字状态参数。后者现已被消除,并且 SO_PRIVSTATE 套接字选项也被清除。现在,协议还可以覆盖通用的发送、接收和轮询例程,这将使得在后续版本中能够实现更高效的协议特定的实现。最后,网络代码的许多部分已被修改,不再在 mbuf 中存储套接字地址和其他元信息,为最终消除它们做准备。现在返回套接字地址的机制仍然高度可能会变化,我们正在进行实验以发现最有效的方法。
现在可以通过 sysctl 禁用对多播 ICMP ECHO REQUEST(“ping”)和地址掩码请求包的响应。netstat 程序将打印出这些事件发生的次数。
修复了 ffs 中一个微妙且罕见的 bug。
VFS 名称缓存已被重新设计,以提高可追踪性和效率。
VOP_LOOKUP() 的通用部分已被放入系统范围的函数中,文件系统可以依赖它来处理标准内容。
Vnode 空闲列表处理已被改进。仅当没有进程关心它们时,vnode 才会出现在空闲列表中。
内核在可能的情况下提供帮助来使用名称缓存中的数据调用 getcwd()。
实现了基于中断的配置挂钩机制。这能使驱动程序推迟部分配置,直到中断完全启用后再进行。这加速了启动过程,因为避免了对设备探测(例如 SCSI 总线探测)等操作的忙等待。
内核中的 timeout(9) 系统已被彻底改进。这为调用插入和删除提供了 O(1) 的时间复杂度,而软时钟中处理的工作量为 O(哈希链长度)。原始论文可以在以下链接找到:http://www.cs.berkeley.edu/~amc/research/timer/
驱动程序缓冲队列的变化以处理有序事务。这旨在为文件系统代码中的数据和元数据写入排序提供支持,一旦完全支持后,将进一步实现。
现在支持 EISA 共享中断,工作框架最初用于支持 PCI 共享中断。
支持 Comtrol Rocketport 卡。
IPFW 的数据包和字节计数器已从 32 位扩展到 64 位,已在 ipfw 中新增
FWD
操作以支持透明代理,且 divert 操作略有变化——有关更多信息,请参阅 natd(8) 和 ipfw(8) 的手册页。新的即插即用(PnP)支持,能使你重新配置 PnP 设备。同时,支持由 PnP 部分检测到的调制解调器并自动连接。[已合并:同样出现在 2.2.6 及之后版本的 2.2-STABLE 分支中]
从 Luigi Rizzo 导入了新的声音代码。该代码仍在开发中,但已经支持多种不同的声卡。[已合并:同样出现在 2.2.6 及之后版本的 2.2-STABLE 分支中]
改进了 psm、mse 和 sysmouse 驱动程序,以提供更好的鼠标支持。特别是,psm 驱动程序现在支持各种“滚轮”鼠标。[已合并:同样出现在 2.2.6 及之后版本的 2.2-STABLE 分支中]
增加了对 SMC EtherPower II 10/100 快速以太网卡(即基于 SMC83c170 EPIC 芯片的 SMC9432TX)的支持。[已合并:同样出现在 2.2.7 及之后版本的 2.2-STABLE 分支中]
增加了对 ATAPI 弯盘驱动器(LS-120)的支持。[已合并:同样出现在 2.2.7 及之后版本的 2.2-STABLE 分支中]
增加了对 IBM Etherjet 以及其他基于 Crystal Semiconductor CS89x0 的网卡(NIC)的支持。[已合并:同样出现在 2.2.7 及之后版本的 2.2-STABLE 分支中]
增加了对 Texas Instruments TNET100 'ThunderLAN' PCI 网卡的支持。[已合并:同样出现在 2.2.8 及之后版本的 2.2-STABLE 分支中]
为 3c900 和 3c905 适配器增加了完整的总线主 DMA 支持,并且增加了对 3c905B 的支持。[已合并:同样出现在 2.2.8 及之后版本的 2.2-STABLE 分支中]
1.2. 安全修复
[已合并:所有变更在指定日期后不久已在 2.2-STABLE 分支中合并]
97/7/29 从 OpenBSD 合并了大量 lpr/lpd 安全修复。
97/8/22 修正了 tip 中的缓冲区溢出(由于 tip 不是 set[ug]id,因此无害)。
97/8/26 修复了 glob 中的缓冲区溢出,无已知的漏洞利用。
97/8/27 修正了 sendmail 中的 vacation 安全问题(SNI)。
97/8/29 inetd 在子进程退出时睡眠时间减少,极大地提高了抵抗 DoS 攻击的能力。
97/8/29 fts 现在是防竞态的,并且新增 find -execdir(仅适用于 -current)。
97/8/31 games 的 setuid 改为 setgid。使得任何游戏的漏洞都无害(仅分数文件 score-file 易受攻击)。请将任何问题报告给 eivind@FreeBSD.org(已知分数文件 score-file 所有权问题)。
97/12/3 增加了 Intel 建议的 F00F bug 修复。如果你没有 Pentium 处理器,内核选项 NO_F00F_HACK 可禁用它。
98/1/20 现在已包含对 LAND 攻击的更强大保护。
CERT 通知 CA-97.17 中提到的 suidperl 漏洞也被认为已修复。
KerberosIV 已合并。
1.3. 用户空间变化
默认二进制类型(及编译工具链)已从 a.out 切换为 ELF。这为我们带来了许多新型编译器技术(其中大部分不支持
a.out
),使可执行文件体积更小,并为 C++ 等语言提供了更好的支持。旧的 a.out 库和二进制文件仍然可以继续使用,并为过渡期提供了同时安装两种类型的选项。Perl4 已被 Perl5 替代,成为系统的标准组件。
默认用户名长度 增加到 16 个字符。 注意:旧的 utmp/wtmp 文件不支持此变更,因为数据记录仍然是旧大小。有关转换工具,请参阅
/usr/src/tools/3.0-upgrade
。/etc/sysconfig 已被更紧凑的 /etc/rc.conf 文件取代。[已合并:也适用于 2.2.1 及更高版本的 2.2-STABLE 分支]
fdisk(8) 现在将磁盘分区从 1 到 4 编号,而不是从 0 到 3。这使其与
/dev
中设备名称使用的编号保持一致。Amd 自动挂载程序 已从 1993 年的 4.4BSD 版本更新为最新的 am-utils 版本。挂载选项发生了一些变化,并支持一个新配置文件
/etc/amd.conf
。详情请参阅 "man 5 amd.conf"。picobsd 包(用于创建自定义 FreeBSD 引导软盘和 "迷你系统")已被引入
/usr/src/release/picobsd
。更多信息请参阅/usr/src/release/picobsd/README.html
。finger(1) 在网络操作时,不再在发送请求后立即关闭套接字,而是等待远程端先关闭。(规范对此未明确规定,我们选择与大多数服务器兼容的行为。)这使其能够使用 MIT 目录并与某些问题较多的 Linux 机器进行互操作。
fetch(1) 新增个新参数,能使与某些处理不当的 HTTP 实现通信,这些实现会因请求消息后立即关闭连接而出错。
netstat(1) 现在使用 sysctl(3) 检索更多统计数据组,并以正确的无符号格式打印大多数数据。
一个新的 VGA 库(
/usr/src/lib/libvgl
)现已存在,用于在 syscons tty 上进行简单的 VGA 图形操作(类似于 Linux 的 libSVGA)。[已合并:也适用于 2.2.5 及更高版本的 2.2-STABLE 分支]Xntpd 的系统日志记录功能已移至一个独立的日志设施(
LOG_NTP
,用户空间名称为 "ntp")。新增一个新的 ioctl 对:SIOC[SG]IFGENERIC。其目的是为将任意 ioctl 子命令传递到网络接口驱动程序提供挂钩。例如,这对于 PPP 驱动程序在驱动程序与用户空间工具之间传递 CHAP 名称、密钥或可变选项是必要的。
sppp(4) 自 FreeBSD 2.2.X 以来得到了显著改进。现在采用完整的 PPP 状态机,支持更多的 LCP 和 IPCP 协商,适合拨号按需连接(例如经常运行在 ISDN 上的连接)。还支持 PAP 和 CHAP 认证。用户空间的配套工具 spppcontrol(8) 是第一个利用上述 SIOC[SG]IFGENERIC ioctl 命令的程序。
moused(8) 已修改为支持带有“滚轮”的各种鼠标。它还会自动识别支持 PnP COM 设备标准的鼠标,因此用户不再需要在命令行上指定鼠标协议类型。[已合并:也适用于 2.2.6 及更高版本的 2.2-STABLE 分支]
ppp(8) 支持包括 PPP 多链路协议(RFC1990)、PPP 回拨(带 CBCP 扩展)和客户端侧 DNS 协商在内的多种新功能。有关可能的配置冲突的详细信息,请参阅源目录中的
README.changes
文件。POSIX 线程库 libc_r 已新增根据单一 UNIX 规范版本 2 定义的 线程读/写锁。
系统文件现在归用户
root
和组wheel
所有。UID 0 比bin
更受保护,尤其是在 NFS 上。/bin/sh 的信号和 trap 处理已重写。这使得 tty 模式下的 emacs 在由 system(2) 调用(例如通过邮件代理)时可以正常工作,并修复了一些语法错误。[已合并:也适用于 2.2.8 及更高版本的 2.2-STABLE 分支]
systat(1)、iostat(8)、rpc.rstatd(8) 和 vmstat(8) 已被改进为使用新的 devstat(3) 库和 devstat(9) 统计子系统。这些工具(除了 rpc.rstatd(8))现在打印出更有用的统计数据,并能够查看系统中所有设备的统计数据,而不仅限于前 8 个设备。
2. 支持的配置
FreeBSD 目前可以运行在各种基于 ISA、VLB、EISA 和 PCI 总线的 PC 上,支持从 386sx 到奔腾级的机器(虽然不推荐使用 386sx)。系统提供对常见 IDE 或 ESDI 硬盘配置、各种 SCSI 控制器、网络和串行卡的支持。
以下列出了目前已知可以与 FreeBSD 兼容的外设设备。其他配置可能也能够正常运行,但尚未收到相关确认。
2.1 硬盘控制器
通用控制器支持:
WD1003 (所有通用 MFM/RLL)
WD1007 (所有通用 IDE/ESDI)
IDE
ATA
Adaptec SCSI 控制器:
Adaptec 1535 ISA SCSI 控制器
Adaptec 154x 系列 ISA SCSI 控制器
Adaptec 174x 系列 EISA SCSI 控制器(支持标准模式和增强模式)
Adaptec 274X/284X/2920/2940/2950/3940/3950 系列 EISA/VLB/PCI SCSI 控制器(包括窄带、宽带和双通道型号)
Adaptec AIC7850、AIC7880、AIC789x 集成 SCSI 控制器
AdvanSys SCSI 控制器:
支持所有型号
Buslogic SCSI 控制器:
Buslogic 545S & 545c
Buslogic 445S/445c VLB SCSI 控制器
Buslogic 742A、747S、747c EISA SCSI 控制器
Buslogic 946c PCI SCSI 控制器
Buslogic 956c PCI SCSI 控制器
DPT SCSI/RAID 控制器:
支持大多数型号
SymBios(原 NCR) PCI SCSI 控制器:
支持型号:53C810、53C825、53c860、53c875
ASUS SC-200
Data Technology DTC3130(所有版本)
NCR 控制器(所有型号)
Symbios 控制器(所有型号)
Tekram DC390W、390U 和 390F
Tyan S1365
其他支持的 SCSI 和光纤通道控制器:
QLogic 控制器
DTC 3290 EISA SCSI 控制器(以 1542 仿真模式运行)
SCSI 外设支持: 支持 SCSI-I 和 SCSI-II 外设,包括硬盘、光盘、磁带机(包括 DAT 和 8mm Exabyte)、介质转换器、处理器目标设备和 CD-ROM 驱动器。
支持 WORM(一次写多次读)设备,只读访问通过 CD-ROM 驱动实现
WORM/CD-R/CD-RW 的写入支持由 cdrecord 提供,该工具可在 ports 树中找到
当前支持的 CD-ROM 类型:
(cd) SCSI 接口(包括 ProAudio Spectrum 和 SoundBlaster SCSI)
(matcd) Matsushita/Panasonic(Creative SoundBlaster)专有接口(562/563 型号)
(scd) Sony 专有接口(所有型号)
(wcd) ATAPI IDE 接口
SCSI 磁带支持:
CAM SCSI 磁带驱动程序对旧的(且许多情况下不兼容的)磁带机支持有限。例如,旧的 SCSI-1 磁带机(如 Exabyte 8200 或老旧的 QIC 型磁带机)可能无法正常工作。
大多数兼容 SCSI-2 的新磁带机应该能正常运行,例如 DAT(DDS-1、2 和 3)、DLT 和较新的 Exabyte 8mm 磁带机。
旧 SCSI 子系统支持但新 CAM SCSI 子系统暂不支持的控制器:
Tekram DC390 和 DC390T 控制器(以及其他基于 AMD 53c974 的卡)
NCR5380/NCR53400(“ProAudio Spectrum”)SCSI 控制器
UltraStor 14F、24F 和 34F SCSI 控制器
Seagate ST01/02 SCSI 控制器
Future Domain 8xx/950 系列 SCSI 控制器
WD7000 SCSI 控制器
Adaptec 1510 系列 ISA SCSI 控制器(不支持可引导设备)
Adaptec 152x 系列 ISA SCSI 控制器
基于 Adaptec AIC-6260 和 AIC-6360 的控制器(包括 AHA-152x 和 SoundBlaster SCSI 卡)
未维护的驱动程序(可能支持或不支持你的硬件):
软盘磁带接口(Colorado/Mountain/Insight)
(mcd) Mitsumi 专有 CD-ROM 接口(所有型号)
2.2 以太网卡
支持以下以太网卡:
Allied-Telesis AT1700 和 RE2000 网卡
AMD PCnet/PCI(79c970 & 53c974 或 79c974)
SMC Elite 16 WD8013 网卡,以及大多数基于 WD8003E、WD8003EBT、WD8003W、WD8013W、WD8003S、WD8003SBT 和 WD8013EBT 的克隆卡。支持 SMC Elite Ultra 和 SMC Etherpower II。
德州仪器 ThunderLAN PCI 网卡,包括:
Compaq Netelligent 系列(10、10/100、10/100 Proliant、10/100 Dual-Port 等)
Compaq Netelligent 10/100 TX Embedded UTP、10 T PCI UTP/Coax、10/100 TX UTP
Compaq NetFlex 3P 系列(3P、3P Integrated、3P w/ BNC)
Olicom OC-2135/2138、OC-2325、OC-2326 10/100 TX UTP
DEC EtherWORKS III 网卡(DE203、DE204 和 DE205)
DEC EtherWORKS II 网卡(DE200、DE201、DE202 和 DE422)
基于 DEC DC21040、DC21041 或 DC21140 的网卡(例如 SMC Etherpower 8432T、DE245 等)
DEC FDDI 网卡(DEFPA/DEFEA)
富士通 MB86960A/MB86965A
惠普 PC Lan+ 网卡(型号:27247B 和 27252A)
Intel EtherExpress 系列:
EtherExpress 16
EtherExpress Pro/10
EtherExpress Pro/100B PCI 快速以太网
Isolan AT 4141-0(16 位)
Isolink 4110(8 位)
Novell NE 系列:NE1000、NE2000 和 NE2100
3Com 系列:
3C501 卡
3C503 Etherlink II
3C505 Etherlink/+
3C507 Etherlink 16/TP
3C509、3C579、3C589(PCMCIA)、3C590/592/595/900/905/905B PCI 和 EISA (Fast) Etherlink III / (Fast) Etherlink XL
东芝以太网卡
基于 Crystal Semiconductor CS89x0 的网卡,包括:
IBM Etherjet ISA
支持来自 IBM 和 National Semiconductor 的 PCMCIA 以太网卡
注意: 目前不支持令牌环网卡。我们正在等待有人提供相应的驱动程序。如果你有兴趣,请联系我们!
2.3 ATM 支持
ATM 主机接口:
FORE Systems, Inc. PCA-200E ATM PCI 适配器
Efficient Networks, Inc. ENI-155p ATM PCI 适配器
ATM 信令协议:
ATM Forum UNI 3.1 信令协议
ATM Forum UNI 3.0 信令协议
ATM Forum ILMI 地址注册
FORE Systems 专有的 SPANS 信令协议
永久虚拟通道(PVCs)
IETF “基于 ATM 的经典 IP 和 ARP”模型:
RFC 1483: "ATM 适配层 5 上的多协议封装"
RFC 1577: "基于 ATM 的经典 IP 和 ARP"
RFC 1626: "ATM AAL5 使用的默认 IP MTU"
RFC 1755: "ATM 信令支持基于 ATM 的 IP"
RFC 2225: "基于 ATM 的经典 IP 和 ARP"
RFC 2334: "服务器缓存同步协议 (SCSP)"
Internet Draft: draft-ietf-ion-scsp-atmarp-00.txt, "使用 SCSP 的分布式 ATMARP 服务"
ATM 套接字接口
2.4 杂项设备
以下杂项设备受支持:
串口卡
AST 4 端口串口卡(使用共享 IRQ)
ARNET 8 端口串口卡(使用共享 IRQ)
ARNET(现为 Digiboard)Sync 570/i 高速串口卡
Boca 系列:
BB1004 4 端口串口卡(不支持调制解调器)
IOAT66 6 端口串口卡(支持调制解调器)
BB1008 8 端口串口卡(不支持调制解调器)
BB2016 16 端口串口卡(支持调制解调器)
Comtrol Rocketport 卡
Cyclades Cyclom-y 串口板
STB 4 端口卡(使用共享 IRQ)
SDL Communications 系列:
Riscom/8 串口板
RISCom/N2 和 N2pci 高速同步串口板
Stallion 多端口串口板:EasyIO、EasyConnection 8/32 和 8/64、ONboard 4/16 以及 Brumby
声卡
支持的型号包括:
Adlib、SoundBlaster、SoundBlaster Pro、ProAudioSpectrum、Gravis UltraSound 和 Roland MPU-401 (通过
snd
驱动程序)绝大多数由 Crystal Semiconductors、OPTi、Creative Labs、Avance、Yamaha 和 ENSONIQ 制造的 ISA 音频编解码器(通过
pcm
驱动程序)
视频与图像采集设备
Connectix QuickCam
Matrox Meteor 视频帧抓取器
Creative Labs Video Spigot 帧抓取器
Cortex1 帧抓取器
Hauppauge Wincast/TV 板卡(PCI)
STB TV PCI
Intel Smart Video Recorder III
基于 Brooktree Bt848 芯片的各类帧抓取器
CD-R 驱动器
HP4020、HP6020、Philips CDD2000/CDD2660 和 Plasmon CD-R 驱动器
其他外设
PS/2 鼠标
标准 PC 游戏手柄
X-10 电源控制器
GPIB 和 Transputer 驱动程序
Genius 和 Mustek 手持扫描仪
基于 Xilinx XC6200 的可重配置硬件卡,与 Virtual Computers (www.vcc.com) 提供的 HOT1 兼容
支持 Dave Mills 的实验性 Loran-C 接收器
注意: FreeBSD 目前不支持 IBM 的 Microchannel (MCA) 总线。
3. 获取 FreeBSD
你可以通过以下方式获取 FreeBSD:
3.1 FTP/邮件
你可以通过访问官方 FreeBSD 站点 ftp.FreeBSD.org
下载 FreeBSD 及其可选软件包。
有关镜像站点的信息,请参阅文件 MIRROR.SITES
。请从网络条件上距离你最近的镜像站点下载发行版。欢迎更多的镜像站点加入!如需成为官方镜像站点,请联系 freebsd-admin@FreeBSD.org
。
如果你无法访问互联网,但可以使用电子邮件,仍然可以通过发送邮件到 ftpmail@ftpmail.vix.com
来获取文件。在邮件中输入关键字“help”,即可获取有关如何通过该机制下载文件的更多信息。不过请注意,这种方式可能会通过邮件传输几十兆字节的数据,因此仅在绝对必要时使用此方法!
3.2 购买光盘
你可以通过以下方式订购 FreeBSD 3.0-RELEASE 和 2.2.x-RELEASE 的光盘:
邮购地址
在线订购
通过以下方式订购:
电子邮件:orders@cdrom.com
官网链接:http://www.cdrom.com
他们的最新目录可以通过 FTP 获取:ftp://ftp.cdrom.com/cdrom/catalog
价格
每张 -RELEASE 光盘的价格为 $39.95,或通过 FreeBSD 订阅购买仅需 $24.95。
FreeBSD SNAPshot 光盘(如有供应)价格为 $39.95,或通过 FreeBSD-SNAP 订阅购买仅需 $14.95。
注意:-RELEASE 和 -SNAP 的订阅是完全独立的。
订阅服务
订阅服务可让你在新版本发布时自动收到更新。每次光盘寄出时,你的信用卡将被扣款,你可以随时取消订阅,无需承担额外费用。
运费
每订单(而非每张光盘)运费:
美国、加拿大和墨西哥:$5
海外:$9
支付方式包括 Visa、Mastercard、Discover、American Express 或美元支票。美国境内还支持货到付款 (COD)。
注意:加州居民需另加 8.25% 的销售税。
退货政策
如果你对光盘不满意,可无条件退货。
4. 从旧版本 FreeBSD 升级
如果你正在从以前的 FreeBSD 版本升级,大多数情况下是从 2.2.x 或 2.1.x(较少情况下) 版本升级,根据你选择的升级方法,以下一些问题可能会影响你。目前升级 FreeBSD 发行版的两种流行方法是:
使用源代码(通过
/usr/src
)还可使用
sysinstall
(二进制)升级
使用源代码
如果选择使用源代码进行升级,需要注意以下两种目标:
标准的
world
目标:将 2.x 系统升级到 3.0。aout-to-elf
目标:不仅会升级系统,还会将系统转换为 ELF 二进制格式。
使用二进制升级选项
通过二进制升级选项,系统会直接升级到 3.0/ELF,同时在 /(<basepath>/lib/aout)
目录中填充内容,以便向后兼容旧的二进制文件。
关于 ELF 转换的重要信息
无论选择哪种方法,切换到 ELF 格式将带来以下变化:
优点:生成的二进制文件体积更小,并可使用大量已移植到其他 ELF 环境的编译工具(由于旧的 a.out 格式较为陈旧,且大多数其他软件项目已不再支持)。
缺点:可用的 ports 和软件包数量会减少,因为许多还未适配 ELF 格式。这些问题会随着时间解决,但如果你希望保持对最多软件包和第三方二进制文件的支持,建议继续使用 a.out 格式。
内核兼容性
当前,内核仍然使用 a.out
格式,以确保旧的 LKM(可加载内核模块)和库接口继续正常工作。但在 3.0-RELEASE 之后,内核将全面转向 ELF 格式。
因此,建议希望生成动态内核组件的用户采用新的 KLD(Kernel Loadable Driver)可加载内核模块机制,而不是旧的 LKM 格式。LKM 格式即将被废弃并停止支持!
[其他重要的升级注意事项应在此处补充]
5. 报告问题、提出建议、提交代码
你的建议、错误报告和代码贡献始终受到重视——请随时报告你发现的任何问题(如果可能,最好附上修复方法)。
如果你的机器支持 Internet 邮件连接,提交错误报告的首选方法是使用 send-pr
命令,或者通过以下链接访问 CGI 脚本提交报告:http://www.FreeBSD.org/send-pr.html。
通过此方式提交的错误报告会被我们可靠的错误归档程序接收,并归档在系统中。你可以放心,我们会尽力尽快响应所有报告的错误。此外,这些错误报告会在 FreeBSD 网站的支持部分公开显示,既有助于修复问题,也能作为“指示参数”提醒其他用户注意潜在问题。
如果由于某些原因无法使用 send-pr
命令提交错误报告,可以尝试发送邮件至:freebsd-bugs@FreeBSD.org
需要注意的是,send-pr
本身是个 shell 脚本,应该可以轻松迁移到其他系统中。我们更希望你通过此界面提交报告,因为这便于我们追踪问题报告。然而,在提交之前,请尽量确认该问题是否已经被修复。
如果你有任何问题或需要技术支持,请发送邮件至:freebsd-questions@FreeBSD.org
此外,作为一项志愿者努力的项目,我们始终欢迎更多愿意帮助的朋友——目前已有的功能增强需求远超我们自身的能力范围!如果你想讨论技术问题或提供帮助,请发送邮件至:freebsd-hackers@FreeBSD.org
请注意,这些邮件列表可能会产生 大量 流量。如果你的邮件访问速度较慢或费用较高,而你只想了解 FreeBSD 的重大事件更新,可以考虑订阅:freebsd-announce@FreeBSD.org
所有邮件列表都可供任何有意愿的人自由加入。只需发送邮件至 MajorDomo@FreeBSD.org,并在邮件正文中单独写上一行关键字 help
,即可获得关于如何加入各种邮件列表、访问存档等更多信息。
此外,还有许多专注于特定兴趣小组的邮件列表未在此处提及,发送邮件至 MajorDomo 并查询即可了解更多信息!
6. 致谢
FreeBSD 汇集了来自全球几十位甚至上百位个人的共同努力,他们为带来这一版本付出了大量心血。有关 FreeBSD 项目团队成员的完整列表,请访问:http://www.FreeBSD.org/handbook/staff.html
如果你已安装文档分发包,也可以查看本地文件:file:/usr/share/doc/handbook/staff.html
特别感谢以下人士和团体:
FreeBSD 捐赠者名单 中的所有捐赠者。
Justin M. Seger,几乎凭一己之力将 ports 转换为 ELF 格式。
Doug Rabson 和 John Birrell,以及 NetBSD 项目,他们为 FreeBSD/alpha 的实现提供了重要支持和间接帮助。
Peter Wemm 为全新的内核模块系统所作出的贡献(同时感谢 Doug Rabson 的大力协助)。
全球成千上万的 FreeBSD 用户和测试者,没有他们,这一版本的发布是不可能实现的。
我们衷心希望你喜欢这一版本的 FreeBSD!
FreeBSD 项目团队
最后更新于