#memory management
blog.cloudflare.com · ⭐️ 8/10 · 2026-10-21
Cloudflare 博客的一篇文章介绍了 tsrs:一个把 TypeScript 编译移植到 Rust 的项目。据评论者引用的移植文档,它用永不释放的 arena 安放长生命周期对象,以在没有 GC 的 Rust 中模拟 GC;另一名评论者称,项目动机之一是获得能在 WASM-only 沙箱中运行的编译器,避免 tsc 的 Go 版本附带完整 Go 运行时。该评论者还称 Rust 版本快于参考的 tsc/Go 实现。现有材料没有说明 tsrs 的发布状态、与 tsc 的兼容范围或可复现的基准数据,因此这些速度说法仍需核实。
lwn.net · ⭐️ 8/10 · 2026-10-15
Linux 内核创始人 Linus Torvalds 已将他首个借助大语言模型(LLM)编写的补丁系列提交评审,该系列共十个补丁。其做法是在检测到 folio 处于“热”状态时,把它的释放延迟到 RCU 宽限期之后,从而不仅像以往一样在 RCU 保护下完成 folio 查找,还让实际的 folio 数据访问本身也在这段 RCU 区域内进行——当用户态拷贝不触发缺页时,这条快路径无需获取引用计数。按 Torvalds 的说法,这使一个以 read\(\) 为主的基准测试获得约一个数量级的加速;但评审已指出代码中存在竞态条件,因此仍需进一步修改,该系列目前仍处于评审阶段、尚未合并。
aardappel.github.io · ⭐️ 7/10 · 2026-10-25
作者 Aardappel 在 Hacker News 上公布了实验性编程语言 Goose,并给出 GitHub 仓库,讨论集中在其内存模型和并发设计。Goose 采用“线程不共享数据”的模型:worker 被编译成拥有独立内存的独立程序,扁平值通过带类型的队列以 memcpy 传递,语言中不存在数据竞争、锁、原子操作和内存序;它还使用多个数据栈、可调整大小的字段、相对引用和内置二进制结构校验,以支持直接映射文件或网络数据。现有信息只表明这是一个实验性项目,未显示成熟度、采用情况或独立性能测量。
lwn.net · ⭐️ 7/10 · 2026-10-24
在 2026 年 Linux Plumbers Conference 的内存管理微会议上,Will Deacon 讨论了 64 位 Arm 和 x86 上每个线程固定占用 16KB 不可分页内存的内核栈;Android 空闲设备就可能有 5,000 个线程,云端大规模线程也会放大这项开销。用 8KB 栈构建的内核通过了大部分测试,但在内存压力测试中失败,并在涉及直接回收(direct reclaim)的路径上崩溃;4KB 栈则无法启动。会上提到的补丁系列允许通过内核命令行设置栈大小,目前可运行 12KB 栈;另有专用异常栈和把直接回收移到工作线程的方案,目标是为 8KB 铺路。默认配置仍是 16KB,这些属于会上介绍的补丁方向。