FreeBSD 2006 年 4-6 月状态报告
FreeBSD 2006 年 4-6 月状态报告
原文地址:https://www.freebsd.org/status/report-2006-04-2006-06.html
引言
随着 FreeBSD 5.5 和 FreeBSD 6.1 的发布,2006 年第二季度取得了丰硕的成果。谷歌正在赞助 14 名学生参与 FreeBSD 项目,作为其编程之夏项目的一部分(其中大部分学生已提交了关于他们项目的报告)。
Sun 的开源软件开始进入 FreeBSD,DTrace 的移植工作即将完成,同时 UltraSparc T1 处理器的移植也在推进(这对当前的 SMP 工作有很大推动作用)。拥有一款强大的调试工具,并结合能够运行最多 32 个并发线程的 CPU,有助于识别可扩展性问题。
BSDCan 2006 再次取得了巨大的成功,2 天的开发者峰会内容丰富。作为会议的产物,FreeBSD 对嵌入式领域的关注开始加强。多个 ARM 板卡成为目标,MIPS32 的移植工作正在进行中,人们还在寻找其他有趣的平台来移植 FreeBSD。针对 11 月在意大利米兰举办的 EuroBSDCon,征文工作已经开始。
此外,网络栈也在进行大量的春季大扫除。在 KAME 项目结束后,IPv6 代码的整合重新聚焦,而 SCTP 的完整移植也已进入最终整合阶段。当然,所有这些都没有忽视其他网络项目的进展。
请继续阅读,了解过去三个月 FreeBSD 项目的更多详细新闻。如果你有兴趣帮助,请参考一些报告中的“开放任务列表”。此外,我们还希望向你推荐志愿者项目和想法列表,并期待下次收到你的状态报告。
感谢所有报告员的出色工作和及时更新!祝你阅读愉快。
链接
[维基页面](http://wiki.freebsd.org/SnmpBridgeModule
联系人:Shteryana Shopova <shteryana@FreeBSD.org>
作为我 2006 年谷歌编程之夏项目的一部分,我正在为 FreeBSD 的 BSNMP 守护进程实现一个桥接监控模块。初步原型已经完成,并且正在进行一些内核改动,以便访问所需的所有数据。除了 IETF RFC 4188 之外,该 SNMP 模块将支持 FreeBSD 所支持的多个桥接设备的监控。
待办事项
完成内核更改和 SNMP 模块代码。
测试。
链接:http://wiki.freebsd.org/gvirstor
联系人:Ivan Voras <ivoras@freebsd.org>
模块 gvirstor
的目的是提供创建虚拟存储设备的能力,该设备的大小可以是任意大的(通常为数 TB),由任意数量的物理存储设备(实际上是任何低级别的 GEOM 提供者,包括 RAID 设备)组成,且这些物理存储设备的大小也是任意的(通常为 50 GB-400 GB 的硬盘)。这些组件的存储空间被划分成小块(例如 4 MB),并根据需要分配(提交)给虚拟设备。
开发工作已启动,并按计划进展(尽管有些缓慢)。元数据格式和虚拟存储分配格式已定义,更多的编码工作正在进行中。
待办事项
需要进行大量的用户测试(尽管目前尚未开始)。
链接:
联系人:Gábor Kövesdán <gabor@FreeBSD.org>
i386 二进制文件的改进支持已准备好进行实验性运行。它仅允许在 amd64 和 ia64 上安装此类 Port——当且仅当内核中编译有兼容层并且 32 位库已安装在 /usr/lib32
下。
DESTDIR 支持正在进行中。它适用于没有 USE_*
的最简单 Port,这些 Port 没有 [pre|do|post]-install
目标。关于 DESTDIR 中的冲突检查、从 DESTDIR 中卸载等问题还存在更复杂的挑战,这些问题需要解决。
待办事项
修复 DESTDIR 问题。
检查所有 Port 是否遵守
CC
/CFLAGS
,并修复错误的 Port。应将 Fetch 脚本从
bsd.port.mk
中提取出来,作为独立脚本。编写工具,使得能够交叉编译 Port。
编写优秀的
plist
生成工具供 Ports 开发者使用,或者更新ports/Tools/scripts
中的旧工具。
联系人:Paolo Pisati <piso@FreeBSD.org>
随着 SMPng 项目引入了精细粒度的锁定,FreeBSD 内核经历了重大重新设计,许多子系统也因此发生了显著变化。特别是,设备驱动程序的中断上下文(“the bottom half”)需要与进程上下文(“the top half”)同步,并且以一致的方式共享数据,而不使用 spl*()
。为了解决这个问题,采用了一种基于中断线程的新中断模型,并结合了一个专门用于某些驱动程序处理程序(如串口、时钟等)的快速中断模型,这些驱动程序在处理过程中不阻塞锁定。遗憾的是,尽管中断线程模型被证明是一个可靠的解决方案,但它的性能并未达到 SMPng 之前(4.x)的水平,因此我们调查了其他解决方案,其中中断过滤就是其中之一。
作为我 2006 年谷歌编程之夏项目的一部分,我正在为 FreeBSD 实现中断过滤框架,并在框架搭建完成后,我将比较各种过滤器的性能与所有先前的模型进行对比:pre-SMPng(4.x)、ithread 和轮询。
迄今为止,对源代码树的最重要修改包括:
使 PPC 接受每个 IRQ 线多个 FAST 处理程序(之前
INTR_FAST
意味着INTR_EXCL
)将所有 INTR_FAST 处理程序转换为过滤器:返回错误代码以指示它们的操作(
FILTER_HANDLED/FILTER_STRAY
),并指示它们是否需要进一步操作(FILTER_SCHEDULE_THREAD
)将部分中断执行代码从 MD 代码移动到
kern_intr.c::intr_filter_loop()
中断新总线 API:
bus_setup_intr()
增加了一个新的过滤器参数类型int driver_filter_t(void*)
转换所有覆盖
bus_setup_intr()
的总线以支持过滤器将所有普通的 ithread 驱动程序转换为提供
NULL
过滤函数
下一个里程碑是使所有不同的模型(仅过滤器、仅 ithread 和过滤器 + ithread)能够可靠地协同工作。
待办事项
ARM 设备大多未经测试。
Sparc64 需要更多低级别(
.s
)中断例程的工作。
链接:http://wiki.freebsd.org/ClementLecigne
联系人:George Neville-Neil <gnn@freebsd.org>
联系人:Clément Lecigne <clemun@GMAIL.COM>
Clément 一直在与 libnet 和 gnn 的基于 Python 的数据包库(PCS)合作,编写代码以测试 IPv6 中的漏洞。Clément 已经发现了一些问题,所有问题已报告给他的导师和 FreeBSD.org
的安全官员。漏洞详情不会在此报告。
待办事项
将 PCS 0.1 发布到 SourceForge,以便更广泛使用。
链接:
联系人:Chris Jones <cdjones@freebsd.org>
该项目正在开发中,预计 2006 年 7 月中旬发布初步可用的软件。CPU 限制将通过层次化调度程序实现:(最初)使用轮询调度程序选择运行任务的 Jail,并委托每个 Jail 中运行的任务给该 Jail 的调度程序。
待办事项
完成轮询 Jail 间调度器(目前已实现每个 Jail 的 4BSD 调度器)。
为内存跟踪添加挂钩。
链接:http://wiki.freebsd.org/SpencerWhitman
联系人:Spencer Whitman <joecat@cmu.edu>
联系人:Poul-Henning Kamp <phk@FreeBSD.ORG>
一个简单的词法分析器和解析器几乎完成。同时,也已经对 K 语言的未来扩展进行了重要规划。
待办事项
完成词法分析器和解析器。
实现
#!
预处理器功能。向预处理器添加类似 lint 的功能。
向预处理器添加 style(9) 检查。
允许检测未使用的
#includes
。
链接:
联系人:Roman Divacky <rdivacky@freebsd.org>
联系人:Alexander Leidinger <netchild@freebsd.org>
FreeBSD 的 Linux 兼容层(linuxolator)目前实现了大部分必要的功能,以仿真 2.4.2 版本的 Linux 内核,但 Linux 世界已经向前发展,目前的 Linux 世界需要 2.6.x 的功能。这次编程之夏任务的目标是使 Fedora Core 4 Linux 基础能够在 2.6.x 内核上运行。目前,这意味着扩展 clone()
系统调用并实现与 pthread 相关的功能。这包括 TLS 实现(系统调用 sys_set_thread_area
)、可能的线程 ID 操作(用于 pthread_join
等)以及 futex(Linux 快速用户空间互斥锁的实现)。这将使 pthread 相关的程序能够正常工作。在完成这些之后,可能还需要实现其他功能,但只有时间能证明。Google 已赞助我完成这项工作,我希望在暑期后继续作为我的硕士论文的一部分来进行。
待办事项
完成 TLS 实现及其他与线程相关的功能(例如线程 ID 操作,对于 pthread 的正常工作来说似乎是必要的)。
Futex 似乎也是 pthread 正常工作所必需的。
可能需要其他功能,以便能够在 2.6.16 的 Linux 兼容层下运行基本程序。
链接:
联系人:Michael Bushkov <bushman@FreeBSD.org>
该编程之夏2006 项目的基本目标是从 libc 中移出 nsswitch 模块,扩展缓存守护进程,并将 nss_ldap
导入到基本源代码树中。该项目的两个里程碑已经完成:
成功地将 nss 模块从 libc 中移出,转移到独立的动态库中。为了确保静态二进制文件的正常运行(它们无法使用动态的 nss 模块),nss 模块静态链接到 libc.a 中。作为 nss 模块分离的副作用,重写了
getipnodeby*()
函数,以使用gethostby*()
函数,而不是调用 nsdispatch(3)。已扩展缓存守护进程的选项perform-actual-lookups
,以支持所有实现的 nsswitch 数据库。已经创建了一组回归测试,测试与 nsswitch 相关的函数。这些测试也能够在系统升级后测试这些函数的稳定性。
待办事项
将 nss_ldap 导入源代码树中。
改进缓存守护进程的性能。
链接:http://people.freebsd.org/~jb/dtrace/index.html
联系人:John Birrell <jb@freebsd.org>
匿名启用功能现已生效。在启动加载器菜单中新增了一个选项,可以加载 DTrace 模块并跟踪内核启动过程。
Sun Microsystems 始终非常支持 FreeBSD 移植,并慷慨地提供了一台 Sun Fire T2000 服务器,以便将 Kip Macy 的 sun4v 移植合并到 DTrace 项目树中。
DTrace 项目树的源代码现在已导出到 cvsup10.freebsd.org
。
有关更多详细信息,请参考项目页面。
待办事项
当前的努力集中在使 DTrace 对 sun4v 移植工作更有用,该工作暴露了当前 FreeBSD SMP 实现的可扩展性问题。DTrace 应该是分析这些问题的理想工具。
链接:
联系人:George Neville-Neil <gnn@freebsd.org>
正在推进多个嵌入式领域项目。目前,新信息的主要位置是 www.embeddedfreebsd.org
。我们还创建了新的邮件列表,freebsd-embedded@freebsd.org,该列表最终将取代 freebsd-small。已在 small 上发布了一个通知,邀请人们迁移到嵌入式列表。
待办事项
更新开发者手册,提供构建嵌入式版本 FreeBSD 的信息。
帮助进行 MIPS 移植。
帮助进行 ARM 移植。
调查 SH 移植(应日本的需求,Hitachi SH 处理器在嵌入式领域很受欢迎)。
链接:
联系人:Robert Watson <rwatson@FreeBSD.org>
联系人:Wayne Salamon <wsalamon@FreeBSD.org>
联系人:Christian Peron <csjp@FreeBSD.org>
TrustedBSD 审计在 FreeBSD 7.x 中提供了细粒度的安全事件审计,并计划在 FreeBSD 6.2 中合并到 6.x 版本。过去三个月所做的工作:
每个审计管道的预选使 IDS 应用程序能够按管道配置审计记录选择,新的 auditpipe.4 文档。
audit_submit
库调用减少了向应用程序添加审计支持的复杂性。进行了大量清理、修复 bug、改进锁定、改进令牌解析和生成。
Solaris 主体令牌兼容性,扩展地址支持。
扩展属性调用审计,ACL 支持正在进行中。
将 OpenBSM 1.0 alpha 7 集成到 CVS 中。
OpenBSM 测试工具正在开发中。
实验性的 auditeventd 允许共享对象插件通过共享管道订阅实时审计事件,以便支持简单入侵检测和监控组件的易用创作。
待办事项
完善审计事件守护进程的 API 和实现。目前,这些内容在 CVS 合并版本中默认未安装。
完成系统调用的覆盖。
允许更细粒度的审计配置:实现有关路径、execve 参数、环境变量的控制标志。
支持审计 MAC 策略数据。
增加覆盖用户空间应用程序,例如
adduser
、rmuser
、pw
等应用层审计事件。
链接:http://sources.zabbadoz.net/freebsd/ipv6/fast-ipsec.html
联系人:George Neville-Neil <gnn@freebsd.org>
联系人:Bjoern A. Zeeb <bz@freebsd.org>
继续为 FAST_IPSEC 添加对 IPv6 的支持。测试环境现在稳定。可以构建并运行启用 FAST_IPSEC
和 INET6 的内核,但目前 IPv6 中的 IPSec 已损坏,正在修复中。
待办事项
完成向
FAST_IPSEC
类型处理的迁移,以支持 IPv6。这被 IPv6 代码本身的结构所复杂化,因为与 IPv4 不同,它将传输模式和隧道模式处理分开,跨输出例程进行处理。
联系人:Chuck Lever <cel@FreeBSD.org>
Mohan Srinivasan 在本季度提交了他的更改,以使 NFSv2/3 客户端在 HEAD 中实现 MP 安全。更改可能很快会回移植到 6.x 版本。
Robert Watson 和 Chuck Lever 在 BSDCan 2006 期间讨论了内核中 NFSv4 客户端的将来。当前的 NFSv4 客户端没有维护。Chuck 还指出,关于旧客户端(NFSv2/3)有一系列未修复的 PR,这些问题是他优先处理的事项。Robert 还希望将 NFSv4 样式的 ACL 作为 FreeBSD 文件系统的标准。还讨论了将 Rick MacKlem 的 NFSv4 服务器集成到 7.x 中的可能性。
Chuck Lever 在本季度成为了正式的源代码提交者。
链接:
联系人:Bjoern A. Zeeb <bz@freebsd.org>
初步更改包括:
更改了
ip6_sprintf
,不再返回静态缓冲区。开始采用
in6_pcb*
代码,更新为我们对遗留 IP 的实现。
下一步将是减少全局变量和缓存的数量。
待办事项
清理代码。
使所有内容 MPSafe。
改进功能并添加新特性。
链接:
联系人:Bjoern A. Zeeb <bz@freebsd.org>
在 FreeBSD 完成完全的网络栈虚拟化之前,这项工作将提供对多 IP IPv4/v6 Jail 的支持。
这些更改基于 Pawel Jakub Dawidek 的多 IPv4 Jail 工作以及 Olivier Houchard 关于单 IPv6 Jail 的一些初步工作。
这些更改需要更多的测试,但基本上已经可以正常工作。
这项工作并不被认为是正确的做法,因此 不要 请求官方支持,也不要问这是否会被提交到 FreeBSD 源代码仓库中。 在清理完与 Jail 无关的 IPv6 更改后,我将发布一个补丁,供所有想要尝试的用户使用,适用于 HEAD 版本,可能还会支持 RELENG_6。
待办事项
(IPv6) 相关的安全检查。
编写一些测试,尤其是 IPv6 更改需要更多测试。
检查可能需要合并到 HEAD 的常规更改。
链接:
联系人:George Neville-Neil <gnn@freebsd.org>
联系人:Randall Stewart <rrs@cisco.com>
在过去的几个月里,Randall Stewart 一直在 HEAD 和 STABLE 中工作,准备将 SCTP 协议(流传输控制协议)集成到 FreeBSD 中。他目前正在开发补丁,以便与更广泛的受众分享,但需要先进行一些集成工作。Randall 已获得暂时提交权限,将与 gnn 一起推动代码提交到主树的 HEAD 版本。
待办事项
待集成完成,需要大量测试人员。
链接:
联系人:Sam Leffler <sam@errno.com>
无线网络支持已经稳定了一段时间,因此大部分工作集中在修复 bug 和改进遗留驱动程序。
Max Laier 和我共同努力,完善了对英特尔无线网卡的支持。该工作成果包括显著改进了 iwi(4) 驱动程序(用于 2195/2200 部件)和用于管理可加载设备固件的 firmware(9) 功能。还有一款更新的 ipw(4) 驱动程序,它的改进与 iwi 驱动程序类似,现已进入初步测试阶段。计划在今年夏天晚些时候支持最新的英特尔设备——3945 PCIe 卡。
Atheros 支持通过新的 hal 进行了更新,修复了一些小问题,并为 SPARC、PPC 和 ARM 平台提供了已知可用的构建版本。此外,还有一个适用于 MIPS 的工作支持,待 MIPS 移植准备好进行测试时使用。除此之外,我们修复了一个有用的 bug,它影响了 AP 操作,尤其是当关联的站点处于省电模式时。
wpa_supplicant 和 hostapd 已更新至 Jouni Malinen 发布的最新稳定版。
实验性的更改已发布,支持通过 bpf 注入原始的 802.11 帧。该工作是与 Andrea Bittau 合作完成的。
待办事项
像 wi 这样的遗留驱动程序已经停滞不前,需要维护者。这是引入新 802.11 特性的先决条件,例如改进的扫描功能和虚拟 AP。
链接:http://people.freebsd.org/~kib/quotagiant
联系人:Konstantin Belousov <kib@FreeBSD.org>
允许 UFS 在无 Giant 模式下与配额一起操作的补丁已经酝酿很长时间了。由于最近对快照代码的大量修复,我认为你可能遇到的问题完全是由补丁引起的。
除了性能上的好处外,补丁还有一个更重要的优点。它使 UFS 在任何编译到内核中的选项下都能在相同的锁定机制下运行。我认为,从长远来看,这将有助于提高系统的稳定性。
待办事项
需要测试者反馈。欢迎提供稳定性报告和性能测量!
链接:
联系人:Hans Petter Sirevaag Selasky <hselasky@c2i.net>
我已经在将现有的 USB 设备驱动程序转换为新的启用了互斥锁的 USB API 方面工作了一段时间。我已经转换了“ulpt”、“ums”、“uhid”、“ukbd”、“ugen”、“uaudio”和其他一些驱动程序。大约有 10 个 USB 设备驱动程序需要转换,其中大部分是网络设备驱动程序。
目前,我正在为所有 USB 主机控制器实现散播与收集支持。散播与收集意味着一次分配 PAGE_SIZE
字节的内存,然后尽可能地将这些内存块填充 USB 主机控制器的结构和缓冲区。这应该能解决当系统内存碎片化时分配 DMA 可用内存的问题。
待办事项
如果有任何人愿意帮助转换剩余的 USB 设备驱动程序,请给我发送电子邮件。
链接:
联系人:Pawel Jakub Dawidek <pjd@FreeBSD.org>
GJournal 是 GEOM 类,提供 GEOM 提供者的日志功能。它也可以用来为各种文件系统提供日志功能,仅需很少的文件系统特定代码。目前,gjournal 仅实现了基于 UFS 的日志功能。由于 gjournal 是独立于文件系统并且在文件系统级别以下操作,它无法区分数据和元数据,因此它同时对两者进行日志记录。gjournal 的一个优点是,即使在启用了写缓存的磁盘上,它仍能可靠地工作,这对于启用了日志功能的文件系统来说通常并非如此。记住... 不再需要 fsck
。
待办事项
我希望收到用户的反馈,测试 gjournal 在不同工作负载下的表现。
链接:
联系人:Ulf Lilleengen <lulf@stud.ntnu.no>
我一直在将 gvinum 中缺失的功能从 vinum 移植过来,同时添加新功能。
到目前为止,已实现了 resetconfig
、detach
、dumpconfig
、setstate
(在 plexes 和 volumes 上)以及 stop
命令,还有一些其他小修复。目前正在实现 attach
命令,并已开始进行磁盘分组。目前,大部分工作已在 p4 中完成,补丁将尽快提交。
链接:
联系人:Ariff Abdullah <ariff@FreeBSD.org>
联系人:Alexander Leidinger <netchild@FreeBSD.org>
联系人:Multimedia Mailinglist <multimedia@FreeBSD.org>
自上次状态报告以来,我们修复了一些错误,增加了对 envy24 芯片的基本支持,并清理了 emu10kx 驱动程序的源代码,使其准备好导入到基本系统中。
我们还获得了一些补丁,提供了少量的基础架构来支持 Intel HDA。尽管尚未完成,且最终用户目前无法使用这些功能。
待办事项
查看创意列表中的与声音相关的条目。
sndctl(1):用户控制声音系统非混音部分(例如 spdif 切换、虚拟 3D 效果)工具(而非当前 -current 中的 sysctl 方法);pcmplay(1)、pcmrec(1)、pcmutil(1)。
可插拔 FEEDER 基础架构。用于调试各种馈送内容或作为用户空间库和测试套件。
对新硬件的支持(envy24、Intel HDA)。
链接:
联系人:Attilio Rao <attilio@freebsd.org>
一些 FPU 系统 和 内核 memcpy/copyin/copyout 已经进行了修改。特别地,已引入每个 CPU 的保存区域(通过互锁保护),以确保稳定的保存机制。copyout/copyin 已经修改,使用了 memcpy 的向量化版本,并提供了 xmm 版本的 memcpy。
待办事项
对不同版本的 xmm 复制进行基准测试,特别是展示 UP 和 SMP 架构之间的差异(评估添加块预取、非暂时性提示使用等的可能性)
修改 npxdna 陷阱处理程序,以识别 xmm 环境的使用,并用 8-movdqa 替换 fxsave
链接:
联系人:Russell Cattelan <cattelan@xfs.org>
联系人:Alexander Kabaev <kan@freebsd.org>
联系人:Craig Rodrigues <rodrigc@freebsd.org>
FreeBSD 的 XFS 项目是将公开可用的 GPL 源代码移植到 FreeBSD 的努力,目标是支持 SGI 的 XFS 文件系统。
在 12 月,我们将 XFS 的一个版本导入到 FreeBSD-CURRENT,使 FreeBSD 可以以只读模式挂载 XFS 文件系统。
作为顺带的努力,我们继续进行 PHK 开始的工作,清理 FreeBSD 中的挂载代码。我们可以使用现有的 FreeBSD mount(8) 工具来挂载 XFS 分区,而无需引入新的 mount_xfs 工具。
待办事项
我们需要实现对 XFS 分区的写入支持
链接:http://www.freebsd.org/projects/ideas/
联系人:Joel Dahl <joel@FreeBSD.org>
联系人:Alexander Leidinger <netchild@FreeBSD.org>
FreeBSD 的项目与志愿者创意列表进展顺利。已有几个项目被志愿者接手,并已纳入代码库。其他项目正在审查或进行中。我们期待收到新创意,寻找愿意作为技术联系人参与通用主题(如 USB)或特定条目的人员(无论是已存在还是新创建),以及对现有条目的建议或完成报告(部分或整体)。
待办事项
添加更多创意。
寻找更多技术联系人。
寻找愿意审查/测试(已完成)项目的人员。
链接:
联系人:Gábor Kévesdén <gabor@FreeBSD.org>
翻译后的网页几乎已经完成。这个匈牙利语翻译是原始英文网页的“简化版”,因为有些部分对匈牙利社区来说无关紧要,或者包含快速变化的数据,所以目前翻译这些页面没有意义,可能以后再翻译,如果我们有更多匈牙利贡献者的话。但这个网页将是翻译文档的一个很好的起点,我们无论如何都需要一个好的地方来存放已翻译的文档。
我今年夏天会忙于编程之夏,但我会尽力找到能够帮助我完成这个项目的人。所有帮助都非常感谢。
待办事项
翻译剩余的重要页面。
重新结构化新闻/媒体部分,应该从英文网页获取内容,因为我们没有足够的匈牙利资源来保持其更新。
浏览页面时启用 JavaScript 时存在渲染问题,但这可能是服务器端的问题,需要进行调查。
链接:
联系人:Joseph Koshy <jkoshy@FreeBSD.org>
作为实现支持调用图和跨架构性能测量的中间步骤,我正在创建一个 BSD 许可的 ELF 解析与操作库。该库将实现 SysV/SVR4 (g)ELF[3] API。
当前状态:该库的实现正在进行中。一个基于 TET 的测试套件和记录库接口的手册页面也正在同时创建中。
工作正在 FreeBSD 的 Perforce 仓库中进行。我希望在 2006 年 7 月底之前准备好供大家进行审查。
待办事项
需要审查者对代码和测试套件进行审查。如果你有任何扩展 SysV/SVR4 ELF(3) API 的建议,欢迎发送邮件。
链接:http://www.freebsd.org/platforms/ppc.html
联系人:Peter Grehan <grehan@freebsd.org>
该项目在经历了长时间的迁移暂停后,正在逐步恢复。
Alan Cox 几乎完成了使 pmap 模块无 Giant 锁的工作。
链接:
联系人:Dan Langille <dan@langille.org>
最近,FreshPorts 增加了几个新功能:
在 Web 应用程序层面实现了缓存,以减少数据库服务器的负载并加快页面加载速度
扩展了搜索功能,能够查找该维护者维护的所有 Port,以及某个提交者的所有提交
最近的大部分工作集中在优化上,无论是在数据库层面还是 Web 应用程序层面。最近,我们收到了一个 2U 服务器的捐赠,供 FreshPorts / FreshSource / FreeBSD Diary / BSDCan 团队使用。我们还收到了一个 RAID 卡。现在我们在寻找一些硬盘。
在过去几周的工作集中在对新服务器进行基准测试,并使其准备好投入生产。最终它需要一个新的家,因为我不想让它一直在我的地下室运行(它真的很吵!)。
待办事项
我们希望获得更多硬件(CPU 和硬盘)。详情请见 这里
链接:
FreeBSD Ports 无法获取的 distfile 调查(Bill Fenner 的报告) portscout
联系人:Erwin Lansing <erwin@FreeBSD.org>
联系人:Mark Linimon <linimon@FreeBSD.org>
在此期间,大量的 Port PR 被提交,使我们首次低于 800 个,这是自 5.5/6.1 发布周期以来的首次。这得益于许多新提交者的大量工作。
这尤其值得注意,因为我们正在以快速增长的速度增加新 Port。我们现在已经有 15,000 余个这尤其值得注意,因为我们正在以快速增长的速度增加新 Port。我们现在已经超过了 15,000 个 Port!!
基础设施方面已经添加了三组更改,包括 MySQL、PHP、LDAP 和 linux_base 的默认版本更新,以及许多 bug 修复和改进。大约 2 打 Port 管理 PR 已因此关闭。
此外,做出了一个具有重大影响的提交,试图让我们采用一个尽可能未修改的 libtool,与 stock
libtool 保持一致。计划还包括对 autotools 做同样的处理。
几个人正在实施模块化的 xorg Port。大部分工作已经完成,但仍有几个关键部分待完成。完成后,将需要进行实验性回归测试(很可能不止一个 :-))。在此之前,我们可能需要进行一次回归测试,将 X11BASE 移回 LOCALBASE。这个问题仍在研究中。
Gábor Kévesdén 启动了个谷歌编程之夏项目,针对 Ports 基础设施的急需改进(详见本报告其他部分)。由于这是一个长期项目,gtetlow 慷慨地将最重要的 Ports 基础设施文件导入了 Perforce,以便于开发。其他开发者也被鼓励使用 Perforce 进行 Port 开发,尤其是它可以帮助保持补丁在 GNATS 中不会过时。尽管 linimon 一直在积极推动在测试集群上运行实验构建,但清理积压工作还需要一些时间。
Erwin 在 FreeBSD 网站的项目和志愿者创意列表中增加了一个 Ports 部分。如果你想参与 Ports 系统的工作,可以查看。请不要犹豫,提交额外的创意,提交者也鼓励自己加入技术联系人。
sem 接手了之前被忽视的 portupgrade
,并在升级和 bug 修复方面非常活跃。
dougb 继续增强他的 portmaste
r 脚本,并且人们在使用它时取得了成功;尽管它不是设计成功能最全的工具,像 portupgrade 那样,但它似乎更容易理解和使用。
shaun 为 Ports 贡献了 portscout
,这是一个用于扫描更新 distfiles 的工具。
marcus 升级了 GNOME 到 2.14.1。
此外,还发布了 Port tinderbox 代码的新版本。
edwin 一直在为 Port PR 的自动分配器做大量工作,这节省了大量时间,且得到了好评。它现在已安装在 freebsd.org 机器(hub)上。
linimon 在处理维护者超时问题上更加积极,已经重置了许多不活跃的维护者,更多的重置正在进行中。其目的是减少那些在两周内没有回复的 PR。几乎所有的重置都是因为没有回应;仅仅是“忙碌”的维护者并不是这些问题的主要原因,他们值得得到理解。有些已被重置的维护者几个月甚至几年没有贡献过代码。
自上次报告以来,我们新增了 10 名提交者。
待办事项
我们需要帮助将 PR 数量恢复到现代低点,即 500 个 PR。
我们有 4,000 多个无人维护的 Port (例如,请查看 portsmon 上的列表)。我们始终在寻找致力于至少接管几个 Port 的志愿者。
我们随时欢迎帮助进行基础设施改进。请查看 项目和创意列表 中的 Ports 部分。
链接:
联系人:Boris Samorodov <bsam@FreeBSD.org>
联系人:Alexander Leidinger <netchild@FreeBSD.org>
联系人:Emulation 邮件列表 <emulation@FreeBSD.org>
我们更新了默认的 linux 基础 Port,使用了 Fedora Core 4,并将默认的 linux X11 库 Port 更新为 FC4 中的 X.org RPM。
更新到 FC5 或 FC6 需要等到内核支持更新版本的 linux 内核的系统调用。请参阅相应的 SoC 项目报告以获取更多信息。
链接:http://wiki.freebsd.org/moin.cgi/BSDInstaller
联系人:Andrew Turner <soc-andrew@FreeBSD.org>
自上次状态报告以来,除后台部分外,BSDInstaller 的所有部分都已创建了 Port。
在本季度发布了 BSDInstaller 的一个快照,显示了安装过程中存在一些错误。大部分错误现在已经修复。
联系人:Scott Ullrich <sullrich@gmail.com>
pfSense 正在迅速接近发布。我们现在只剩下少数几个 bugs,预计将在接下来的几周内修复。我们预计将在 7 月 21 日至 7 月 28 日的第二届年度 hackathon 期间发布新版本。pfSense 内部正在进行许多令人兴奋的子项目,且每月都在吸引新的开发者加入。
待办事项
http://cvstrac.pfsense.com/rptview?rn=6 列出了剩余的开放 bug。
链接:
http://www.gateworks.com/avila_gw2348_4.htm
联系人:Sam Leffler <sam@errno.com>
在 Netgate 的 Jim Thompson 的帮助下,FreeBSD 基金会为有兴趣支持 ARM 的开发者安排了购买基于 xscale 的开发板。开发者能够以较低的成本购买这些板。目标是加速/改进 ARM 平台的支持,并至少设定一个板作为 ARM 支持的参考平台。Netgate 将在年内开始以更低成本提供板模型(特殊订单板只有 2 个 mini-pci 插槽)。
链接:
联系人:Dan Langille <dan@langille.org>
BSDCan 2006 继续给人留下深刻印象。今年,我们再次邀请了来自广泛领域的优秀演讲者。共有来自 14 个不同国家的 200 多人参加了此次活动。
我们的赞助商池继续增长。今年,我们获得了以下赞助:
纪念 T 恤 非常受欢迎,所有的 T 恤都在极短时间内售罄。当然,感谢 PARSE 的赞助,今年的 T 恤是免费的。2007 年的筹备工作已经开始,我们期待着另一个受欢迎且成功的活动。
感谢 2006 年的程序委员会、演讲者、志愿者、赞助商以及所有参与者。
我们 2007 年 BSDCan 再见。
链接:
联系人:Massimiliano Stucchi <stucchi@eurobsdcon.org>
今年的 EuroBSDCon 将于 11 月 10 日至 12 日在意大利米兰举行。
此次会议将在意大利北部多雾的地区举办,第五届 EuroBSDCon 旨在成为欧洲 BSD 系列会议的新成功篇章。
EuroBSDCon 是来自欧洲的 BSD 开发者,以及来自世界各地的用户和爱好者的最大聚会。它也是一个分享经验、技术和文化的机会。
首次,主办方还将为配偶/女朋友/朋友组织一个活动。活动内容包括米兰市区的导览游、可能的科莫之行和访问各种博物馆。我们还在努力争取为参与者提供一场在斯卡拉歌剧院的演出。
FreeBSD 开发者峰会也将在 11 月 10 日举行。
待办事项
现已发布征稿通知,欢迎大家提交可能对社区有帮助的论文或教程。
会议组织者也在寻找赞助商。欢迎通过
oc@eurobsdcon.org
联系我们,了解不同的赞助机会。
链接:
http://www.freebsd.org/security/
http://www.freebsd.org/administration.html#t-secteam
联系人:安全官员 <security-officer@FreeBSD.org>
联系人:安全团队 <security-team@FreeBSD.org>
自上次状态报告以来,已发布四个关于 FreeBSD 基本系统问题的安全公告;其中一个问题是“第三方”代码,另外三个问题出现在 FreeBSD 维护的代码中。安全团队和 Ports 提交者继续更新《漏洞与暴露标记语言》(VuXML)文档,记录 FreeBSD Ports 中的新漏洞;自上次报告以来,已新增 71 项条目,总数达到 757 项。
FreeBSD 安全团队支持以下版本:FreeBSD 4.11、FreeBSD 5.3、FreeBSD 5.4、FreeBSD 5.5、FreeBSD 6.0 和 FreeBSD 6.1。受支持版本的生命周期结束日期已列出在网站上;特别需要注意的是,FreeBSD 5.3 和 FreeBSD 5.4 将于 2006 年 10 月底停止支持,而 FreeBSD 6.0 将于 2006 年 11 月底停止支持。
链接:
http://www.freebsd.org/releng/
http://www.freebsd.org/releases/
http://www.freebsd.org/snapshots/
联系人:发布工程团队 <re@FreeBSD.org>
发布工程(RE)团队宣布于 2006 年 5 月发布了 FreeBSD 5.5 和 6.1。FreeBSD 5.5 是 CVS 中 RELENG_5 分支的最后一次计划发布。它的主要特性大多是错误修复、安全补丁和小范围的更新。我们鼓励用户在实际可行的情况下尽早迁移到 6.x 系列版本。FreeBSD 6.1 是来自 RELENG_6 分支的最新版本。它包括(但不限于)对 WiFi 设备的改进支持、额外的网络和磁盘控制器驱动程序,以及许多针对文件系统稳定性的修复。从此分支发布的下一个版本将是 FreeBSD 6.2,计划于 2006 年 9 月发布。
RE 团队目前处于“版本之间”模式。当前的活动包括与 security-team@ 一起处理 RELENG_6_1 分支的一些勘误修复,并在每个月初生成 HEAD 和 RELENG_6 的快照。
近期发生了几项人员变动。Scott Long 已经辞去了发布工程团队的职务;我们感谢他过去四年的巨大贡献。Ken Smith 接替了他的职位,成为发布工程负责人。Bruce A. Mah 在休假两年后重新加入了发布工程团队。
最后更新于
这有帮助吗?