标签: #systems
关于 GPU、LLM、MLOps、Kubernetes 以及心态的文章 · 13 篇
在浏览器中模拟系统 — WASM 实现了什么,又还卡在哪里
2026 年 7 月底登上 Hacker News 的 ccsim,把 gVisor 用户态 TCP 协议栈的两份完整实现编译成 WebAssembly,整套跑在浏览器的 worker 里。v86 把 x86 CPU 实时编译(JIT)成 WASM 来启动 Windows 98,WebVM 则在 CheerpX 之上运行未经修改的 Debian。本文梳理这些浏览器模拟器共有的模式与限制:没有原始套接字这一事实如何把设计分成两条路线,Sh
2026-07-31 · 22 分钟阅读 #webassembly#wasm#simulation#browser#systemsFerrocene 通过认证的 core — 编译器是 ASIL D,库为什么却止步于 ASIL B
"Ferrocene 的 Rust 编译器已通过 ASIL D 认证"这句话本身没错,但人们通常从中得出的结论并不成立。Ferrocene 把编译器作为 ISO 26262 ASIL D / TCL 3 的"工具"通过了资格认定,这意味着"可以在使用这个工具的前提下开发 ASIL D 软件",而不是"产出物就是 ASIL D"。真正被你的代码每一行都调用的 core 库,走的是另一套独立认证:2025 年 12 月先以 IEC 6150
2026-07-16 · 37 分钟阅读 #embedded#rust#ferrocene#safety#systemsWASI 0.3 的原生 async — wasi:io 消失的原因,以及还没做完的事
2026 年 6 月 11 日,WASI 子工作组批准了 WASI 0.3.0。核心变化是 async 下沉到了组件模型的规范 ABI 里,结果 wasi:io 包整个消失了。这件事重要,不是因为性能,而是因为可组合性 — 在 WASI 0.2 里,每个组件都各自带着自己的事件循环,一旦用上 async,就无法再和其他组件组合(三明治问题)。6 月 22 日,Wasmtime 46 默认打开了 WASI 0.3,运行时这一侧算是真正到位
2026-07-16 · 28 分钟阅读 #webassembly#wasm#wasi#component-model#systems支付系统入门:流程·PSP·卡组织·结算
从工程师的视角,拆解「按下支付按钮的瞬间,究竟发生了什么」。授权、扣款、结算三者的区别,商户、PSP/网关、收单机构、卡组织、发卡行这五个参与方,一路讲到 3-D Secure、拒付(chargeback)、对账(reconciliation)、幂等性、PCI-DSS。这是在设计一个牵动资金流动的系统之前,必须先弄清楚的地图。
2026-07-03 · 22 分钟阅读 #payments#fintech#systems并发 vs 并行 — "应对"与"真正同时做"的区别
Rob Pike 著名的区分 — 并发是"应对"多件事,并行是"同时做"多件事。本文梳理线程与事件循环、竞态条件与数据竞争、互斥锁与死锁、哲学家就餐问题、原子操作,以及 async(I/O)何时占优、线程(CPU)何时占优。
2026-07-03 · 19 分钟阅读 #concurrency#systems#fundamentalsRust 所有权、借用与生命周期完全指南
Rust 在没有垃圾回收器的情况下保证内存安全的三个核心概念 — 所有权、借用、生命周期,从头到尾讲清楚。移动(move)语义、借用检查器的 &mut XOR & 规则、生命周期为什么必需、如何读懂 E0382、E0502 这类典型错误,以及 Copy 与 Clone 的区别,全部以代码示例为中心梳理。
2026-07-03 · 21 分钟阅读 #rust#ownership#systemsRust 智能指针:Box、Rc、Arc、RefCell 与内部可变性
Rust 仅凭所有权规则难以表达的情形,智能指针能够解开。把值放到堆上的 Box、共享所有权的 Rc 与线程安全的 Arc、把编译期借用规则移到运行期的 RefCell 与 Mutex 的内部可变性、Deref 强制转换,以及用 Weak 切断 Rc 造成的循环引用泄漏的方法——全部通过示例来掌握。
2026-06-30 · 17 分钟阅读 #rust#memory#systems限流算法全面解析:固定窗口、滑动窗口、令牌桶与漏桶
从固定窗口、滑动窗口日志与计数器,到令牌桶、漏桶,逐一对比几种具有代表性的限流算法。梳理各算法如何处理突发流量、如何用 Redis 在分布式环境中实现,以及 429 与 Retry-After、客户端的退避礼仪。
2026-06-25 · 17 分钟阅读 #systems#api#reliability栈 vs 堆:内存的真相
栈和堆不只是"内存的两个区域"。用帧和 LIFO 运转的快速、固定的栈,由 malloc 和 GC 支配的动态的堆,连接两者的指针与引用,栈溢出与 OOM,值语义与引用语义,递归深度,以及所有权、GC、手动管理——本文从底层出发,剖析程序究竟如何使用内存。
2026-06-24 · 25 分钟阅读 #systems#memory#fundamentals缓存失效全解析
"计算机科学中有两件难事:缓存失效和命名。"本文梳理缓存为何如此之难、TTL·write-through·write-behind·cache-aside 等策略、缓存踩踏(dogpile)问题及其缓解手段(锁·抖动·stale-while-revalidate)、基于事件与版本键的失效方式,以及从 CPU 到浏览器贯穿始终的缓存层级。
2026-06-19 · 24 分钟阅读 #performance#caching#systemsMechanical Sympathy(机械同感):写硬件喜欢的代码
同样时间复杂度的代码,实际运行速度却能相差数十倍,原因就藏在硬件里。CPU 缓存(L1/L2/L3)与缓存行、数组和链表的数据局部性、分支预测、伪共享、内存层级的延迟数字,以及为什么数组结构体(SoA)如此重要 — 本文带你进入写硬件喜欢的代码的机械同感(mechanical sympathy)世界。
2026-06-18 · 25 分钟阅读 #performance#systems#cpu内容寻址存储:同一个想法,无处不在
用内容的哈希而非位置来为数据寻址——这一个想法,同样流淌在 Git 对象、Docker 层、IPFS、Nix store 与 BitTorrent 之中。本文从实务角度梳理这一发想如何免费带来去重、完整性与缓存,为何不可变性会随之而来,以及默克尔树与 DAG 如何将其扩展到今天的基础设施。
2026-06-10 · 20 分钟阅读 #systems#storage#hashing浏览器之外的 WebAssembly
WebAssembly 诞生于浏览器,但它真正的野心在浏览器之外。类 POSIX 系统接口 WASI、边缘与无服务器(Fastly、Cloudflare Workers)、Envoy·Figma·数据库的插件系统,一直到组件模型。本文从实务角度梳理近原生速度、沙箱、可移植性这三种性质,为何让 WASM 成为一种通用运行时。
2026-06-09 · 20 分钟阅读 #webassembly#wasm#systems