语言运行时内核
编程语言的”操作系统”——内存管理、垃圾回收、JIT 编译、对象模型。
核心概念
每种编程语言都有一个运行时环境, 它负责:
- 内存管理 — 分配/回收, 垃圾回收策略
- 类型系统 — 运行时类型信息, 虚表, 方法分派
- 执行模型 — 解释器, JIT 编译器, AOT 编译器
- 并发模型 — 线程模型, 事件循环, 协程
- 异常处理 — 栈展开, 异常表, setjmp/longjmp
文件索引
| 文件 | 内容 | C/C++ 关联 |
|---|---|---|
| CRT | C Runtime: _start→main, heap (brk/mmap), 栈帧, 信号, atexit | [[../../ISSUES |
| CPython | PyObject, 引用计数 GC, GIL, 字节码解释器, import 机制 | [[../../ISSUES |
| V8 | Ignition 解释器 → TurboFan JIT, 隐藏类, Orinoco GC, libuv 事件循环 | [[../../ISSUES |
| JVM | 类加载器层次, 解释器→C1→C2 编译, G1GC/ZGC, 对象头布局, JNI | [[../../ISSUES |
| 垃圾回收算法 | mark-sweep, mark-compact, copying, generational, ref counting, concurrent GC | [[../../ISSUES |
| JIT编译原理 | tracing JIT vs method JIT, inline caching, deoptimization, speculative opt, PGO | [[../../ISSUES |
阅读路径
CRT → CPython → 垃圾回收算法 → JVM → V8 → JIT编译原理
- 先理解最简单的 CRT, 建立无运行时的基线
- 然后看引用计数 GC (CPython), 理解最简单的自动内存管理
- 再系统学习所有 GC 算法
- 最后理解 JIT 编译——从解释到优化编译的阶梯
相关模块
- [[|系统内核]] — 操作系统提供的底层支持
- C 与 Rust 的内核新时代 — 系统编程语言的演进