Skip to content

Commit 30352ec

Browse files
authored
doc: add 0.3.0 release log (#1389)
Signed-off-by: longjin <[email protected]>
1 parent 4b25dcd commit 30352ec

File tree

6 files changed

+92
-2
lines changed

6 files changed

+92
-2
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,11 @@
2121

2222
&emsp;&emsp;DragonOS is rapidly evolving under community-driven development. Currently, DragonOS has implemented approximately 1/4 of Linux interfaces. In the future, we will provide 100% Linux compatibility along with new features.
2323

24+
## 📰 Community News
25+
26+
- **2025-11-20**: 🚀 DragonOS 0.3.0 has been released! Now supports running Go programs directly!
27+
- **2025-11-18**: 📊 DragonOS CI Dashboard is now live! [Check out DragonOS Linux compatibility data now!](https://ci-dashboard.dragonos.org)
28+
2429
## How to Run?
2530

2631
&emsp;&emsp;Running DragonOS is straightforward. You can refer to the following resources to get DragonOS up and running in as little as 15 minutes!

README_CN.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@
2323

2424
&emsp;&emsp;DragonOS目前在社区驱动下正在快速发展中,目前DragonOS已经实现了约1/4的Linux接口,在未来我们将提供对Linux的100%兼容性,并且提供新特性。
2525

26+
## 📰 社区新闻
27+
28+
- **2025-11-20**: 🚀 DragonOS 0.3.0 已发布!可支持go程序直接运行!
29+
- **2025-11-18**: 📊 DragonOS CI Dashboard已上线![立刻查看DragonOS的Linux兼容性数据!](https://ci-dashboard.dragonos.org)
2630

2731
## 如何运行?
2832

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# V.3.0
2+
3+
> 发布日期: 2025-11-20
4+
5+
## 核心亮点
6+
7+
### Linux 兼容性突破
8+
- **已通过 275 个 Linux 兼容性测试用例**,可在 [ci-dashboard.dragonos.org](https://ci-dashboard.dragonos.org) 持续跟踪测试结果
9+
- 引入 gVisor Linux 系统调用自动化测试套件,每次提交/合并都能实时追踪内核行为与 Linux 的兼容性
10+
- 通过多项 gVisor 系统调用测试,内核行为与 Linux 更接近
11+
12+
### 容器原生能力显著增强
13+
- **命名空间支持**:UTS、IPC、mnt 命名空间完善,支持 `unshare` 操作,容器隔离边界与权限模型向 Linux 主线看齐
14+
- **权限与能力**`capset/capget` 系统调用、`sethostname/domainname` 修复,完善容器身份管理
15+
- **文件系统增强**:xattr 六个系统调用、`SYS_PWRITEV``truncate`、路径遍历/目录切换权限检查,保障容器镜像构建和文件挂载的可控性
16+
- **网络子系统重构**:全新的网络子系统实现,提供更好的 Linux 兼容性和可扩展性;桥接网络支持,应对多租户与边缘节点场景
17+
- **运维工具**:Dropbear SSH 服务器支持,使轻量云原生场景可以即装即用
18+
19+
### 多线程稳定性提升
20+
- 线程组退出机制、PI futex、`prctl(PR_SET_PDEATHSIG/PR_SET_NAME)` 等一系列改动,让复杂进程的生命周期控制更接近 Linux 主线
21+
- Go 语言示例程序展示 DragonOS 在多线程场景下的最佳实践
22+
- vfork、CLONE_PARENT_SETTID、signal frame、FP 状态等历史遗留问题彻底修复
23+
24+
### 系统调用全面扩容
25+
新增 10+ 个系统调用接口支持,包括:
26+
- `waitid``rt_sigtimedwait``setitimer/getitimer``clock_nanosleep``tgkill/tkill`
27+
- `SYS_GETCPU``SYS_PWRITEV``truncate`
28+
- xattr 相关六个系统调用、`capset/capget`
29+
- `clone3``get_mempolicy``mincore`
30+
31+
## 版本概览
32+
- **内核特性**:线程组退出、PI futex、PR_SET_PDEATHSIG/PR_SET_NAME、SYS_GETCPU、waitid、rt_sigtimedwait、setitimer/getitimer、clock_nanosleep 等调度/信号链路全面增强
33+
- **内存与同步**:VM_DONTCOPY、mincore、RLIMIT_FSIZE、资源限制框架、异常表用户态访问保护,futex 子系统修复/重构 10+ 项
34+
- **文件系统与命名空间**:引入 `pwritev``truncate`、xattr 六个系统调用、路径权限检查、UTS/mnt/IPC namespace、capset/capget、/proc 改进
35+
- **平台与网络**:x86 kexec+initram、VF2 RISC-V 适配、桥接网络、大规模网络栈重构、Dropbear SSH 服务器、Go 用户态演示与工具链完善
36+
- **工程效率**:CI 容器升级、测试上传与监控、gVisor/FreeBSD bootstrap 支持、Nix-shell 工具链版本锁定
37+
38+
## 详细变更
39+
40+
### 1. 线程与信号:向 Linux 行为对齐
41+
- PRCTL 新选项、备用信号栈拷贝、克隆/等待语义补完,`waitid`/job control、资源限制(rlimit)框架与 RLIMIT_FSIZE 检查 (#1386, #1363, #1362, #1333, #1300, #1312)。
42+
- `setitimer/getitimer``clock_nanosleep``tgkill/tkill` 等定时器/信号路由补齐;fs/gs 用户空间验证、`clone3` + `/proc/cpuinfo``PR_SET_PDEATHSIG` 支持,提升 ABI 兼容性 (#1377, #1307, #1336, #1299).
43+
- 大量信号/线程相关修复:vfork、CLONE_PARENT_SETTID、signal frame、FP 状态、sys_sigaction/sigprocmask、/proc/self/exe 链接等,解决兼容性和稳定性问题 (#1358, #1342, #1357, #1356, #1347, #1359)。
44+
45+
### 2. Futex & 内存:同步栈焕然一新
46+
- PI futex、共享键生成重构、robust futex 竞态修复、wake op 兼容性、参数校验、futex test 启用,形成更完整的 futex 行为矩阵 (#1373, #1376, #1374, #1372, #1371, #1326, #1321, #1320, #1311, #1276, #d5158a0, #e85d1cd).
47+
48+
- **内存管理改进**:VM_DONTCOPY 标志、异常表驱动的安全用户态访问、mincore、madvise/msync 边界修复、匿名共享页同步、伙伴分配器死锁 & 边界检查等内核内存改进 (#1383, #1349, #1334, #1301, #1258, #1345, #1334, #1361, #1280)
49+
- **资源限制**:Rlimit 框架与 RLIMIT_FSIZE、`get_mempolicy``clone3` 集成的 `/proc/cpuinfo`,增强资源观测与限制能力 (#1300, #1312, #1299)
50+
51+
### 3. 容器与命名空间:为云原生而生
52+
- **网络子系统重构**:实现了全新的网络子系统,提供了更好的 Linux 兼容性,以及更好的可扩展性 (#977)
53+
- **文件系统增强**`SYS_PWRITEV``truncate`、路径遍历/目录切换权限检查、`mknodat`/fatfs 死锁修复、`syncfs`/`openat`/`unlinkat`/`lseek` 行为校正,保障文件系统语义一致性 (#1322, #1308, #1348, #1346, #1369, #1355, #1344)
54+
- **命名空间支持**:扩展属性 xattr 六大系统调用、`capset/capget`、UTS namespace、`setdomainname/sethostname` 修复、IPC namespace 首版、mntns `unshare`,完善命名空间与安全隔离 (#1248, #1293, #1268, #1298, #1288, #1262)
55+
- **容器网络与运维**:桥接网络、网络栈重构、Dropbear SSH 服务器支持,使得 DragonOS 离真正运行容器更近一步 (#1287, #1295, #1304)
56+
57+
### 4. 平台与设备:可部署性跃迁
58+
- x86 `kexec` + initram 完成闭环,配合 reboot syscall 完善,为快速切换和自举铺平道路 (#1303, #1157)
59+
- VF2 RISC-V 平台适配,DragonOS 成为国产 RISC-V 场景的可选方案 (#1285)
60+
- SYS_GETCPU 与 SMP syscall table 对齐,让多核调度与性能分析更精准 (#1368, #1367)
61+
- Go 语言示例程序,展示多线程场景下的最佳实践 (#1387)
62+
63+
### 5. 工程效率与社区:省时、省心、可复用
64+
- **CI 与测试**:CI 容器升级至 v1.16,加入测试结果上传、syscall 测试监控、实时 stdout 输出,问题定位速度倍增 (#1380, #1364, #1341, #15964250)
65+
- **自动化测试**:引入 gVisor Linux 系统调用自动化测试套件,每次提交/合并,都能实时追踪内核行为与 Linux 的兼容性 (#1306, #1271, #1371, #1296)
66+
- **开发工具链**:Nix-shell Rust 固定版本、FreeBSD bootstrap 支持,让外部贡献者也能快速复现同一环境 (#40603716, #093388bd)
67+
- **社区与文档**:多轮文档翻译更新、EdgeOne CDN 赞助商信息、README/支持者列表刷新 (#1385, #1317, #1315, #1294, #1292, #1290, #1289, #1281)
68+
69+
## 已知关注点
70+
- futex 子系统近期大量变更,建议重点执行多线程压力与robust list 回归测试。
71+
- 新增 kexec/initram & 网络重构涉及启动链路,若自定义硬件需重新验证启动脚本。
72+
- Namespace/rlimit 相关 syscalls 需更新用户态工具链与测试以覆盖更多边界。
73+
74+
## 贡献者鸣谢
75+
LoGin、kaleidoscope416、linfeng、Shenjie Yang、JingXuan_Wei、aLinChe、黄铭涛、Bruce.carrot93、Samuel Dai、Vitus、Yuming Jiang、火花等 15 位伙伴共同完成了 0.3.0。
76+
77+
## 参考资料
78+
- **Linux 兼容性测试看板**[ci-dashboard.dragonos.org](https://ci-dashboard.dragonos.org)
79+
- **社区仓库**[github.com/DragonOS-Community/DragonOS](https://github.com/DragonOS-Community/DragonOS)
80+

docs/community/ChangeLog/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
.. toctree::
77
:maxdepth: 1
88

9+
V0.3.x/V0.3.0
910
V0.2.x/V0.2.0
1011
V0.1.x/V0.1.10
1112
V0.1.x/V0.1.9

kernel/Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

kernel/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "dragonos_kernel"
3-
version = "0.2.0"
3+
version = "0.3.0"
44
edition = "2021"
55

66
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

0 commit comments

Comments
 (0)