# FreeBSD 2011 年第三季度状态报告

* 原文链接：<https://www.freebsd.org/status/report-2011-07-2011-09.html>

## 引言

本报告涵盖了 2011 年 7 月至 9 月期间与 FreeBSD 相关的项目。这是计划中的四个报告中的第三个。本季度主要致力于为下一版本的 FreeBSD 9.0 打磨准备工作，预计在今年年底发布。

感谢所有报告者的优秀工作！本报告包含 28 个条目，我们希望你阅读愉快。

请注意，涵盖 2011 年 10 月至 12 月期间的提交截止日期为 2012 年 1 月 15 日。

## [项目](https://www.freebsd.org/status/report-2011-07-2011-09.html#Projects)

### [GELI 状态更新](https://www.freebsd.org/status/report-2011-07-2011-09.html#GELI-status-update)

联系人：Pawel Jakub Dawidek <<pjd@FreeBSD.org>>

自 2010/Q3 报告以来，GELI（磁盘加密 GEOM 类）的一些更新：

* 实现了挂起/恢复功能。
* 新的版本子命令，用于检查 GELI 提供者的版本。
* 新的 -V 选项，适用于 init 子命令，允许为旧版 FreeBSD 创建 GELI 提供者。
* 对 AES-XTS 算法进行了显著的 aesni(4) 性能改进。

### [HAST（高可用性存储）状态更新](https://www.freebsd.org/status/report-2011-07-2011-09.html#HAST-\(Highly-Available-Storage\)-status-update)

联系人：Pawel Jakub Dawidek <<pjd@FreeBSD.org>>\
联系人：Mikolaj Golub <<trociny@FreeBSD.org>>

HAST 正在积极开发中。自 Q1 报告以来的一些更新：

* 异步复制模式。不幸的是，无法在 9.0-RELEASE 中实现（pjd@）。
* 支持 IPv6（pjd@）。
* 激活映射修复，大大减少了元数据更新的数量（trociny@）。
* 提供者在元数据更新后刷新写缓存（pjd@）。
* 配置文件中可以指定 pidfile（pjd@）。
* 许多错误修复和其他改进。

### [pfSense](https://www.freebsd.org/status/report-2011-07-2011-09.html#pfSense)

| 链接                                    |
| ------------------------------------- |
| [pfSense 主页](http://www.pfsense.org/) |

联系人：Scott Ullrich <<sullrich@gmail.com>>\
联系人：Chris Buechler <<cbuechler@gmail.com>>

pfSense 2.0 已发布，这带来了过去三年的新功能添加，几乎对系统的每个部分都进行了显著增强。这些更改和新功能 [在此总结](http://doc.pfsense.org/index.php/2.0_New_Features_and_Changes)。这是我们发布的最广泛部署的版本，感谢成千上万的社区成员的努力。

#### 开放任务

1. 2.1 版本的工作正在进行中，最大变化是 IPv6 支持和为包系统提供 PBI 打包二进制文件。

### [提供 FreeBSD 虚拟机镜像的工具](https://www.freebsd.org/status/report-2011-07-2011-09.html#Tool-for-providing-FreeBSD-VM-Images)

| 链接                                                          |
| ----------------------------------------------------------- |
| [主 GitHub 仓库](https://github.com/yerenkow/freebsd-vm-image) |

联系人：Alexander Yerenkow <<yerenkow@gmail.com>>

一组脚本，使构建 FreeBSD 虚拟机镜像变得更加容易。

提供一种方法，用于构建来自 SVN 的最新版本的常规构建镜像。目前，镜像可以通过 `dd` 命令复制到 USB 闪存（用于在真实硬件上测试）和 VirtualBox（.vdi）。

#### 开放任务

1. 使用主 Ports 的 Ports 构建镜像。
2. 使用主 Ports 加上来自 area51 的覆盖（如实验镜像）构建镜像。
3. 构建包含特殊开发分支的镜像（如用于测试驱动程序）。

### [ZFSguru](https://www.freebsd.org/status/report-2011-07-2011-09.html#ZFSguru)

| 链接                                |
| --------------------------------- |
| [ZFSguru 主页](http://zfsguru.com/) |
| <http://zfsguru.com/>             |

联系人：Jason Edwards <<guru@ZFSguru.com>>

ZFSguru 是一款新设计的网络附加存储（NAS）操作系统，类似于 FreeNAS。不同之处在于 ZFSguru 强调 ZFS 和用户友好的操作，且使用完整的 FreeBSD 发行版，未删减任何元素。这使得 FreeBSD 和 UNIX 初学者能够使用 ZFS 的强大功能，同时也允许更高级的用户通过额外功能来调整他们的 NAS，并将其作为正常的 FreeBSD 发行版使用。

ZFSguru 项目始于一年多前，目前进展顺利。它应该已经是最具用户友好的 ZFS 发行版之一，并具有一些独特的功能。高级 ZFS 性能测试和便捷的 Root-on-ZFS 安装便是很好的例子。优先任务是完成缺失的核心功能，并扩展可用的服务插件数量，目前这些插件仅限于 iSCSI-target 和 VirtualBox 扩展。

#### 待办事项

1. 完成 Web 界面中的 ZFS 和网络相关功能。
2. 引入新的服务插件，增加 ZFSguru 的可选功能。
3. 扩展文档。

### [ZRouter.org 项目 — 基于 FreeBSD 的嵌入式设备固件](https://www.freebsd.org/status/report-2011-07-2011-09.html#ZRouter.org-project-%E2%80%94-a-FreeBSD-based-firmware-for-embedded-devices)

| 链接                                                            |
| ------------------------------------------------------------- |
| [Redmine 项目界面](http://zrouter.org/)                           |
| [邮件列表](http://lists.zrouter.org/)                             |
| [ZRouter.org 主要 Mercurial 仓库](http://zrouter.org/hg/zrouter/) |
| [我们修改过的 FreeBSD HEAD 版本](http://zrouter.org/hg/FreeBSD/head/) |

联系人：Aleksandr Rybalko <<ray@FreeBSD.org>>

ZRouter.org 是一个年轻的项目，旨在为小型设备（如 SOHO 路由器、AP 等）生产基于 FreeBSD 的固件。目前，ZRouter.org 已能够为以下设备构建可用的固件：

* D-Link DAP-1350
* D-Link DIR-320
* D-Link DIR-320-NRU
* D-Link DIR-330
* D-Link DIR-615-E4
* D-Link DIR-620
* D-Link DIR-632
* D-Link DSA-3110-A1
* D-Link DSR-1000N
* NorthQ NQ-900
* TPLink TL-WR941ND-v3\_2
* Ubiquiti RSPRO

目前，我们正在开发核心系统的大部分部分，同时也在规划实施一个简单的基于 Web 的图形用户界面（GUI），希望在下一次 FreeBSD 状态报告之前能够完成。

我们还有许多任务没有完成，因此该列表中的设备暂时不能称为“生产就绪”。但我们会继续努力。

新增设备很容易，因为我们为板卡和 SoC（系统芯片）提供了单独的定义，所以如果你有像“华硕 WL-500g Premium v2”这样的设备，你只需复制 D-Link/DIR-320 目录并进行调整以适配你的设备。我们已经为以下硬件提供了基本支持：

* Broadcom BCM5354
* Broadcom BCM5836
* Ralink RT3052F
* Ralink RT3050F
* Ralink RT5350F
* Atheros AR7161
* Atheros AR7242
* Atheros AR7241
* Atheros AR7240
* Atheros AR9132
* Intel ixp435
* Cavium CN5010

如果你有能力和时间，请加入我们，访问 <http://zrouter.org>（Redmine 界面和邮件列表）

#### 待办事项

1. 设备驱动
2. Web 用户界面
3. 控制脚本
4. 看门狗
5. ……

## [FreeBSD 团队报告](https://www.freebsd.org/status/report-2011-07-2011-09.html#FreeBSD-Team-Reports)

### [Ports](https://www.freebsd.org/status/report-2011-07-2011-09.html#Ports-Collection)

| 链接                                                                                                                                                  |
| --------------------------------------------------------------------------------------------------------------------------------------------------- |
| [http://www.FreeBSD.org/ports/](http://www.freebsd.org/ports/)                                                                                      |
| [http://www.FreeBSD.org/doc/en\_US.ISO8859-1/articles/contributing-ports/](http://www.freebsd.org/doc/en_US.ISO8859-1/articles/contributing-ports/) |
| [http://portsmon.FreeBSD.org/index.html](http://portsmon.freebsd.org/index.html)                                                                    |
| [http://www.FreeBSD.org/portmgr/index.html](http://www.freebsd.org/portmgr/index.html)                                                              |
| [http://blogs.FreeBSDish.org/portmgr/](http://blogs.freebsdish.org/portmgr/)                                                                        |
| <http://www.twitter.com/freebsd_portmgr/>                                                                                                           |
| <http://www.facebook.com/group.php?gid=135441496471197>                                                                                             |

联系人：Thomas Abthorpe <<portmgr-secretary@FreeBSD.org>>\
联系人：Port Management Team <<portmgr@FreeBSD.org>>

ports 正在缓慢接近 23,000 个条目的标记，PR 数量仍然保持在约 1000 个。

在第二季度，我们增加了 4 名新的提交者，但也暂时保存了 6 个提交权限。

Ports 管理团队一直在持续进行 -exp 测试，验证基本系统更新如何影响 Ports，并为主要的 ports 更新提供质量保证测试。值得注意的是，进行了以下 -exp 测试：

* Python 更新
* Boost 更新
* Gtk3 更新
* clang 测试
* pkgng 测试
* ruby19 测试
* 设置默认的 Fortran 为 lang/gcc46
* 设置 apache22 为默认
* 设置 CONFIGURE\_ENV 中的默认 LDFLAGS

工作继续进行，目的是完善新的构建主机 pointyhat-west。9 月进行的 -current 升级出现了问题，我们已请 ISC 和 Josh Paetzel 尝试找出解决方案。与此同时，源代码将降级为 RELENG\_9。

portsmon 实例正在转移到 Yahoo。用户应该不会看到任何变化。新的实例目前可以在 portsmonj.FreeBSD.org 访问，但很快将使用 portsmon.FreeBSD.org 作为域名。团队对 TDC A/S 提供的现有机器借用表示感谢。

目前正在纽约和新泽西创建新的 QAT 实例。

portmgr 还协助设置了一台 sparc64 机器供 Yahoo 的开发者使用。

感谢 Sean Bruno 和 Ben Haga 在现场工作，我们再次获得了 ISC 的 powerpc 构建机器的访问权限，并已重新启动 powerpc 构建。同时，他们还帮助我们重新启用了另一台 i386 机器。

linimon 正在开发一套脚本，以更快地为软件包构建节点生成预配置的 PXEboot 镜像。

在 param.h 中将 `__FreeBSD_version` 更新为 1000000 后，导致了 ports 中的许多问题，代码错误地将其解释为 FreeBSD 1。大量的工作已投入到识别和修复这些坏代码，并上游提交修复补丁。在此过程中，推荐的临时解决方案是将版本设置为 999999。

#### 待办事项

1. 寻求帮助让 [ports 使用 clang 构建](http://wiki.freebsd.org/PortsAndClang)。
2. 寻求帮助修复 [CURRENT 上的损坏 ports](http://wiki.freebsd.org/PortsBrokenOnCurrent)。（列表需要更新）
3. 寻求帮助处理 [Tier-2 架构](http://wiki.freebsd.org/PortsBrokenOnTier2Architectures) 的问题。（列表也需要更新）
4. 大多数 ports PR 已分配，现在需要专注于测试、提交和关闭。

### [FreeBSD 基金会](https://www.freebsd.org/status/report-2011-07-2011-09.html#The-FreeBSD-Foundation)

| 链接                                  |
| ----------------------------------- |
| <http://www.freebsdfoundation.org/> |

联系人：Deb Goodkin <<deb@FreeBSDFoundation.org>>

基金会赞助了 2011 年 9 月 24 日在乌克兰基辅举行的 KyivBSD 2011 活动。我们还在俄亥俄州哥伦布的 Ohio LinuxFest 上设立了展台，并批准了 6 个 EuroBSDCon 的旅行资助。请在 12 月 7-8 日于马萨诸塞州波士顿举行的 LISA '11 活动期间光临 FreeBSD 展位。

在此期间，基金会资助的三个项目已经完成：David Chisnall 实现了 xlocale API，以便移植 libc++，Swinburne 大学为 FreeBSD 实现了 DIFFUSE，Konstantin Belousov 为 Intel 驱动程序添加了 GEM、KMS 和 DRI 支持。

我们发布了 [半年度通讯](http://www.freebsdfoundation.org/press/2011Aug-newsletter.shtml)。基金会还购买了用于 FreeBSD 协同托管中心的服务器和其他硬件，分别位于 Sentex 和 NYI。

上述工作以及我们为 FreeBSD 项目做的许多其他任务，无法在没有捐赠的情况下完成。请通过捐赠或请求公司捐赠来支持我们。我们非常愿意向你或你的公司发送营销资料。请访问我们的 [捐赠页面](http://www.freebsdfoundation.org/donate/) 了解如何捐赠。

获取更多基金会的最新消息，请阅读我们的 [博客](http://freebsdfoundation.blogspot.com/) 和 [Facebook](http://www.facebook.com/FreeBSDFoundation) 页面。

### [FreeBSD 发布工程团队](https://www.freebsd.org/status/report-2011-07-2011-09.html#The-FreeBSD-Release-Engineering-Team)

| 链接                               |
| -------------------------------- |
| <http://www.freebsd.org/releng/> |

联系人：Release Engineering Team <<re@FreeBSD.org>>

Release Engineering Team 一直在协调即将发布的 FreeBSD 9.0-RELEASE。感谢许多开发人员的工作，尽管发布有所延迟，但进展顺利。我们已经进入了第二个发布候选版本的阶段。此时，我们预计还会有一个发布候选版本，随后就是正式版的发布。

## [网络接口](https://www.freebsd.org/status/report-2011-07-2011-09.html#Network-Infrastructure)

### [802.11n / atheros](https://www.freebsd.org/status/report-2011-07-2011-09.html#802.11n-/-atheros)

| 链接                                                 |
| -------------------------------------------------- |
| <http://wiki.freebsd.org/AdrianChadd/AtherosTxAgg> |

联系人：Adrian Chadd <<adrian@FreeBSD.org>>

AR5416、AR9160 和 AR9280 在站点和 hostap 模式下的功能表现良好，性能优越。

已实现帧的软重试和聚合。

BAR TX 尚未处理，HT 保护和 MIMO 节能尚未实现。

#### 待办事项

1. BAR TX
2. MIMO 节能
3. 在接口重置/重新配置期间正确处理 TX 队列的刷新
4. 正确处理 20 <-> 20/40mhz 过渡（避免丢帧）
5. 更智能的速率控制

### [使用统计证据的分布式防火墙和流量整形器（DIFFUSE）](https://www.freebsd.org/status/report-2011-07-2011-09.html#DIstributed-Firewall-and-Flow-shaper-Using-Statistical-Evidence-\(DIFFUSE\))

| 链接                                                                                                                                               |
| ------------------------------------------------------------------------------------------------------------------------------------------------ |
| <http://caia.swin.edu.au/freebsd/diffused/>                                                                                                      |
| [http://www.FreeBSDFoundation.org/project%20announcements.shtml#diffuse](http://www.freebsdfoundation.org/project%20announcements.shtml#diffuse) |
| <http://caia.swin.edu.au/urp/diffuse/>                                                                                                           |
| <http://caia.swin.edu.au/urp/diffuse/downloads.html>                                                                                             |

联系人：Sebastian Zander <<szander@swin.edu.au>>\
联系人：Lawrence Stewart <<lastewart@swin.edu.au>>\
联系人：Grenville Armitage <<garmitage@swin.edu.au>>

DIFFUSE 使 FreeBSD 的 IPFW 防火墙子系统能够基于统计流量特征对 IP 流量进行分类。

使用 DIFFUSE，IPFW 会计算观察到的流的统计信息（例如数据包长度或数据包之间的时间间隔），并利用机器学习（ML）对流进行分类。除了传统的数据包检查规则外，IPFW 规则现在还可以根据流量统计信息或机器学习分类识别的类别来表达。当直接的数据包检查遇到问题时（可能是出于管理原因，或者端口号不能可靠识别应用程序时），这种方法尤为有用。

DIFFUSE 还使得一个 IPFW 实例能够将流信息和分类发送到其他 IPFW 实例，这些实例可以根据其分类对流量进行处理（例如，优先级、接受、拒绝等）。这为分布式架构提供了支持，在这种架构中，网络中某个位置的分类可以用于控制其他位置的防火墙或流量整形操作。

FreeBSD 基金会资助了斯威本科技大学的高级互联网架构中心开展 DIFFUSED（DIFFUSE for freebsD）项目，旨在完善我们公开发布的 DIFFUSE 原型，并将该架构的所有组件集成到 FreeBSD 中。

该项目在 FreeBSD Subversion 仓库的 diffused\_head 分支中进展顺利，计划在 2011 年 10 月底完成。项目完成后，代码将从该分支合并到主分支，并在适当的时间沉淀后，将代码合并到 8.x 和 9.x 版本中。

### [以太网交换机框架](https://www.freebsd.org/status/report-2011-07-2011-09.html#Ethernet-Switch-Framework)

| 链接                                                                          |
| --------------------------------------------------------------------------- |
| [代码链接](http://zrouter.org/hg/FreeBSD/head/file/default/head/sys/dev/switch) |

联系方式：Aleksandr Rybalko <<ray@FreeBSD.org>>

许多嵌入式设备都配有以太网交换机；一些多端口网卡上甚至嵌入了交换机。这个嵌入式交换机框架旨在让用户能够轻松控制管理交换机中常见的基本功能，如 VLAN、QoS、端口镜像等。目前，我们能够控制以下设备上的 VLAN：

* Atheros AR8216/AR8316（独立型和嵌入在 AR724X 中）
* Broadcom BCM5325 交换机系列（也嵌入在 BCM5354 SoC 中）
* Ralink RT3050F/RT3052F 内部交换机
* Realtek RTL8309
* IP175X
* IP178X

#### 待办事项

1. 修复 AR8216/AR8316 驱动程序
2. 修复 BCM5325 驱动程序，部分端口无法传输数据
3. 为 RTL8309 添加 tick 处理器以自动取消端口隔离
4. 统一 MIB 统计计数器访问
5. 添加 MII 读写总线方法
6. 为交换机 PHY 实现伪接口

## [内核](https://www.freebsd.org/status/report-2011-07-2011-09.html#Kernel)

### [新 CARP](https://www.freebsd.org/status/report-2011-07-2011-09.html#The-new-CARP)

| 链接                                              |
| ----------------------------------------------- |
| <http://people.freebsd.org/\\~glebius/newcarp/> |

联系方式：Gleb Smirnoff <<glebius@FreeBSD.org>>

我目前正在对 FreeBSD 中的 CARP 进行重大重写。

进行此工作的原因是 CARP 协议实际上并不会带来新的接口，而是接口地址的一个属性。以这种方式重写有助于去除一些进入数据包处理的 hack，简化部分代码，使得从路由守护进程（如 quagga/zebra）的角度来看，CARP 地址更加合理，并关闭了许多与 CARP 相关的 PR（在 GNATS 中）。此外，它还为子网上的单一冗余地址提供支持，这一功能在 OpenBSD 中称为“carpdev 特性”，在 FreeBSD 中也期待已久。

目前，我有一个针对 head/ 的补丁，在我的测试环境中编译并运行，我计划很快在我控制的一些服务器上部署该补丁。

该补丁已由 Bjoern Zeeb (bz@) 进行审查。

#### 待办事项

1. 需要更多测试！
2. 实现 arpbalance 和 ipbalance 特性。这需要进一步的重写步骤，可能借鉴一些 OpenBSD 的想法。
3. 更新文档。

### [大于一页的内存分配的虚拟内存层](https://www.freebsd.org/status/report-2011-07-2011-09.html#VM-layer-for-allocations-larger-than-a-page)

联系方式：Alan Cox <<alc@FreeBSD.org>>\
联系方式：Davide Italiano <<davide.italiano@gmail.com>>

该项目的目的是创建一个新的层次，它位于 UMA 和虚拟内存系统之间，管理大小为 2 到 4 MB 的内核虚拟内存块。在工作完成后，UMA 的 page\_alloc() 将不再直接调用虚拟内存系统，而是调用这个新层次。因此，uma\_large\_malloc() 和 uma\_large\_free() 将不再立即分配和释放内核虚拟内存。这将带来性能上的提升（当前采用的方法成本较高），同时减少碎片化（虚拟内存系统采用的是首次适配分配策略，因此存在改进的空间）。

## [文档](https://www.freebsd.org/status/report-2011-07-2011-09.html#Documentation)

### [2011 年 9 月 5 日 IRC 文档冲刺](https://www.freebsd.org/status/report-2011-07-2011-09.html#Doc-sprint-on-IRC,-September-5,-2011)

| 链接                                                                               |
| -------------------------------------------------------------------------------- |
| [文档冲刺期间写下的结果和笔记](http://people.freebsd.org/~bcr/doc/sprints/20110905-final.html) |

联系方式：Benedict Reuschling <<bcr@FreeBSD.org>>\
联系方式：Dru Lavigne <<dru@FreeBSD.org>>

在 9 月 5 日，我们在 IRC 频道 #bsddocs 上举行了另一场文档冲刺，讨论了对整个 FreeBSD 文档社区都很重要的各种问题。我们讨论了计划中的文档仓库转换为 SVN 的进展以及 XML docbook 转换的状态。那时，我们还没有关于即将发布的版本中新 bsdinstaller 的任何文档，这对那些尝试安装该版本的用户来说将是非常糟糕的情况。幸运的是，迅速成立了一个小团队，开始使用 gjb@ 设置的独立 Google 代码仓库从头开始编写新的 bsdinstall 章节。

我们讨论的一些话题在 EuroBSDcon 的开发者峰会文档会议上得到了进一步的推进。在会议结束前，新的 bsdinstall 章节已成功提交到官方文档树中，感谢 Gavin Atkinson、Warren Block 和 Glen Barber 对新章节所做的努力。Garrett Cooper 提供了关于新 bsdinstaller 支持的各种安装方法的宝贵指导。感谢所有帮助实现这一目标的人。

很高兴看到我们在文档冲刺中讨论的内容进一步发展，这也是我们努力定期举行这些冲刺的原因。

#### 待办事项

1. 计划下一次文档冲刺
2. 继续处理仍未解决的问题，例如将仓库转换为 SVN

### [FreeBSD 德语文档项目状态报告](https://www.freebsd.org/status/report-2011-07-2011-09.html#The-FreeBSD-German-Documentation-Project-Status-Report)

| 链接                                           |
| -------------------------------------------- |
| [FreeBSD 德语文档项目官网](https://doc.bsdgroup.de/) |

联系方式：Johann Kois <<jkois@FreeBSD.org>>\
联系方式：Benedict Reuschling <<bcr@FreeBSD.org>>

我们成功地更新了德语版本的文档，及时将其纳入即将发布的 9.0-RELEASE。网站的翻译也与 FreeBSD.org 上的内容保持同步。

我们尝试重新激活那些一段时间未作贡献的提交者，但他们中的大多数目前无法腾出足够的时间。我们希望能吸引新的贡献者，因为我们偶尔收到关于德语翻译中的错误和语法问题的报告。

#### 待办事项

1. 提交你在德语文档和网站中发现的语法、拼写或其他错误。
2. 翻译更多文章和其他待完成的手册章节（特别是关于新 FreeBSD 安装程序的新章节）。

### [FreeBSD 希腊文档项目](https://www.freebsd.org/status/report-2011-07-2011-09.html#The-FreeBSD-Greek-Documentation-Project)

| 链接                                                            |
| ------------------------------------------------------------- |
| [FreeBSD 希腊文档项目官网](http://www.freebsdgr.org/)                 |
| [FreeBSD 希腊文手册](http://www.freebsd.org/doc/el/books/handbook) |

联系方式：Manolis Kiagias <<manolis@FreeBSD.org>>\
联系方式：Giorgos Keramidas <<keramida@FreeBSD.org>>

经过几个月的相对平静，FreeBSD 希腊文档项目重新回到正轨，翻译和改进手册、FAQ 和 FreeBSD 文章。新的 bsdinstall 章节已翻译，并已出现在手册中。我们的 [实验性手册构建](http://www.freebsdgr.org/handbook) 也可以在项目的中心访问。此外，新增了三个状态页面：

* [en\_US 树合并状态](http://www.freebsdgr.org/versions.html) 显示本地的 en\_US 仓库是否与官方 CVS 同步
* [el\_GR 树合并状态](http://www.freebsdgr.org/versionsel.html) — 与上面类似，但针对希腊文树
* [待提交的提交](http://www.freebsdgr.org/pending.html) 显示尚未提交的希腊文文档的新版本

欲了解更多信息，请访问 [http://www.freebsdgr.org](http://www.freebsdgr.org/)。欢迎提交补丁、修复和贡献。

#### 待办事项

1. 将手册剩余章节翻译为希腊文。
2. 完成 FreeBSD FAQ 的翻译。
3. 保持已翻译文档与英文版本的同步。

### [FreeBSD 日文档项目](https://www.freebsd.org/status/report-2011-07-2011-09.html#The-FreeBSD-Japanese-Documentation-Project)

| 链接                                                    |
| ----------------------------------------------------- |
| [FreeBSD 日文网站](http://www.freebsd.org/ja/)            |
| [FreeBSD 日文文档项目官网](http://www.jp.freebsd.org/doc-jp/) |

联系方式：佐藤広生 <<hrs@FreeBSD.org>>\
联系方式：Ryusuke Suzuki <<ryusuke@FreeBSD.org>>

自上次报告以来，www/ja 和 `doc/ja_JP.eucJP/books/handbook` 子树持续更新。

www/ja：在此期间，www/ja 子树中的许多过时内容已更新为与英文版本同步的最新版本。已添加 8.2R 版本的日文发布公告，9.0R 发布公告也将及时翻译。

手册：日文版的 `kernelconfig` 部分终于赶上了原始英文版。接下来的目标是 `cutting-edge` 和新安装程序部分。

#### 待办事项

1. 对 `doc/ja_JP.eucJP` 和 `www/ja` 中过时的文档进行进一步翻译工作。

## [架构](https://www.freebsd.org/status/report-2011-07-2011-09.html#Architectures)

### [在 Marvell Armada XP 上 FreeBSD/arm](https://www.freebsd.org/status/report-2011-07-2011-09.html#FreeBSD/arm-on-Marvell-Armada-XP)

联系方式：Grzegorz Bernacki <<gjb@semihalf.com>>\
联系方式：Rafal Jaworowski <<raj@semihalf.com>>

Marvell Armada XP 是基于 Sheeva 嵌入式 CPU 的完整系统芯片解决方案。这些设备将最多四个符合 ARMv6/v7 标准的 Sheeva CPU 核心集成在一起，并共享 L2 缓存。

这项工作正在扩展 FreeBSD/arm 基础设施，支持最新的 ARM 架构变种，并为集成外设提供一套基本的设备驱动程序。

自上次状态报告以来，已实现以下代码：

* PCIe 支持
* SMP 支持
  * 创建了针对 ARM 平台的代码框架。
  * 应用处理器的初始化和启动。
  * 实现了发送/处理 IPI。

接下来的步骤：

* 完成 SMP 支持（TLB/缓存操作广播等）
* L2 缓存支持
* SATA 驱动程序

### [FreeBSD/powerpc 在 AppliedMicro APM86290 上](https://www.freebsd.org/status/report-2011-07-2011-09.html#FreeBSD/powerpc-on-AppliedMicro-APM86290)

联系方式：Grzegorz Bernacki <<gjb@semihalf.com>>\
联系方式：Rafal Jaworowski <<raj@semihalf.com>>

APM86290 系统芯片是 AppliedMicro PACKETpro 系列嵌入式处理器的一员。

该芯片包括两个 Power Architecture PPC465 处理器核心，符合该架构的 Book-E 规范，并集成了多个外设。

这项工作正在扩展 FreeBSD 当前的 Book-E 支持，涵盖 PPC4xx 处理器变种，并为集成外设提供设备驱动程序。

自上次报告以来，已创建以下驱动程序：

* 中断控制器
* EHCI USB 驱动程序附件
* 队列管理器/流量管理器支持
* 初步支持以太网控制器
* GPIO, I2C

接下来的步骤：

* 完成以太网控制器驱动程序
* L2 缓存支持

## [Ports](https://www.freebsd.org/status/report-2011-07-2011-09.html#Ports)

### [FreeBSD Haskell Port](https://www.freebsd.org/status/report-2011-07-2011-09.html#FreeBSD-Haskell-Ports)

联系方式：Gabor Janos PaLI <<pgj@FreeBSD.org>>\
联系方式：Ashish SHUKLA <<ashish@FreeBSD.org>>

我们更新了现有 Port 至最新版本，并修复了 9-CURRENT rtld 中的一个 bug，该 bug 会导致 GHC 间歇性崩溃。我们还开始在 [我们的开发仓库中创建了一个单独的 git 分支](https://github.com/freebsd-haskell/freebsd-haskell/tree/haskell-platform-2011.3.0.0)，进行 Haskell Platform 2011.3.0.0（开发版本）的工作。

#### 待办事项

1. 测试 GHC 与 clang/LLVM 的兼容性。
2. 在 GHC Port 中添加一个选项，使其可以使用已经安装的 GHC 构建，而无需单独的 GHC 引导 tarball。
3. 在 Haskell Platform（连同 GHC）发布后，尽快将其更新为 2011.4.0.0。
4. 向 Ports 中添加更多 Port。

### [KDE/FreeBSD](https://www.freebsd.org/status/report-2011-07-2011-09.html#KDE/FreeBSD)

| 链接                                          |
| ------------------------------------------- |
| [KDE/FreeBSD 主页](http://freebsd.kde.org/)   |
| [area51](http://freebsd.kde.org/area51.php) |

联系方式：KDE FreeBSD <<kde-freebsd@KDE.org>>

KDE/FreeBSD 团队继续改进 FreeBSD 下 KDE 软件和 Qt 的使用体验。最近的一轮改进包括：

* 将部分 KDE 模块拆分成更小的 Port
* 启动时间减少了大约 15 秒
* 支持开箱即用的自动登录
* Kopete 支持 GoogleTalk
* Kalzium 配备分子编辑器
* 添加了 Zeitgeist 支持
* 正在进行中的 Calligra 移植工作

团队还发布了多个版本，并将许多修复和补丁提交给上游。最近发布的版本包括：

* Qt: 4.7.4
* PyQt: 4.8.5 (SIP: 4.12.4)
* KDE SC: 4.7.2
* Amarok: 2.4.3
* KDevelop: 4.2.3 (KDevPlatform: 1.2.3)

团队始终欢迎更多的测试者和移植者，因此请通过 <kde-freebsd@KDE.org> 与我们联系，并访问我们的主页 [http://FreeBSD.KDE.org](http://freebsd.kde.org/)。

#### 待办事项

1. 测试 KDE PIM 4.7.2
2. 测试 phonon-gstreamer 和 phonon-vlc，因为 phonon-xine 后端已被弃用（并将保留在 Ports 中）

### [OpenAFS Port](https://www.freebsd.org/status/report-2011-07-2011-09.html#OpenAFS-port)

| 链接                                                 |
| -------------------------------------------------- |
| [OpenAFS 主页](http://openafs.org/)                  |
| [FreeBSD Wiki 上的 AFS](http://wiki.freebsd.org/afs) |

联系方式：Benjamin Kaduk <<kaduk@mit.edu>>\
联系方式：Derrick Brashear <<shadow@gmail.com>>

AFS 是一个分布式网络文件系统，起源于卡内基梅隆大学的 Andrew 项目。OpenAFS 1.6.0 已发布，并且可以在 FreeBSD Ports 中使用；在轻负载下可以正常使用，但在重负载下仍然存在一些未解决的问题。OpenAFS 内核模块现在使用 bsd.kmod.mk 基础架构构建，并已在 git 主分支上提交；不幸的是，这一更改需要对操作系统无关的 Makefile 进行轻微修改，因此未能及时合并到 1.6.0 中。我们已经对内存泄漏进行了处理，但目前只修复了一个小的泄漏。

有几个已知的未解决问题正在处理中，但欢迎提交详细的 bug 报告，地址是 <port-freebsd@openafs.org>。

#### 待办事项

1. 更新 VFS 锁定，支持使用基于磁盘的客户端缓存和基于内存的缓存。
2. 跟踪在负载下可能出现的竞争和死锁问题。
3. 消除内核模块中的中等内存泄漏。
4. PAG（进程认证组）支持尚未启用。

### [Portmaster](https://www.freebsd.org/status/report-2011-07-2011-09.html#Portmaster)

| 链接                                              |
| ----------------------------------------------- |
| <http://dougbarton.us/portmaster-proposal.html> |

联系方式：Doug Barton <<dougb@FreeBSD.org>>

Portmaster 自上次季度更新以来增加了若干新特性，包括对软件包安装代码的一些 bug 修复和各种内部优化。最令人兴奋的新特性可能是能够在同一次 portmaster 运行中多次指定 -r 选项。这大大提高了在需要同时更新多个“分支”或“主干”Port 时的效率，尤其适用于构建包的系统。

#### 待办事项

1. 分离提取代码仍然是“待完成”工作清单中的一项，但由于过去几个月的其他优先任务，这一工作被搁置了。我希望在接下来的季度内完成它。
2. 另一个正在开发的新特性是支持在升级 Port 时，Portmaster 能够保存和恢复指定的文件列表。

## [杂项](https://www.freebsd.org/status/report-2011-07-2011-09.html#Miscellaneous)

### [bsd\_day(2011)](https://www.freebsd.org/status/report-2011-07-2011-09.html#bsd_day\(2011\))

| 链接                                         |
| ------------------------------------------ |
| [bsd\_day(2011) 主页](http://bsdday.eu/2011) |

联系方式：Martin Matuska <<mm@FreeBSD.org>>\
联系方式：Gabor Pali <<pgj@FreeBSD.org>>

这次为期一天的活动旨在聚集中欧地区当前开源 BSD 系统的开发人员，推广他们的工作和组织，并让他们在现实生活中相互见面。我们希望激励潜在的未来开发者和用户，特别是本科生，参与到 BSD 系统的工作中。

今年的 BSD-Day 于 2011 年 11 月 5 日在斯洛伐克布拉迪斯拉发的斯洛伐克科技大学电气工程与信息技术学院举行。

### [EuroBSDcon 2011](https://www.freebsd.org/status/report-2011-07-2011-09.html#EuroBSDcon-2011)

| 链接                                                |
| ------------------------------------------------- |
| [EuroBSDcon 2011 网站](http://2011.eurobsdcon.org/) |

联系方式：EuroBSDcon 组织者 <<oc-2011@eurobsdcon.org>>\
联系方式：Gabor Pali <<pgj@FreeBSD.org>>

第十届欧洲 BSD 大会在荷兰马尔森举行，吸引了超过 250 名注册参会者。会议包含了许多有趣的教程，包括 DTrace 介绍和 Netgraph 工作演示。会议共有 26 场高质量的讲座，并邀请了 2 位主旨演讲人，讲述与 FreeBSD、OpenBSD、NetBSD，甚至 MINIX 相关的各种话题：OpenBSD PF、NetBSD NPF、FreeBSD 中的 IPv6 支持、BSD 领域中的虚拟化、OpenSSH 的最新发展、FreeNAS 的探索、ZFS 的系统管理功能、Capsicum 对 UNIX 的实际能力支持。

会议还设有一个专门的自由 BSD 开发者峰会专场，参会者可以了解项目中目前的动态。我们有关于新软件包管理解决方案、2011 年 Google 夏季编码、堆叠加密文件系统、不同格式文档转换以及 sparc64 端口和 NAND 闪存支持的状态报告。

### [FreeBSD Developer Summit, Maarssen](https://www.freebsd.org/status/report-2011-07-2011-09.html#FreeBSD-Developer-Summit,-Maarssen)

| 链接                                              |
| ----------------------------------------------- |
| [峰会主页](http://wiki.freebsd.org/201110DevSummit) |

联系方式：Gabor Pali <<pgj@FreeBSD.org>>

在荷兰马尔森举办的 FreeBSD 开发者峰会吸引了 60 名 FreeBSD 开发者和受邀嘉宾参加，这是 EuroBSDcon 2011 的一部分。今年，EuroBSDcon 组织者在处理注册、场地租赁和提供食物等细节方面给予了我们大力支持，确保与会者能够愉快地参与。

马尔森开发者峰会为期 3 天。这个通常以工作坊为形式的活动，采用了 5 月在加拿大成功举办的开发者峰会的布局。第一天，进行了一些工作小组讨论，涵盖 Capsicum、工具链问题、端口和文档等主题。第二天，进行了多个全体讨论，例如 FreeBSD 如何与虚拟化相关联，供应商与 FreeBSD 的关系等。最后，在第三天，许多有趣的进行中工作报告在主会议的专门开发者峰会专场中展示。

大多数演讲的照片和幻灯片可在峰会主页上查看。

## [谷歌编程之夏](https://www.freebsd.org/status/report-2011-07-2011-09.html#Google-Summer-of-Code)

### [Nvi 中的多字节编码支持](https://www.freebsd.org/status/report-2011-07-2011-09.html#Multibyte-Encoding-Support-in-Nvi)

| 链接                                                    |
| ----------------------------------------------------- |
| [FreeBSD Wiki](http://wiki.freebsd.org/ZhihaoSoC2011) |
| [Github 页面](https://github.com/lichray/nvi2)          |

联系方式：Zhihao Yuan <<lichray@gmail.com>>

nvi-iconv 保留了 nvi-1.79 在基本系统中的行为和许可，并采用了 nvi-1.8x 中的多字节编码支持。

状态：

* 已修复已知的内存泄漏和错误。`make buildworld clear`，`WARNS=1`（之前是 WARNS=0）。
* 支持 UTF-16，减少了很多 hack。
* 选项 `windowname` 现在通过 xprop 恢复 xterm 标题。
* 使用 file(1) 修改的文件编码检测已完成并被认为是稳定的。检测始终启用，因为 nvi-iconv 从不更改实际编码，并且检测会回退到区域设置。
* Pavel Timofeev 提供了完整的俄语目录翻译。感谢他。
* 现在，nvi-iconv 可以仅使用宽字符编译并且不依赖 iconv（受 FreeBSDChina.org 用户启发）。在这种情况下，它仅支持当前区域设置。

#### 待办事项

1. 在 nvi 的消息（反馈显示的最后一行）系统中支持宽字符。
2. 收集更多测试结果并进行代码审查。
