日期:2023 年 8 月 24 日
版本:F12
已实施以下变更:
应用运行时(Flutter、Starnix 和 Web)
斯达尼克
对 Starnix 进行了以下更新:
- 将
src/proc
重命名为了src/starnix
。 - 修复了各种
gVisor
和 LTP 测试,以确保它们通过。 - 为
arm64
启用了 gVisor 支持。 - 实现了
RLIMIT
。 - 实现了
sysinfo()
。 - 添加了
arm64
受限模式支持。 - 修复了 binder 和远程 binder 支持。
- 改进了
arm64
的可调试性。 - 为 Starnix 内核使用子软件包。
- 已启用线程内异常处理。
- 初步支持
SECCOMP
和NETLINK
。 - Starnix 对 Fxfs 的初步支持。
组件框架
对组件框架进行了以下更新:
- 从平台中移除了对
appmgr
(CFv1) 的支持。
连接(蓝牙、IoT、WLAN、Netstack)
已对连接性进行了以下更新:
蓝牙
- 修复了使用蓝牙音箱时偶尔媒体播放时间不准确的问题。
- 修复了蓝牙音频在视频通话进行期间连接后继续恢复的问题。
- 对 HFP 的初始带内音频支持。
- 缩短了将 A2DP 流式传输到扬声器时的延迟时间。
Matter
- 修复了在多个设备的情况下识别响应的问题,以防止响应泛洪。
- 已启用 Matter 的检查功能。
- 修复了订阅超时期间 localhome 崩溃的问题。
- 修复了
usonia
领导人选举中出现崩溃的问题。 - 修复了转换超出范围的颜色时发生崩溃的问题。这会影响某些颜色不准确的用户体验。
- 在 Fuchsia mDNS 堆栈中实现了缓存刷新处理。
线程
- 在 Nest 线程控制器中启用了 Thread 遥测。
- 已启用动态日志记录功能。
WLAN
- 在
brcmfmac
驱动程序中启用了 VIM3 支持。 - 防抖
brcmfmac
WLAN 驱动程序恢复。 - 更改了
brcmfmac
以及 netstack 中的线程配置文件。
开发者
我们对开发者工作流程进行了以下更新:
- 利用带有 Bazel 集成的 Fuchsia SDK 支持驱动程序开发。这取决于特定驱动程序所需的接口。
- 支持
ffx
通过 USB 连接到目标设备。 - 改进了使用用户模式网络时的模拟器实例管理。
ffx
和其他工具中的更新:- 已升级实验性功能:
ffx package archive cat
:输出软件包归档中文件的内容。ffx package archive create
:创建软件包归档。ffx package archive extract
:将软件包归档解压缩到目录中。ffx package archive list
:列出软件包归档的内容。ffx package far cat
:输出远程归档文件中文件的内容。ffx package far create
:创建远距离归档文件。ffx package far extract
:将远程归档解压缩到目录中。ffx package far list
:列出远程归档的内容。ffx package file-hash
:计算一个或多个文件的 blob 哈希值。
诊断
对“诊断”功能进行了以下更新:
- 改进了多个 Rust 检查流程的编写性能,使基准测试平均速度加快了 70-80%。
- 改进了 Rust 日志记录编码的性能,从而将基准测试速度提高了 30-60%。
- 实现了可让
ffx log
和fix inspect
直接与 Archivist 通信的新协议,从而显著提升这些工具的性能。在修复此问题之前,这些工具使用诊断桥组件进行通信。 - 改进了组件管理器 CPU 统计信息格式,这使得 Inspect 中的测量字节数减少了约 70%,快照中的字节减少了大约 55%。
- 添加了对为 Fuchsia Logging 跟踪 crate span 的支持。
- 改进了分类错误消息和输出。
- 向
ffx log
的输出添加了丢弃和发布的日志计数。 - 新增了对日志和检查的 CBOR 格式的支持。
- 对齐了
ffx log
和ffx test
的日志格式。 - Archivist 现在会将已配置组件的日志直接转发为串行,而无需先将其发送到控制台组件。
- Fuchsia 上的所有 Rust 代码现在都使用跟踪库进行结构化日志记录。
FIDL
已对 FIDL 进行以下更新:
- 针对 SDK 中包含的 FIDL 添加了 FIDL 注解
@available
的要求。 - 添加了对未知互动关键字的要求。
固件
对固件进行了以下更新:
- 提高了遇到硬件初始化错误时的启动可靠性。
- 开机期间的显示屏亮度降低了 50%。
舰队服务(代管式操作系统和取证)
对舰队服务进行了以下更新:
- 已删除“
LogStats
”。
图形和媒体
对图形和媒体进行了以下更新:
音频
- 添加了虚拟音频驱动程序,以扩大测试覆盖范围。废弃了
audio-driver-ctl
开发者工具,取而代之的是ffx audio
。
显示
- 针对模拟显示堆栈的各种扩展和修复,添加了更多与硬件无关的测试功能。
GPU
- 移除了系统驱动程序 C API,改为使用 C++。Starnix 环境中的图形硬件加速。
视频
- 添加了性能调整,以改进出厂设备上的播放效果。
HCI(输入、A11y、国际化和观看系统)
已对 HCI 进行以下更新:
- 已为智能显示屏启用 Flatland。可提高性能并降低维护费用。
- 进行了各种修复,以提高无障碍功能评分。
内核
已对内核进行以下更新:
- 添加了对
riscv64
的支持。
Rust
已对 Rust 进行以下更新:
- 开始为 Rust 编译器滚动 RISC-V 目标。
软件组装
已对软件组装进行以下更新:
- 缩减了旧版软件包中的内容。
- 添加了在汇编时检查软件包的 ABI 修订版本以确定与平台兼容性的功能。
计时功能
已对计时功能进行了以下更新:
问题:对时间源使用推送通信时,需要高内存和 CPU 资源。
影响:迁移了时间源以拉取通信,从而减少了时钟维护所需的内存和 CPU。
工具链
- Fuchsia 支持
HWASan
。