你的Linux终端吃了多少内存?一位开发者发现他的10个kitty终端实例竟然占用了50GB的swap空间,于是用 smem 工具做了一次系统性的终端内存对比测试。结果很有意思。
测试环境
测试分别在X11(Openbox)和Wayland(KDE)环境下进行,使用 smem 工具测量USS(独占内存)、PSS(按比例分摊内存)、RSS(常驻内存)和Swap占用。
smem 安装:selenic.com/smem
测试结果
以下是X11环境下,终端执行命令后的PSS内存占用排名:
| 终端 | PSS内存 | 特点 |
|---|---|---|
| st | 3,834 KB | 最轻量,但无滚动缓冲 |
| lxterminal | 11,159 KB | 轻量+有滚动缓冲 |
| xterm | 12,266 KB | 经典老牌终端 |
| gnome-terminal | 15,416 KB | 比konsole轻 |
| kitten | 21,983 KB | kitty的辅助进程 |
| alacritty | 49,444 KB | GPU加速终端 |
| konsole | 54,193 KB | KDE默认终端 |
| ptyxis | 71,107 KB | GNOME新终端 |
| kitty | 80,917 KB | 最吃内存 |
关键发现
1. st是最轻量的终端
st(simple terminal) 来自suckless社区,PSS仅3.8MB,比xterm还轻。但st没有滚动缓冲区——你无法向上翻看之前的内容。这是一个功能取舍。
2. kitty是内存大户
kitty的PSS高达80MB,加上它的辅助进程kitten,合计超过100MB。如果你开10个kitty终端,就是1GB的内存。作者的50GB swap占用就是这么来的。
3. gnome-terminal比konsole轻
这有点出乎意料。gnome-terminal(15MB)比konsole(54MB)轻了3倍多。如果你用KDE但在意内存,可以考虑换用gnome-terminal。
4. 环境差异不大
在Fedora vs Debian、Wayland vs X11之间,同一终端的内存占用差异很小。
5. konsole也能显示图片
之前以为只有kitty、foot、ghostty支持像素级图片显示,测试发现 timg 配合konsole也能做到。
选型建议
- 极致轻量:选st,但要接受没有滚动缓冲
- 轻量+实用:选lxterminal(X11)或foot(Wayland)
- 功能丰富:选gnome-terminal(比konsole更省内存)
- GPU加速:选alacritty(内存居中,性能好)
- 图片支持:选foot(Wayland)或kitty(内存换功能)
注意事项
- st没有滚动缓冲,如果需要翻看历史输出,st不适合
- Wayland原生终端(如foot)不能在X11下运行,但X11终端在Wayland下可以(通过X11兼容层)
- 更新(2026-05-08):作者最终选择了lxterminal(X11)和foot(Wayland)作为日常终端
- 内存占用会随使用时间增长,长时间运行的终端建议定期重启
简评
终端模拟器的内存占用差异比想象中大得多——从3.8MB到80MB,差了20倍。如果你在低内存VPS上跑Linux桌面,或者习惯开很多终端窗口,选一个轻量终端能省不少内存。对大多数用户来说,lxterminal和foot是功能和内存的最佳平衡点。
© 版权声明
THE END
















暂无评论内容