FreeBSD 2012 年第二季度状态报告
引言
本报告涵盖了 2012 年 4 月至 6 月期间与 FreeBSD 相关的项目。本季度的亮点是选举产生了新的核心团队,该团队于 7 月 11 日上任,并开始了其工作,团队成员中有相对较高比例的新成员。请注意,这是 2012 年计划的四份报告中的第二份。
感谢所有报告者的优秀工作!本报告包含了 17 个条目,希望你能喜欢阅读。
请注意,提交涵盖 2012 年 7 月至 12 月期间内容的报告的截止日期为 2013 年 2 月 17 日。
联系:Tom Rhodes <trhodes@FreeBSD.org>
FSC 已被移入 Port 系统(见 sysutils/fsc),并且继续在 Ports 外部改进。在服务控制、系统启动和简化进程方面有一些有趣的工作正在进行中。请继续关注后续状态报告中的更多信息。
待完成任务:
测试,测试,再测试。反馈对该项目非常重要。
联系:Gábor Kövesdán <gabor@FreeBSD.org>
决定将优化和扩展实现为一个更为独立的层,而不是直接在 TRE 中实现。自上次报告以来,这方面已经取得了一些进展,代码已进行了显著重构。尽管目前还未在这种新形式下完全工作,但已经接近工作状态。除此之外,多模式匹配需要一些调试,并且缺少一些小功能。
待完成任务:
完成多模式启发式正则表达式匹配。
实现 GNU 特定的正则表达式扩展。
测试性能、标准兼容性和正确行为。
http://wiki.freebsd.org/GoogleCodeIn/2011Status
http://wiki.freebsd.org/201208DevSummit
http://wiki.freebsd.org/DocIdeaList
我们继续推进将 2011 年谷歌 Code-In 项目的成果提交到 FreeBSD 项目中的工作;相关进展的概述请见http://wiki.freebsd.org/GoogleCodeIn/2011Status。文档提交者和 GCIN 导师应鼓励查看此列表并帮助将未完成的任务提交到代码库。
我们计划在 2012 年 8 月 DevSummit 前一天举办一次全天的文档峰会,这将是 2012 年 5 月 BSDCan 上举行的成功的 DocSummit 活动之后的延续。进一步的细节请见:http://wiki.freebsd.org/201208DevSummit。
在 7 月初,我们通过 IRC(EFnet 上的 #bsddocs 频道)举行了一次文档冲刺活动,计划重新激活市场团队,并强烈希望建立一个更有组织的新网站。
过去几个月,创建和更新文档以及网站内容方面取得了很多进展和动力。还可以阅读 doceng 报告,了解最近的基础设施改进。
任何希望帮助这一工作的人员,欢迎加入我们的行列,并通过 freebsd-doc 邮件列表或 EFnet IRC 的#bsddocs 频道与我们联系。
待完成任务:
审查网站内容,删除过时部分或在适用的情况下进行更新。
浏览 wiki 上的文档创意列表,并开始处理它们。
联系方式: 核心团队 <core@FreeBSD.org>
FreeBSD 项目高兴地宣布 2012 年核心团队选举的完成。FreeBSD 核心团队充当项目的“董事会”,负责批准新的源代码提交者、解决开发者之间的争议、任命特定目的的子委员会(如安全官员、发布工程、 Ports 管理、网站管理员等),以及根据需要做出任何其他行政或政策决策。自 2000 年以降,核心团队每两年由 FreeBSD 开发者选举产生。
Peter Wemm 在两年间歇后重新加入核心团队,新成员 Thomas Abthorpe、Gavin Atkinson、David Chisnall、Attilio Rao 和 Martin Wilke 加入现任成员 John Baldwin、Konstantin Belousov 和佐藤広生。
完整的新增选核心团队成员包括:
Thomas Abthorpe tabthorpe@FreeBSD.org
Gavin Atkinson gavin@FreeBSD.org
John Baldwin jhb@FreeBSD.org
Konstantin Belousov kib@FreeBSD.org
David Chisnall theraven@FreeBSD.org
Attilio Rao attilio@FreeBSD.org
佐藤広生 hrs@FreeBSD.org
Peter Wemm peter@FreeBSD.org
Martin Wilke miwi@FreeBSD.org
新核心团队感谢离任成员 Wilko Bulte、Brooks Davis、Warner Losh、Pav Lucistnik、Colin Percival 和 Robert Watson 在过去两年(在某些情况下是更多年)中的贡献。
核心团队特别感谢 Dag-Erling Smørgrav 组织了此次选举。
联系方式: Thomas Abthorpe <portmgr-secretary@FreeBSD.org> 联系方式: Ports 管理团队 <portmgr@FreeBSD.org>
Ports 逐步接近 24,000 个 Port 。PR 数量仍接近 1200。
在第二季度,我们新增了 7 名提交者,并为安全存档获取了一个提交位。
Ports 管理团队一直在进行 -exp 运行,验证基础系统更新如何影响 Ports,并为主要 Port 更新提供 QA 运行。值得注意的是,-exp 运行已完成以下更新:
automake 更新
cmake 更新
xorg 更新
png 更新
修复 make reinstall
在 bsd.ports.mk 中实现 USE_QT4
KDE4 更新
XFCE4 更新
bison 更新
perl5.14 设置为默认
ruby1.9 设置为默认
ruby1.8 更新
bsdsort 回归测试
在此期间,大量精力投入到将 Ports 准备好以支持 FreeBSD 9.1。
一个显著的进展是实现了 OptionsNG。
创纪录数量的 Ports 管理者参加了 BSDCan 2012,有五位参与了为期一周的活动,并在最后一天的 portmgr PR 会议中处理了 18 个 PR。你可以在此查看团队照片,同时点击“点赞”图标。
Beat Gaetzi 一直在进行 Ports 的持续测试,以确保从 CVS 迁移到 Subversion 的顺利过渡。该迁移在 2012 年 6 月 14 日的周末顺利完成。
待办任务:
寻求帮助使 Port 使用 clang 编译。
寻求帮助修复 CURRENT 上的损坏 Port 。(该列表需要更新。)
寻求帮助解决 T二级架构架构的 Port 问题。
大部分 Port PR 已分配,现在需要专注于测试、提交和关闭。
联系方式: Warner Losh <imp@FreeBSD.org>
FreeBSD 对 Atmel 的支持已经停滞了一段时间。随着对新 SoC(系统级芯片)需求的出现,许多改进变得迫切需要。虽然新的 SoC 支持并不难,但它确实涉及大量代码的复制。我已经开始着手使这变得更容易。原本计划通过表驱动的方式来实现,但后来我发现 Atmel 已经生成了 dts 文件。
因此,我计划转而使用 Atmel 的 .dsti 文件或其变种。他们为所有 AT91SAM9 系列的芯片提供了 .dsti 文件。这应该能帮助我们更快地支持新的 SoC 和开发板。
然而,这种方法也有一些挑战。引脚复用在 Atmel 的 dts 文件中似乎没有定义。目前,只有少数设备的定义较为清晰,而且编码方式似乎还不成熟。
因此,我们有一个目标丰富、非常适合重构的 Port 。
待办任务:
更新基础系统的 libfdt 至支持 include 的版本。
为 Atmel AT91RM9200 编写 .dtsi 文件。
为所有支持的开发板编写 .dti 文件。
帮助解决引脚复用问题。
重构现有的开发板文件,使新文件更容易编写。
自由发挥,实施新 CPU 的开发板支持。
联系方式: Nigel Williams <njwilliams@swin.edu.au> 联系方式: Lawrence Stewart <lastewart@swin.edu.au> 联系方式: Grenville Armitage <garmitage@swin.edu.au>
目前正在为 FreeBSD 内核开发一个符合 IETF 草案标准的多路径 TCP 实现。
该项目的一个主要目标是创建一个研究平台,用于探讨一系列与多路径相关的传输问题,包括拥塞控制、重传策略和数据包调度策略。我们还旨在与在洛万大学开发的 Linux 内核实现保持完全的互操作性。
随着项目的进展,我们预计会在项目主页发布代码和结果。
联系方式: Gleb Smirnoff <glebius@FreeBSD.org>
该项目旨在将 pf(4) 包过滤器从单一互斥锁中移出,并在整体上改进其 FreeBSD Port 。
该项目接近完成,计划在更多测试和基准测试后将代码提交到主干。如果你对细节感兴趣,请参阅 freebsd-pf 邮件线程(见链接)。
待办任务:
重写 pf(4) 的 ioctl() 接口,使其不再使用内核中的结构。这样可以使 ABI 更稳定,并促进未来的开发。
联系方式: 佐藤広生 <hrs@FreeBSD.org> 联系方式: Ryusuke Suzuki <ryusuke@FreeBSD.org>
我们的翻译工作已略微转向手册部分,从 www/ja(CVS)或 htdocs(SVN)子树移至此部分,因为几乎所有已翻译的网页内容已更新为最新的英文版本。
在此期间,我们翻译了 8.3-RELEASE 公告并及时发布。同时也尽快翻译了新闻快讯及其他更新。
对于 FreeBSD 手册,已完成“前沿”和“打印”部分的翻译工作。也更新了“linuxemu”和“serialcomms”部分。目前,“bsdinstall”、“cutting-edge”、“desktop”、“install”、“introduction”、“kernelconfig”、“mirrors”、“multimedia”、“pgpkeys”、“ports”、“printing”和“x11”章节已与英文版本同步。
待办任务:
继续翻译
ja_JP.eucJP
子树中过时的文档。
联系人:Zbigniew Bodek <zbb@semihalf.com> 联系人:Rafal Jaworowski <raj@semihalf.com> 联系人:Tomasz Nowicki <tn@semihalf.com>
ARM Fast Models 是一种平台,帮助软件开发人员在 SoC 设计的同时进行调试,从而加速和改善系统开发。本项目旨在将 FreeBSD 搬上基于 ARM Cortex-A15 和外设组件的 ARM Fast Models 系统。它在单用户模式下运行,使用编译进内核的 RAM 磁盘最小根文件系统。
当前的 FreeBSD 支持包括:
L1、L2 缓存,分支预测器
双核(SMP)支持,设置为 WB 缓存模式
Cortex-A15 集成通用定时器
ARM 外设组件的驱动程序:
PL011 UART 控制器
PL390 GIC - 通用中断控制器
SP804 双定时器
接下来的步骤:
四核(SMP)支持
多用户模式
联系人:Oleg Moskalenko <oleg.moskalenko@citrix.com> 联系人:Gábor Kévesdén <gabor@FreeBSD.org>
BSD sort(1) 已成为 10-CURRENT 中的默认排序实用程序。它与最新的 GNU sort(1) 版本 8.15 兼容,只是默认情况下未启用多线程模式。
待完成任务:
当 BSD sort(1) 的记录跟踪允许时,将 GNU sort(1) 从 -CURRENT 中移除。
改进多线程排序的可靠性,并调查是否可以将其作为默认编译模式。
调查将排序功能提取为独立库的可能性,以便其他实用程序也能使用。
联系人:Gábor PÁLI <pgj@FreeBSD.org> 联系人:Ashish SHUKLA <ashish@FreeBSD.org>
我们很高兴地宣布,FreeBSD Haskell 团队已将 Haskell 平台更新为 2012.2.0.0,将 GHC 更新为 7.4.1,并更新了现有的 Port 到其最新的稳定版本。我们还添加了许多新的 Haskell Port ,现在 FreeBSD Port 树中的 Haskell Port 总数为 336 个。
待完成任务:
测试 GHC 与 clang/LLVM 的兼容性。
向 lang/ghc Port 添加一个选项,以便使用已安装的 GHC 来构建,而不是要求一个单独的 GHC 启动包。
将待处理的 Haskell Port 提交到 FreeBSD Port 树。
向 Ports 添加更多的 Port 。
联系人:KDE FreeBSD <kde@FreeBSD.org>
团队已经发布了许多版本并向上游提交了许多修复和补丁。最近的一些版本包括:
KDE SC: 4.8.3、4.8.4(在 Port 中)和 4.8.95(在 area51 中)
Qt: 4.8.1、4.8.2
PyQt: 4.9.1; SIP: 4.13.2; QScintilla 2.6.1
KDevelop: 2.3.1; KDevPlatform: 1.3.1
Calligra: 2.4.2、2.4.3
Amarok: 2.5.90(在 area51 中)
CMake: 2.8.8
Digikam(及 KIPI 插件): 2.6.0
因此,根据 PortScout,kde@ 总共有 393 个 Port ,其中 91% 是最新的。
团队始终欢迎更多的测试人员和 Port 维护者,所以请联系我们并访问我们的主页。
待完成任务:
测试 KDE SC 4.8.95。
测试 KDE PIM 4.8.95。
更新过时的 Port ,请参见 PortScout 获取列表。
联系人:David Naylor <naylor.b.david@gmail.com>
自上次更新以来,已经发布了 2 个新功能版本和 4 个 bug 修复版本。主要更新内容包括:
已经增加了对以下功能的支持:
-j:每个阶段控制并发
pkgng:下一代包管理器
通过仓库安装包
动态默认设置(从 /etc/make.conf 加载)
新的选项框架(即 OptionsNG)
一些修复包括:
修正了断言
修正了构建逻辑
当 kevent 收到 EINTR 时重试
正确检测已安装的 Port
许多构建逻辑方面的修复
进行了一项基准测试,将 Portbuilder 与标准 Port 构建 KDE(x11/kde4)在一个干净的 chroot(8) 环境中的构建时间进行了对比。Portbuilder 实现了 2:21:16 的构建时间,而标准 Port 构建时间为 4:47:21,使用 Portbuilder 时,构建时间减少了 51%。
http://www.redports.org/
联系方式: Bernhard Froehlich <decke@FreeBSD.org>
在过去的半年里,redports 取得了良好的进展,并得到了各方的大力支持,使其成为一个稳定且快速的服务。
在 BSD-Day 维也纳大会上,tinderbox 中长期存在的安全问题被提出,并由 beat 进行了处理。这大大提升了并行运行作业的安全性和隔离性,让我感到更加安心。
我们最近还从 FreeBSD 基金会获得了两台强劲的机器,极大地提升了计算能力。因此不再有积压,作业完成得更快了。
但正如往常一样,现在我们有了足够的计算能力,我能够兑现另一个承诺,将 Ports QAT 功能集成到 redports 中。Ports QAT 是一个自动化服务,在每次提交到官方 FreeBSD ports 树之后执行构建测试。如果构建失败,它会向提交者发送邮件和日志文件。这能够快速发现坏的提交,并让提交者在第一个用户注意到之前修复问题。这个服务在大约两年前停止了,我们没有适当的替代方案。现在,这一功能已经完全集成到 redports 中,也为我们带来了一个共同平台的所有好处。
待办任务:
自动构建来自 Ports PRs 的传入补丁,并将结果发送到 GNATS 数据库。
人们希望在 redports 上有一个 GCC 测试环境,在该环境中所有 Port 都使用 lang/gcc47 构建。为了实现这一点,我们需要修补 Port 框架以处理这一需求,并正确地使用基础 GCC 进行引导。这还使我们能够使用现代 GCC 构建所有二进制包,并且对普通用户而言易于使用。有贡献者吗?
http://wiki.freebsd.org/Xorg
http://trillian.chruetertee.ch/ports/browser/trunk
联系方式: Martin Wilke <miwi@FreeBSD.org> 联系方式: Koop Mast <kwm@FreeBSD.org> 联系方式: Niclas Zeising <zeising@FreeBSD.org> 联系方式: Eitan Adler <eadler@FreeBSD.org>
在此期间初,FreeBSD 对 xorg 分发版进行了更新,更新为 xorg 7.5.2。此更新包括一个新标志,WITH_NEW_XORG,允许使用较新的 xorg 分发版,适用于现代硬件。若要获得对最新 Intel 图形芯片组的 KMS 支持,还必须设置 WITH_KMS。此要求 FreeBSD 10-CURRENT 或 FreeBSD 9-STABLE 的新版本。
待办任务:
切换到使用 FreeGLUT 而非 libGLUT,因为后者已经过时,并且不再有上游支持或发布。该项工作大部分已经完成。
将 xorg 分发版更新为开发库中的版本。xorg 项目最近发布了一个新版本,而开发库中包含该版本。此版本需要更多的测试,才能合并,并且 6 月初已发出了 CFT。该项工作仍在进行中。
决定如何处理新旧 xorg 分发版。在新版 xorg 中,很多遗留的驱动支持已被丢弃,因此我们需要维护两个 xorg 分发版,以避免丧失大量硬件驱动。目前,通过在 /etc/make.conf 中设置 WITH_NEW_XORG 标志来完成此操作,但需要更实用的解决方案。特别是考虑到该标志不够用户友好,并且目前没有官方包支持新版分发版。
联系方式: Gábor Póli <pgj@FreeBSD.org>
今年,我们将活动时间提前了六个月,因此它于 2012 年 5 月 5 日举行,并与奥地利 Linux 周 (Linuxwochen Österreich) 在维也纳共同举行。我们有许多赞助商,如刚加入的 FreeBSD 基金会、iXsystems、FreeBSDMall、BSD Magazine 和 allBSD.de 项目,他们使我们能够继续在中欧各地举办我们先前启动的多项目 BSD 开发者峰会系列。
活动开始时,周五晚上在维也纳市中心的 Kolar 举办了“Stammtisch”(本地啤酒聚会)——一如既往。接着,周六的活动涵盖了来自 FreeBSD、OpenBSD 和 NetBSD 世界的许多有趣话题:在嵌入式系统中运行 NetBSD 管理 VOIP 应用程序、Capsicum 安全框架介绍、relayd(8)(OpenBSD 的负载均衡器和代理解决方案)、FreeBSD ports 树的开发进度、云中使用 DVCS、pfSense 防火墙和 mfsBSD 等。有关详细信息,请查阅报告中的链接。
最后更新于
这有帮助吗?