# FreeBSD 2.2.1-RELEASE 发行说明（1997 年 4 月）

**发布说明**

**FreeBSD 2.2.1-RELEASE**

2.2.1 是对 2.2 RELEASE 的小幅增量修复版本，主要修复了以下问题：

* 修复了驱动程序 Adaptec 2940 的一些最近发现的问题，这些问题可能导致在负载非常重的系统（如新闻服务器）中出现不稳定情况。
* 修复了一个导致从 CD-ROM 介质安装包时失败的错误。
* 使 Intel EtherExpress Pro/100B 网卡能够在全双工模式下工作。

由于 2.2.1 RELEASE 在 2.2 发布仅一周多后推出，因此文档中仍将此版本称为“2.2”，因为它是 2.2.0-RELEASE 的完整 *替代* 版本，而不仅仅是另一个点版本。

对于 RELENG\_2\_2 分支（该分支目前正在向 2.2.5 版本发展）的最新更新，请访问：`ftp://releng22.FreeBSD.org/pub/FreeBSD/`

这是一个每天快照生成的 RELENG\_2\_2 版本（包含截至该日期的所有最新 2.2 修复）。

## 1. 自 2.1.7 以来的新变化

修复了大量安装错误，更多 pc98 变更已同步，还有其他什么变化呢？

* gdb 4.16 已从 -current 版本合并，第三方源代码现在大部分存放在 `/usr/src/contrib` 目录下。
* 更新了对 DEC DEFPA/DEFEA FDDI 硬件的支持。
* 已移除 Makefile 旧选项 `HAVE_FPU`，现在浮点库的选择（使用浮点仿真器或协处理器）完全自动化。这将加速不喜欢重新编译`libm`的站点上的浮点程序。
* Javier Martin Rueda 的驱动程序 `ex` 已合并，支持 Intel EtherExpress Pro/10 网卡。
* Intel EtherExpress Pro/100B 现在支持全双工模式。
* 驱动程序 `de` 现在支持使用 DE21140A 芯片的网卡，如流行的 SMC9332BDT（10/100Mbit/s）。
* 为常用的 CMD640 PCI IDE 芯片提供了临时解决方案，尽管在 2.2 中默认仍然禁用。
* 现在支持探测 EISA 插槽的数量，并可从 UserConfig 会话保存值。这有助于 HP NetServer LC 机器的用户安装系统。
* 增加了对 SDL RISCom N2pci 同步串行卡的支持。
* 支持 Cyclades Cyclom-Y（多端口异步串行）PCI 适配器以及多个控制器和 32-Y（如果你正在使用 Cyclades 串行适配器，应该重新创建你的 `/dev` 条目并移除旧的条目）。
* 更新了对使用 DEC DC21X4X 芯片组的以太网适配器的支持。
* 更新到 gcc 2.7.2.1 并新增对弱符号的支持。
* 许多东西已经迁移到 `/usr/src/contrib`，并相应地更新和清理了源代码树。
* 支持编译时嵌入的共享库 ld 路径。
* 更新 sgmlfmt 到 `instant`。
* 支持 SNMP 风格的接口 MIB，包括对 `de`（DEC 21x4x）和驱动程序 `ed`（SMC/WD/Novell）的完整 RFC 1650 兼容 MIB。
* `/stand/sysinstall` 进一步发展成为一款更通用的系统管理工具。现在你可以用它从头开始格式化新的磁盘，从分区标签到文件系统创建（尽管它仍不会修改 `/etc/fstab` 文件以使变更永久生效）。
* syscons 和驱动程序 psm 现在具有新的共享键盘驱动程序，消除了之前的许多交互问题。
* syscons 现在支持在文本模式下使用工具 moused(8) 进行剪切和粘贴。

  2.2 是首个支持 Plasmon RF41xx、HP4020i、HP6020i 和 Philips CDD2000 驱动的 CD-R 版本。该驱动仍在开发中（特别是为了扩展对其他设备的兼容性），但现在已经证明是稳定的。
* 支持 NFSv3 客户端和服务器功能很快就进入了 2.2 源代码。这之后还提供了其他一些 NFS 选项，如将 NFSv2 服务器切换到异步写模式（尽管违反了标准，但在 SGI Irix 等系统中已有先例）。
* Poul-Henning Kamp 的 phkmalloc 替代了旧的 BSD malloc 实现，通常为客户端节省了大量虚拟内存，并提供了一些不错的功能，如在检测到 malloc 滥用时中止程序，或者用垃圾数据填充 malloc 或已释放区域，以便在使用 malloc 的程序中检测语义问题。
* AppleTalk 的 `netatalk` 实现已被集成到源代码中，集成工作由 Whistle Communications Corp. 提供。
* 挂载选项 `async` 支持在 UFS 文件系统上进行异步元数据更新，这在 Linux 的 ext2fs 中是默认设置。这样加速了许多 inode 密集型文件系统操作（如 `rm -r`），但系统崩溃时风险较大。安装过程本身也使用了此功能，因此可以大大加速（例如，通过 SCSI CD-ROM 的 bindist-only 安装可以在快速机器上在不到 5 分钟内完成！）。
* ATAPI CD-ROM 支持现在已被报告为适用于相当多的驱动程序。换句话说，所有基本遵循 ATAPI 标准的驱动程序都可能工作。

内核中也有许多新的驱动程序，数量太多，无法一一列举。Tekram 提供了针对他们的 DC390 和 DC390T 控制器的驱动程序。这些控制器基于 AMD 53c974 芯片，驱动程序也能够处理基于该芯片的其他 SCSI 控制器。通过 Tekram 对 FreeBSD 项目的支持，我们鼓励大家购买他们的产品。`ed` 和 `lnc`驱动程序现在支持自动配置相应的 PCI 以太网卡，包括许多 NE2000 克隆和 AMD PCnet 芯片。新增了对 SDL RISCom N2 和 Cyclades 驱动程序 PCI 版本的支持。

* Linux 仿真现在完全正常，包括 ELF 支持。为了方便使用，还提供了所需的共享库和 Slackware 开发环境的端口。
* SysV COFF 仿真（即 SCO 仿真）现在也报告可以正常工作。

FreeBSD 还支持原生 ELF 二进制文件，尽管目前尚未决定是否、何时以及如何将其作为默认二进制格式。

新增了 `brandelf` 工具，能“标记”非共享链接的 ELF 二进制文件，当内核无法猜测应该使用哪个镜像激活器（FreeBSD、Linux、未来可能是 SysV）时，它可以解决 ELF 对象格式中的一个主要缺陷，即缺少标记所属 ABI 的字段。

* 对 APM BIOS 的支持现在得到了显著改进。
* 手册的第 9 部分已经开始，介绍了“官方”内核编程接口。我们仍然在寻求志愿者来为这里的接口编写文档！
* 内核配置选项的处理已经从旧的 `-D Makefile` 变通方法转移到了“opt\_foo.h”内核包含文件的系统，使 Makefile 依赖关系正常工作。我们预计，那个每次运行 config(8) 时都会清空整个编译目录的旧黑客方法将很快被淘汰。如果你不改变奇怪的选项，现在可以考虑使用 config(8) 的选项 `-n`，或者设置环境变量 `NO_CONFIG_CLOBBER`，如果你认为 CPU 时间宝贵的话。更多细节请参见手册中关于它如何工作的说明。

## 2. 支持的配置

FreeBSD 目前支持多种基于 ISA、VLB、EISA 和 PCI 总线的 PC，从 386sx 到 Pentium 类机器（尽管不推荐使用 386sx）。同时还支持通用 IDE 或 ESDI 驱动器配置、各种 SCSI 控制器、网络卡和串行卡。

以下是目前已知与 FreeBSD 兼容的所有外设。其他配置也可能兼容，只是我们尚未收到确认信息。

### 2.1 磁盘控制器

* WD1003（任何通用 MFM/RLL）
* WD1007（任何通用 IDE/ESDI）
* IDE
* ATA
* Adaptec 1510 系列 ISA SCSI 控制器（不支持启动设备）
* Adaptec 152x 系列 ISA SCSI 控制器
* Adaptec 1535 ISA SCSI 控制器
* Adaptec 154x 系列 ISA SCSI 控制器
* Adaptec 174x 系列 EISA SCSI 控制器（标准模式和增强模式）
* Adaptec 274X/284X/2940/3940（窄/宽/双通道）系列 ISA/EISA/PCI SCSI 控制器
* Adaptec AIC7850 板载 SCSI 控制器
* Adaptec AIC-6260 和 AIC-6360 基础板，包括 AHA-152x 和 SoundBlaster SCSI 卡。

> **注意**
>
> 不能从 SoundBlaster 卡启动，因为它们没有内建的 BIOS，BIOS 是用来将启动设备映射到系统 BIOS I/O 向量中的。然而，它们完全可以用于外部磁带、CD-ROM 等设备。同样，任何没有启动 ROM 的 AIC-6x60 基础卡也是如此。一些系统确实配有启动 ROM，通常在系统第一次通电或重置时会显示某种信息，遇到这种情况时你 *也* 可以从这些设备启动。请查看你的系统/主板文档以获取更多详情。

* Buslogic 545S & 545c
* Buslogic 445S/445c VLB SCSI 控制器
* Buslogic 742A、747S、747c EISA SCSI 控制器
* Buslogic 946c PCI SCSI 控制器
* Buslogic 956c PCI SCSI 控制器
* SymBios（前身为 NCR）53C810、53C825、53c860 和 53c875 PCI SCSI 控制器：
  * ASUS SC-200
  * Data Technology DTC3130（所有变体）
  * NCR 卡（所有）
  * Symbios 卡（所有）
  * Tekram DC390W、390U 和 390F
  * Tyan S1365
* Tekram DC390 和 DC390T 控制器（可能也支持基于 AMD 53c974 的其他卡）。
* NCR5380/NCR53400（“ProAudio Spectrum”）SCSI 控制器。
* DTC 3290 EISA SCSI 控制器（1542 仿真模式）。
* UltraStor 14F、24F 和 34F SCSI 控制器。
* Seagate ST01/02 SCSI 控制器。
* Future Domain 8xx/950 系列 SCSI 控制器。
* WD7000 SCSI 控制器。

对于所有支持的 SCSI 控制器，提供完整的 SCSI-I 和 SCSI-II 外设支持，包括磁盘、磁带驱动器（包括 DAT 和 8mm Exabyte）以及 CD-ROM 驱动器。

目前支持以下类型的 CD-ROM 系统：

* (cd) SCSI 接口（包括 ProAudio Spectrum 和 SoundBlaster SCSI）
* (mcd) Mitsumi 专有接口（所有型号）
* (matcd) Matsushita/Panasonic（Creative SoundBlaster）专有接口（562/563 型号）
* (scd) Sony 专有接口（所有型号）
* (wcd) ATAPI IDE 接口（实验性，质量应视为 ALPHA 水准）

### 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 也得到支持。
* 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
* HP PC Lan+ 卡（型号：27247B 和 27252A）
* 英特尔 EtherExpress（由于驱动程序不稳定，不推荐使用）
* 英特尔 EtherExpress Pro/10
* 英特尔 EtherExpress Pro/100B PCI 快速以太网
* Isolan AT 4141-0（16 位）
* Isolink 4110（8 位）
* Novell NE1000、NE2000 和 NE2100 以太网接口
* 3Com 3C501 卡
* 3Com 3C503 Etherlink II
* 3Com 3c505 Etherlink/+
* 3Com 3C507 Etherlink 16/TP
* 3Com 3C509、3C579、3C589（PCMCIA）、3C590/592/595/900/905 PCI 和 EISA（Fast）Etherlink III /（Fast）Etherlink XL
* 东芝以太网卡
* IBM 和 National Semiconductor 的 PCMCIA 以太网卡也得到支持。

**注意**：目前不支持令牌环卡，因为我们仍在等待有人为其中一款提供驱动程序。如果有兴趣提供帮助，请联系我们。

### 2.3. 其他

* AST 4 端口串行卡，使用共享 IRQ
* ARNET 8 端口串行卡，使用共享 IRQ
* ARNET（现在是 Digiboard）Sync 570/i 高速串行
* Boca BB1004 4 端口串行卡（不支持调制解调器）
* Boca IOAT66 6 端口串行卡（支持调制解调器）
* Boca BB1008 8 端口串行卡（不支持调制解调器）
* Boca BB2016 16 端口串行卡（支持调制解调器）
* Cyclades Cyclom-y 串行板
* STB 4 端口卡，使用共享 IRQ
* SDL Communications Riscom/8 串行板
* SDL Communications RISCom/N2 和 N2pci 高速同步串行板
* Stallion 多端口串行板：EasyIO、EasyConnection 8/32 & 8/64，ONboard 4/16 和 Brumby
* Adlib、SoundBlaster、SoundBlaster Pro、ProAudioSpectrum、Gravis UltraSound 和 Roland MPU-401 声卡
* Connectix QuickCam
* Matrox Meteor 视频帧捕捉卡
* Creative Labs Video Spigot 帧捕捉卡
* Cortex1 帧捕捉卡
* HP4020i、Philips CDD2000 和 PLASMON WORM（CDR）驱动器
* PS/2 鼠标
* 标准 PC 操纵杆
* X-10 电源控制器
* GPIB 和 Transputer 驱动程序
* Genius 和 Mustek 手持扫描仪

**注意**：FreeBSD 目前不支持 IBM 的微通道（MCA）总线。

## 3. 获取 FreeBSD

你可以通过多种方式获取 FreeBSD：

### 3.1 FTP/邮件

你可以从 `ftp.FreeBSD.org` 获取 FreeBSD 及其所有或部分可选软件包，这是官方的 FreeBSD 发布站点。

有关镜像 FreeBSD 软件的其他位置，请参见文件 MIRROR.SITES。请从离你最近的站点（网络上）获取分发版本。欢迎提供其他镜像站点！如果你希望成为官方镜像站点，请联系 <freebsd-admin@FreeBSD.org> 以获取更多信息。

如果你无法访问互联网，且电子邮件是唯一的方式，那么你仍然可以通过发送邮件至 `ftpmail@decwrl.dec.com` 来获取文件，在你的邮件中加入关键字“help”以获得更多有关如何通过此机制获取文件的信息。但请注意，这将会发送大量的数据（通常是数十 MB），应仅在绝对必要时使用！

### 3.2. 光盘

你可以通过以下方式订购 FreeBSD 2.1.7-RELEASE 和 2.2-RELEASE 的光盘：

```
Walnut Creek CDROM  
4041 Pike Lane, Suite D  
Concord, CA 94520  
电话：1-800-786-9907, +1-510-674-0783, 传真：+1-510-674-0821
```

或通过互联网向 <orders@cdrom.com> 订购，网址：<http://www.cdrom.com>。他们的最新目录可以通过 FTP 从以下地址获取：`ftp://ftp.cdrom.com/cdrom/catalog`

每张-RELEASE 光盘的价格为 $39.95，或者 $24.95（附带 FreeBSD 订阅）。

FreeBSD 3.0-SNAP 光盘的价格为 $29.95，或者 $14.95（附带 FreeBSD-SNAP 订阅）。（-RELEASE 和 -SNAP 订阅是完全独立的）。

订阅用户将在每次发布新版本时自动收到更新。

每次发货时会用信用卡收费，你可以随时取消订阅，且不需要承担额外费用。

美国、加拿大和墨西哥的运费为每个订单 $5，海外运费为 $9.00。

他们接受 Visa、Mastercard、Discover、American Express 信用卡，以及美国美元支票，并在美国境内提供货到付款服务。

加利福尼亚州居民需加收 8.25% 的销售税。

如果你对任何原因不满意，可以退还光盘，且享有无条件的退货政策。

## 4. 报告问题、提出建议、提交代码

我们非常重视你的建议、错误报告以及代码贡献——如果你发现任何问题，请不要犹豫，随时报告给我们（最好附上修复方案，如果你能做到的话！）。

如果你的机器有互联网邮件连接，提交错误报告的首选方法是使用 `send-pr` 命令，或者通过[http://www.FreeBSD.org/send-pr.html](http://www.freebsd.org/send-pr.html)的 CGI 脚本提交。\
错误报告将通过我们忠实的 bugfiler 程序自动归档，你可以放心，我们会尽力尽快处理所有报告的错误。通过这种方式提交的错误报告也会在我们的官方网站的支持部分显示，因此它们既是错误报告，也是其他用户了解潜在问题的“路标”。

如果你由于某些原因无法使用 `send-pr` 命令提交错误报告，你可以尝试将报告发送到：`freebsd-bugs@FreeBSD.org`

请注意，`send-pr` 本身是一个脚本，应该可以很容易地迁移到其他系统上。我们更倾向于你使用这种接口，因为它有助于更方便地跟踪问题报告。然而，在提交之前，请确认该问题是否已经得到修复。

如果有任何问题或建议，欢迎发送邮件至：`freebsd-questions@FreeBSD.org`

此外，作为一个志愿者项目，我们总是欢迎愿意提供帮助的额外人手——目前我们所希望的增强功能已经远远超过我们能独立处理的能力！\
如果你在技术方面有问题或有提供帮助的意向，请发送邮件至：`freebsd-hackers@FreeBSD.org`

请注意，这些邮件列表可能会产生大量的邮件流量，如果你有较慢或昂贵的邮件访问，并且只对 FreeBSD 的重大事件感兴趣，你可能会更倾向于订阅以下邮件列表：`freebsd-announce@FreeBSD.org`

除 `freebsd-bugs` 组外，任何人都可以自由加入这些邮件列表。

只需将邮件发送至 `MajorDomo@FreeBSD.org`，并在邮件正文中单独写上一行“help”关键字，即可获得更多关于加入各个列表、访问归档等的信息。

还有一些针对特定兴趣小组的邮件列表未在此提及，你可以向 majordomo 询问。

## 5. 致谢

FreeBSD 代表了来自世界各地的数十人，甚至数百人辛勤工作的成果，他们为实现这一版本发布付出了巨大努力。有关 FreeBSD 项目工作人员的完整名单，请参见：

* [http://www.FreeBSD.org/handbook/staff.html](http://www.freebsd.org/handbook/staff.html)

或者，如果你已加载文档分发文件：`file:/usr/share/doc/handbook/staff.html`

其他 FreeBSD 助手和测试人员：

* Coranth Gryphon
* Dave Rivers
* Kaleb S. Keithley
* Terry Lambert
* David Dawes
* Don Lewis

特别感谢：

* Walnut Creek CDROM，如果没有他们的帮助（及持续支持），这次发布版是不可能完成的。
* Dermot McDonnell 感谢他捐赠的 Toshiba XM3401B CDROM 驱动器。
* Chuck Robey 感谢他捐赠的软盘磁带流式机用于测试。
* Larry Altneu 和 Wilko Bulte 感谢他们提供的 Wangtek 和 Archive QIC-02 磁带驱动器用于测试和驱动开发。
* CalWeb Internet Services 感谢他们借给我们 P6/200 机器，用于快速构建软件包。
* 蒙大拿州立大学的每一个人，感谢他们的初期支持。
* 以及世界各地成千上万的 FreeBSD 用户和测试人员，正是有了他们，这次发布版才得以实现。

我们真诚地希望你喜欢这个版本的 FreeBSD！

FreeBSD 项目
