Linux终端模拟器内存占用实测:st最轻量,kitty最吃内存

你的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是功能和内存的最佳平衡点。

来源:
Giles Orr: Linux Terminal Memory Usage

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容