Fuchsia RFC

Fuchsia RFC 流程旨在提供一致且透明的途径,以便做出项目级技术决策。例如,RFC 流程可用于改进项目路线图和系统架构。

RFC 流程会随时间推移而不断演变,您可以点击此处查看详细的当前形式。下文也对此进行了总结。

流程摘要

  • 查看何时使用此流程
  • 在社交媒体上分享您的提案。
  • 使用此模板起草 RFC,并与利益相关方分享。请参阅创建 RFCRFC 最佳实践
  • 当有关您提案的讨论趋于一致,利益相关方表示支持后,请发送电子邮件至 eng-council@fuchsia.dev,要求工程委员会将您的提案移至最后通告阶段。
  • 在至少 7 天的等待期过后,工程委员会会接受或拒绝您的提案,或者要求您与利益相关方进一步迭代。

如需了解详情,请遵循 RFC 流程

流程摘要(幻灯片)

新闻资讯全掌握

您可以配置 Gerrit 通知,以便在有新的 RFC 上传时向您发送电子邮件。

添加 docs/contribute/governance/rfcs 搜索表达式,然后选择更改,即可针对每个新的 RFC 提案接收电子邮件通知。

演示上述内容的 Gerrit 设置屏幕截图

提案

有效的 RFC

Gerrit 链接

已完成的 RFC

RFC 区域




已接受

RFC 标题 领域 Gerrit 更改

RFC-0001

Fuchsia 请求意见稿 (RFC) 流程

  • 治理

RFC-0002

Fuchsia 平台版本控制

  • 常规

RFC-0003

Fuchsia 日志记录指南

  • 常规

RFC-0004

字节单位

  • 治理

RFC-0006

Zircon RFC 流程附录

  • 治理

RFC-0007

Zircon 移除了线程终止功能

  • 内核

RFC-0008

移除了 zx_clock_get 和 zx_clock_adjust

  • 内核

RFC-0009

边缘触发的 async_wait

  • 内核

RFC-0010

对 zx_channel_write 和 zx_channel_call 的 zx_channel_iovec_t 支持

  • 内核

RFC-0011

zx_object_get_info ZX_INFO_KMEM_STATS_EXTENDED

  • 内核

RFC-0012

Zircon 可丢弃内存

  • 内核

RFC-0013

克隆 VMO 映射

  • 内核

RFC-0014

放宽 zx_fifo_create 限制

  • 内核

RFC-0015

适用于 Fuchsia 的兼容性测试 (CTF)

  • 治理
  • 测试

RFC-0016

启动时页面大小

  • 内核

RFC-0017

FTP 流程已弃用,RFC 流程万岁!

  • FIDL
  • 治理

RFC-0018

FTP 流程:一个温和的提案

  • FIDL
  • 治理

RFC-0019

使用 evolution = uint64;

  • FIDL

RFC-0020

接口序数哈希

  • FIDL

RFC-0021

为方法添加和移除添加了软过渡

  • FIDL

RFC-0022

说明:结构体成员的默认值

  • FIDL

RFC-0023

协议的组合模型

  • FIDL

RFC-0024

必需的源代码兼容性

  • FIDL

RFC-0025

位标志

  • FIDL

RFC-0027

用多少、付多少

  • FIDL

RFC-0028

处理权限

  • FIDL

RFC-0029

增加方法序数

  • FIDL

RFC-0030

FIDL 采用小端字节序

  • FIDL

RFC-0033

处理未知字段和严格性

  • FIDL

RFC-0037

事务消息头 v3

  • FIDL

RFC-0040

标识符唯一性

  • FIDL

RFC-0041

支持统一服务和设备

  • FIDL

RFC-0043

文档注释格式

  • FIDL

RFC-0047

表格

  • FIDL

RFC-0048

显式联合基数

  • FIDL

RFC-0049

FIDL 调整流程演变

  • FIDL

RFC-0050

FIDL 语法改进

  • FIDL

RFC-0052

类型别名和新类型

  • FIDL

RFC-0053

墓志铭

  • FIDL

RFC-0054

参数属性

  • FIDL

RFC-0055

文档注释

  • FIDL

RFC-0056

空结构体

  • FIDL

RFC-0057

默认不使用任何句柄

  • FIDL

RFC-0058

引入已废弃的属性

  • FIDL

RFC-0059

向量、字符串和数组计数字段中的预留位

  • FIDL

RFC-0060

错误处理

  • FIDL

RFC-0061

可扩展的联合

  • FIDL

RFC-0066

程序员建议的露骨内容默认设置

  • FIDL

RFC-0067

对 Fuchsia RFC 流程的补充

  • 治理

RFC-0068

页面驱逐提示

  • 内核

RFC-0069

ELF Runner 中的标准 I/O

  • 组件框架

RFC-0070

PCI 协议更改以支持旧版中断

  • 内核

RFC-0071

OTA 后备

  • 系统

RFC-0072

独立映像汇编工具

  • 构建

RFC-0074

公开进程启动时间

  • 内核

RFC-0075

废弃了用于配置设备的基于 Zedboot 的铺路功能

  • 常规

RFC-0076

FIDL API 摘要

  • FIDL

RFC-0077

zx_clock_update 准确性改进

  • 内核

RFC-0078

Fuchsia 模糊测试的内核沙盒覆盖率

  • 内核

RFC-0079

检测调试日志数据丢失

  • 内核
  • 诊断

RFC-0080

检测 VMO 不可变性

  • 内核

RFC-0081

fastboot boot

  • 常规

RFC-0082

在 Fuchsia 上运行未修改的 Linux 程序

  • 外部 ABI 兼容性

RFC-0083

FIDL 版本控制

  • FIDL

RFC-0084

向 zx_info_task_runtime_t 添加了更多指标

  • 内核

RFC-0085

缩减 zx_status_t 空间

  • 内核
  • 系统

RFC-0086

更新了 RFC-0050:FIDL 属性语法

  • FIDL

RFC-0087

更新了 RFC-0050:FIDL 方法参数语法

  • FIDL

RFC-0089

核心王国变体

  • 组件框架

RFC-0090

驱动程序共享库许可名单

  • 内核

RFC-0091

zx_system_get_event ZX_SYSTEM_EVENT_IMMINENT_OUT_OF_MEMORY

  • 内核

RFC-0092

会话

  • 会话

RFC-0093

组件清单的设计原则

  • 组件框架

RFC-0094

Carnelian Virtcon

  • 常规

RFC-0095

构建和组装工作站外部树

  • 常规

RFC-0096

用户输入架构

  • HCI

RFC-0097

FIDL 工具链

  • FIDL

RFC-0098

组件框架 RFC 标准

  • 组件框架
  • 治理

RFC-0099

引入了 `zx_socket_set_disposition`

  • 内核

RFC-0100

商品元数据

  • 开发者

RFC-0101

带有编号手柄的动态组件

  • 组件框架

RFC-0102

禁止将 CHILD_NO_WRITE 与 CHILD_RESIZABLE 搭配使用

  • 内核

RFC-0103

软件交付 RFC 标准

  • 软件交付
  • 治理

RFC-0104

相对组件网址

  • 组件框架

RFC-0105

正则表达式库

  • 常规

RFC-0106

Fuchsia SDK 中包含的组件清单

  • 组件框架

RFC-0107

动态优惠

  • 组件框架

RFC-0108

组件 binder 协议

  • 组件框架

RFC-0109

快速 UDP 套接字

  • Netstack

RFC-0110

重新启动以终止关键组件

  • 组件框架

RFC-0111

初始 Fuchsia 硬件平台规范

  • 治理

RFC-0112

x86 上的 ACPI 支持

  • 设备

RFC-0113

高效信封

  • FIDL

RFC-0114

在 FIDL 封装容器中内嵌小值

  • FIDL

RFC-0115

build 类型

  • 系统

RFC-0117

组件模糊测试框架

  • 测试

RFC-0118

映像组装时的 SWD 政策

  • 软件交付

RFC-0119

系统绝对路径被视为有害

  • 构建

RFC-0120

独立使用 FIDL 线格格式

  • FIDL

RFC-0121

组件生命周期事件

  • 组件框架

RFC-0122

RFC 利益相关方

  • 治理

RFC-0123

CPU 性能信息系统调用

  • 内核

RFC-0124

分散式产品集成:工件说明和传播

  • 常规

RFC-0125

Fuchsia.dev 上的短链接

  • 开发者

RFC-0126

驱动程序运行时

  • 设备

RFC-0127

结构化配置

  • 组件框架

RFC-0128

引入了 `zx_vcpu_kick`

  • 内核

RFC-0129

Fuchsia 中的 Python 支持

  • 治理

RFC-0130

支持的硬件

  • 治理

RFC-0131

FIDL 线格式设计原则

  • FIDL

RFC-0132

FIDL 表大小限制

  • FIDL

RFC-0133

软件交付目标

  • 软件交付

RFC-0134

软件更新时间依赖项

  • 软件交付

RFC-0135

软件包 ABI 修订版

  • 软件交付

RFC-0136

Fxfs

  • 存储

RFC-0137

在 FIDL 中舍弃未知数据

  • FIDL

RFC-0138

处理未知互动

  • FIDL

RFC-0139

Bazel SDK

  • 常规

RFC-0140

Realm 构建器

  • 组件框架

RFC-0141

CTF 流程

  • 测试

RFC-0142

zx_thread_legacy_yield

  • 内核

RFC-0143

用户空间 Top-Byte-Ignore

  • 内核

RFC-0144

尺寸检查工具

  • 开发者

RFC-0145

提前更新软件包

  • 软件交付

RFC-0146

CML 中的结构化配置架构

  • 组件框架

RFC-0147

查看系统

  • 图形
  • HCI
  • 视图系统

RFC-0148

持续集成 (CI) 指南

  • 开发者
  • 治理

RFC-0149

FIDL 编码验证并非强制性要求

  • FIDL

RFC-0150

停用更新

  • 软件交付

RFC-0151

适用于 CPU 定位的编译器优化标志

  • 工具链

RFC-0152

改进了 OOM 处理行为

  • 驱动程序
  • 内核
  • 电源

RFC-0153

适用于 Fuchsia 的 Ninja 自定义

  • 构建

RFC-0154

子软件包

  • 软件交付

RFC-0155

可选 capability 路由

  • 组件框架

RFC-0156

串流附加模式

  • 内核

RFC-0157

支持 Fxfs 加密和多卷

  • 存储

RFC-0158

结构化配置访问器

  • 组件框架

RFC-0159

只执行内存

  • 内核
  • 工具链

RFC-0160

移除了对 FIDL 结构体默认值的支持

  • FIDL

RFC-0161

Scenic Allocator API

  • 图形

RFC-0162

Flatland API

  • 图形

RFC-0163

测试输出格式

  • 测试

RFC-0164

Test Suite API

  • 测试

RFC-0165

SDK 类别

  • 开发者

RFC-0166

One UI 堆栈

  • 图形
  • HCI
  • 视图系统

RFC-0167

用户空间早期引导中的软件包

  • 组件框架

RFC-0168

通过 InspectSink 公开 Inspect

  • 诊断
  • 组件框架

RFC-0169

SDK 工具兼容性

  • 开发者

RFC-0170

从更新软件包中移除二进制映像

  • 软件交付

RFC-0171

改进了诊断信息路由

  • 诊断
  • 组件框架

RFC-0172

界面 activity 服务

  • HCI
  • 图形

RFC-0173

组件框架 API 中的结构化配置

  • 组件框架

RFC-0174

平面地图中的缩放

  • 图形

RFC-0175

ELF Runner stdio 转发默认设置

  • 组件框架

RFC-0176

禁止在 Fuchsia 源代码树中创建新的 Dart 程序

  • 构建
  • 开发者

RFC-0177

父视图的焦点观察器

  • 视图系统
  • HCI

RFC-0178

每个作业有多个调试异常通道

  • 内核

RFC-0179

基本剪贴板服务

  • HCI

RFC-0180

测试界面堆栈

  • 视图系统

RFC-0181

无锁可丢弃 VMO

  • 内核

RFC-0182

弃用 config-data

  • 组件框架

RFC-0183

SDK 库文档

  • 开发者

RFC-0184

系统网络堆栈的 POSIX 兼容性

  • 外部 ABI 兼容性
  • Netstack

RFC-0185

移除了 `zx_interrupt_bind_vcpu`

  • 虚拟化

RFC-0186

适用于 Fuchsia 的 Bazel

  • 构建

RFC-0187

允许进程中的第一个线程使用 zx_thread_start 启动

  • 内核

RFC-0188

组件 ABI 兼容性

  • 组件框架

RFC-0189

窗口管理

  • 图形
  • HCI
  • 视图系统

RFC-0190

对系统调用的 FIDL 支持

  • FIDL
  • 内核

RFC-0191

将 Fuchsia-on-GCE 作为受支持的系统配置

  • 治理

RFC-0192

Fuchsia 上的设备树

  • 设备

RFC-0193

支持的 C++ 版本

  • 构建
  • 开发者
  • 工具链

RFC-0194

附录:会话

  • 会话

RFC-0195

文本 API 中的位置和范围

  • HCI

RFC-0196

FIDL 大型消息

  • FIDL

RFC-0197

复合体的节点组

  • Driver SDK

RFC-0198

Magma API

  • 图形

RFC-0199

保护子 VMAR

  • 内核

RFC-0200

支持用于硬件测试的 adb 协议和接口

  • 开发者
  • 测试

RFC-0201

回收客户机虚拟机内存

  • 虚拟化

RFC-0202

测试管理器即服务

  • 测试

RFC-0203

引入了 `zx_system_energy_info`

  • 内核
  • 电源

RFC-0204

VMO 引用子项

  • 内核

RFC-0205

Vulkan 加载程序

  • 图形

RFC-0206

弃用存储区

  • 安全
  • 存储

RFC-0207

离线 blob 压缩

  • 软件交付

RFC-0208

使用 SDK 分发软件包

  • 软件交付
  • 测试

RFC-0209

内存优先级配置文件

  • 内核

RFC-0210

虚拟化功能路由

  • 虚拟化

RFC-0211

RISC-V 上的 Fuchsia

  • 构建
  • 设备
  • 驱动程序
  • EngProd/Infra
  • 固件
  • 常规
  • 内核
  • 语言和库
  • 安全
  • 工具链

RFC-0212

软件包集

  • 软件交付

RFC-0213

移除了 devfs FIDL 多路复用

  • 驱动程序

RFC-0214

Fuchsia 流失率政策

  • 常规
  • 治理

RFC-0215

结构化配置父级替换项

  • 组件框架

RFC-0216

Fuchsia 托管代码库指南

  • 开发者
  • 治理
  • 常规

RFC-0217

打开“包裹跟踪”

  • 软件交付

RFC-0218

IOBuffer:用于高效 IO 的对等共享内存对象

  • 内核
  • 系统

RFC-0219

Zircon 页面压缩

  • 内核

RFC-0220

树内产品的未来

  • 常规
  • 软件汇编

RFC-0221

用于外部系统测试的 Python

  • 语言和库
  • 测试

RFC-0222

介绍 Fuchsia Controller

  • 开发者
  • FIDL
  • 测试

RFC-0223

zx_vmo_transfer_data

  • 内核

RFC-0224

用户空间 J-Extension 指针掩码

  • 内核

RFC-0225

Fxblob:在 Fxfs 中存储 blob

  • 存储

RFC-0226

Zircon 页面浏览器回写

  • 内核

RFC-0227

Fuchsia 发布流程

  • 开发者
  • 软件汇编

RFC-0228

FDomain:远程控制 Fuchsia 目标

  • 开发者
  • 测试

RFC-0229

2023 年金融信息披露法案 (FIDL)

  • FIDL

RFC-0230

Fuchsia 中的挂起到空闲状态

  • 电源

RFC-0231

FIDL 版本替换语法

  • FIDL

RFC-0232

适用于多个 API 级别的 FIDL 绑定

  • FIDL

RFC-0234

更新了 RISC-V ABI:RVA22 + V

  • 内核
  • 工具链

RFC-0235

组件字典

  • 组件框架

RFC-0236

VMO 快照修改后的克隆

  • 内核

RFC-0237

使用 ZX_CLOCK_UPDATED 信号传递时钟更新

  • 内核

RFC-0238

VMO 大小

  • 内核

RFC-0239

实践中的平台版本控制

  • 常规
  • 治理

RFC-0240

异步操作是针对对象执行的

  • 内核

RFC-0241

SDK 接口中的显式平台 / 外部分块

  • FIDL

RFC-0242

配置功能

  • 组件框架

RFC-0243

WLAN 漫游

  • WLAN

RFC-0244

引发用户定义的 Zircon 异常

  • 内核

RFC-0245

VMO 预提取

  • 内核

RFC-0246

API 级别为 32 位

  • 常规

RFC-0247

在 Fuchsia 中启用 LTO

  • 构建
  • 工具链

RFC-0248

问题说明

  • 治理

RFC-0249

平台中对 crosvm 的支持

  • 治理

RFC-0250

电源拓扑

  • 电源

RFC-0251

无 root 访问权限

  • 驱动程序

RFC-0252

No Physical VMO CacheOps

  • 内核

RFC-0253

zx_object_get_info ZX_INFO_VMAR_MAPS

  • 内核

RFC-0254

更改写入时复制页面的归因

  • 内核

RFC-0255

系统活动调度器

  • 电源

RFC-0256

用于 Lacewing 测试的 Python 应用捆绑

  • 构建
  • 软件交付
  • 测试
  • 工具链

RFC-0257

storage-host:将上层存储驱动程序拆分为组件

  • 存储

RFC-0258

从 C++17 更新为 C++20

  • 构建
  • 语言和库
  • 工具链

RFC-0259

单调时钟暂停和启动时间轴

  • 系统

RFC-0260

内核启动时间支持

  • 内核

RFC-0261

快速高效的用户空间内核模拟

  • 内核

RFC-0262

展开 KMEM_STATS

  • 内核

RFC-0263

将驱动程序通信迁移到服务

  • Driver SDK

RFC-0264

在 Fuchsia 上运行未修改的 AArch32 Linux 程序

  • 外部 ABI 兼容性
  • 内核
  • 安全
  • 工具链

已拒绝

RFC 标题 领域 Gerrit 更改

RFC-0005

Blobfs 快照

  • 存储

RFC-0026

随时随地发红包

  • FIDL

RFC-0031

类型化墓志铭

  • FIDL

RFC-0032

高效信封

  • FIDL

RFC-0034

以 null 终止字符串

  • FIDL

RFC-0035

自动流程跟踪

  • FIDL

RFC-0036

更新了结构体声明

  • FIDL

RFC-0038

将布局与约束条件分离

  • FIDL

RFC-0039

类型排在第二位

  • FIDL

RFC-0042

非 null 类型

  • FIDL

RFC-0044

可扩展的方法参数

  • FIDL

RFC-0045

大小为零的空结构体

  • FIDL

RFC-0051

更安全的 C++ 结构体

  • FIDL

RFC-0062

方法不可行

  • FIDL

RFC-0063

OrdinalRange

  • FIDL

RFC-0064

Box <Knox>

  • FIDL

RFC-0065

没有可选字符串或矢量

  • FIDL

RFC-0088

RFC-0050 更新:FIDL 位、枚举和约束条件语法

  • FIDL

RFC-0116

对更稀疏的 FIDL 表的线格格式支持

  • FIDL

RFC-0233

默认使用旧版 FIDL

  • FIDL