Linux 终端内存使用大比拼:st 能否成为内存占用最少的王者?

Linux终端复用神器:screen与tmux详解与实战对比 在Linux服务器管理中,终端会话常常因SSH断开而意外终止,根源在于内核向进程组发送的SIGHUP信号。无论是压测脚本还是长时间任务,裸跑在SSH窗口中都随时可能前功尽弃。终端复用器(Terminal Multiplexer)正是为解决这类痛点而生:它通过分离会话与终端,让进程在后台持续运行,并支持随时重新接管。screen作为老牌工具,简单可靠,适合轻量级会话保持;tmux则基于client-server架构,提供更强大的分屏、多窗口与脚本化能力。这些工具不仅保障远程任务不中断,还能让开发者在同一屏幕上 阅读详情

Linux 终端使用经历

作者经常使用终端,在大多数机器上会在一到四个桌面上同时打开五到十个终端。作者从 1996 年开始使用 Linux,最初用 `xterm`,1998 年发现 `rxvt` 并使用几年,大约三年前主要用 `lxterminal`,后切换到 `alacritty`,因其在 X11 和 Wayland 环境下都能正常工作。不到一年前发现 `kitty`,它支持在终端中实现照片的像素级完美渲染,作者便把大部分机器换成了 `kitty`。

内存问题引发测试

大约六周前,作者一台配备 i7 处理器、机械硬盘和 16GB 内存的旧机器运行缓慢,交换空间被占满。作者发现 `smem` 可报告进程内存使用情况,结果发现十个 `kitty` 实例耗尽 50GB 交换空间。关闭 `kitty` 实例,用 `xterm` 替代后,交换空间瞬间清空。作者不在意 `xterm` 不美观及缺少标签和菜单等功能,虽怀念透明度但不是大问题。作者保留 `kitty` 是因其支持 `timg`,不过这是相对不常用功能。作者开始把大部分机器换回 `alacritty`,并设计测试:同时运行考虑使用的终端,在 Wayland 和 X11 环境下各运行一组,在每个终端中运行相同命令,最后测量内存使用情况。

Openbox / X11 测试结果

运行命令前:列出各终端(st、xterm、lxterminal 等)的 PID、命令、Swap、USS、PSS、RSS 数据。运行命令后:再次列出各终端相应数据。

KDE / Wayland 测试结果

运行命令前:列出各终端(st、xterm、foot 等)的 PID、命令、Swap、USS、PSS、RSS 数据。运行命令后:再次列出各终端相应数据。

测试结果分析

测试存在一些异常情况,如一台机器未对 `rxvt` 测量,终端大小和滚动缓冲区不同,但因最小内存使用量不到最大内存使用量的十分之一,作者不太担心。结果显示:没想到 `st` 内存使用量比 `xterm` 还低;没想到有比 `kitty` 更占内存的终端;原以为 `gnome - terminal` 内存使用情况和 `konsole` 差不多,实际 `gnome - terminal` 表现出色;环境(Fedora 与 Debian,Wayland 与 X11)影响不大;惊讶 `konsole` 支持 `timg` 像素级完美图像显示,已知支持 `timg` 的还有 `foot`(仅在 Wayland 下测试过)和 `ghostty`(未测试),`foot` 证明可在合理内存使用情况下支持 `timg`。

后续打算

作者打算深入测试 `st`,若其能满足需求,会使用内存占用最少的终端。若 `st` 不适合,会尝试 `gnome - terminal`。

更新情况

2026 年 5 月 8 日发现 `st` 没有滚动缓冲区,作者倾向于在 X11 环境下使用 `lxterminal`,在 Wayland 环境下使用 `foot`。还说明为 X11 编译的终端在 Wayland 下能运行,因有 X11 兼容层,但原生 Wayland 终端(如 `foot`)无法在 X11 下运行。

STM32在Linux下的高效调试技巧:使用ST-Link和GDB实战指南 本文详细介绍了在Linux环境下使用ST-Link和GDB高效调试STM32的实战技巧。内容涵盖工具链配置、GDB服务器启动、断点管理、变量查看及内存操作等核心环节,旨在帮助开发者掌握命令行调试流程,提升嵌入式开发效率与灵活性。 阅读详情

相关推荐

ST官方免费Linux工具链:STM32开发环境全面拥抱命令行

嵌入式开发长期依赖Windows环境,但工具链的底层组件如交叉编译器、GDB、OpenOCD本就源于Linux。随着ST官方将STM32CubeIDE、CubeMX、GCC工具链及固件包免费开放给Linux用户,开发者终于可以在Ubuntu等发行版上原生完成从初始化配置、代码生成到编译烧录、调试的完整流程。命令行模式配合ST-LINK与开源工具,使CI流水线和远程构建成为可能。本文从环境搭建到踩坑排查,梳理了在Linux上构建STM32开发环境的实用路径,并探讨了许可证边界与开源替代方案,帮助嵌入式开发者摆

weixin_34013044的博客 539

ST-Link配合OpenOCD搭建Linux下ARM调试环境

利用ST-Link作为arm仿真器,结合OpenOCD在Linux系统中高效搭建ARM开发调试环境,实现稳定烧录与在线调试,提升嵌入式开发效率。

weixin_42594419的博客 938

服务器CPU与内存占用异常排查:从原理到实战的完整指南

在操作系统资源管理中,CPU使用率和内存占用是衡量系统健康度的核心指标。其原理涉及用户态与内核态的划分、中断处理机制以及现代内存管理中的缓存策略。理解这些机制的技术价值在于能够准确诊断性能瓶颈,优化资源利用率,避免误判导致的运维决策失误。常见的应用场景包括高负载服务器性能调优、虚拟化环境资源监控以及长时间运行系统的稳定性保障。本文聚焦于系统监控显示资源高占用但进程列表统计不符的典型问题,通过剖析内核态CPU消耗、中断处理以及页面缓存等机制,并结合perf、slabtop等工具链,提供了一套从现象定位到根因分

weixin_30315723的博客 368

Linux 终端复用器终极对比:Screen vs Tmux

Linux 终端复用器终极对比:Screen vs Tmux

素质云笔记 1564

STLink驱动安装系统学习:配合ST-Link Utility使用

详解STLink驱动安装步骤,确保与ST-Link Utility无缝配合,提升调试效率,解决常见连接问题,让嵌入式开发更顺畅。

weixin_35592186的博客 767

基于ST7701S/ST7701的嵌入式JPEG图像播放器项目实战

是最佳实践方案。

weixin_35835030的博客 1776

st终端安装全攻略:从零开始在各大Linux发行版上部署

想要寻找一款既美观又高效的Linux终端模拟器吗?st终端(Suckless Terminal)正是您需要的终极解决方案!作为一款轻量级、高性能的终端模拟器,st终端以其简洁的设计和卓越的性能在开发者社区中广受欢迎。本教程将为您提供完整的st终端安装指南,涵盖从依赖安装到配置优化的每一步。 ## 🚀 st终端简介:为什么选择这款终端模拟器? st终端是一款基于X Window System的

gitblog_00367的博客 385

VSCODE 安装LATEX环境,参数配置,常见问题解决

1 准备Texlive安装包 可以从以下网址下载 texlive 的镜像文件: 华为镜像 阿里镜像 官网 网址中大概文件构成 下载完后我们需要的文件构成(我是2020年下载过了,这次就不重新下载了) 将这个镜像文件进行解压 2 安装Texlive 右键install-tl-windows.bat,单击以管理员身份运行,进入安装界面. 点击左下角的“Advanced”进入高级安装来取消你不需要安装的宏包。 点击“Customize”来取消勾选不需要的宏包。 单是把非中英的语言包取消勾选可以省掉 1G

呆呆象呆呆的博客 6万+

Higgsfield Mistral 7B 微调完整教程:在自己的GPU集群上跑通多节点训练

用 **Higgsfield** 做 **Mistral 7B 微调**,你只需要几行标准 PyTorch 代码加一条 CLI 命令。Higgsfield 是一个开源的、容错且高度可扩展的 GPU 编排框架 + 机器学习框架,专为训练十亿到万亿参数的大语言模型(LLM)而生。本教程带你从零开始,在自己的多节点 GPU 集群上跑通 Mistral 7B 的微调训练。 ## 一、为什么选择 Higg

gitblog_00269的博客 418

OneNet平台MQTT连接避坑指南:C语言Token计算实战(附完整代码)

本文详细解析了OneNet平台MQTT连接中的Token计算机制,提供了C语言实现的完整代码和实战指南。通过HMAC算法和Base64编码,开发者可以高效生成安全凭证,避免常见连接问题,适用于物联网设备开发。

weixin_29193359的博客 462

DMA+Timer 生成 PWM 波形错位问题分析与解决

本文深入分析了DMA与Timer协同生成PWM波形时出现的错位问题,揭示了DMA传输启动时机与定时器溢出中断的微妙关系。通过占空比强制清零法和预装载值调校技巧,提供了有效的解决方案,并总结了PWM+DMA配置的最佳实践,帮助开发者避免类似问题。

weixin_29191081的博客 350

linux的CPU占用脚本、内存占用脚本和硬盘IO测试代码

内存占用代码形式。

2401_85112269的博客 972

zabbix监控深信服下一代防火墙配置

深信服下一代防火墙v8.0管理界面,zabbix,SNMP

weixin_43996471的博客 6875

st终端多字体支持终极指南:如何配置JetBrains Mono和Nerd Fonts实现完美开发体验

st终端作为一款轻量级、高性能的终端模拟器,以其简洁的设计和强大的功能受到开发者的喜爱。今天,我们将深入探讨如何为st终端配置JetBrains Mono和Nerd Fonts字体,打造完美的开发环境。通过本指南,您将学会如何充分利用st终端的字体支持功能,提升编码效率和视觉体验。😊 ## 为什么选择st终端? st终端(suckless terminal)以其极简主义设计理念而闻名,它提供

gitblog_00127的博客 763

Python结合海康威视工业相机SDK实现高效图像采集与处理

本文详细介绍了如何使用Python结合海康威视工业相机SDK实现高效的图像采集与处理。内容涵盖从环境搭建、SDK核心模块理解,到完整的图像采集流程拆解,包括设备枚举、参数设置、主动取流以及关键的像素格式转换。同时,文章深入探讨了触发模式、参数控制等高级应用,并提供了性能优化建议和可复用的相机操作类封装,帮助开发者快速构建稳定的机器视觉应用。

weixin_29043895的博客 350

揭秘《出塞》UE5+AIGC高效工作流 | 从创意到成片全流程解析

李季老师(老李头儿)在第四届瑞云大赛斩获季军的作品《出塞》的完整创作流程!

UWA—简单优化,优化简单! 767

linux ps与top 命令下wa,hi,si,st等及 VSZ,RSS,VIRT,RES,等关键字含义详解!

Linux中ps与top命令 这两个命令都是查看系统进程信息的命令,但是用处有点儿不同 一:.ps命令–提供系统过去信息的一次性快照 也就是说ps命令能够查看刚刚系统的进程信息  命令:ps aux或者ps lax [root@Linux ~]# ps aux USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME CO...

qq_41675254的博客 1万+

AI应用架构师进阶:智能控制系统架构的多Agent设计

本文将从“AI应用架构师”的视角,系统讲解智能控制系统中多Agent架构的设计方法。理解多Agent系统的核心特性与在智能控制场景中的优势;掌握多Agent架构的设计流程:从需求分析到角色划分、通信设计、决策实现;通过实战案例(智能家居控制场景),手把手带你落地一个多Agent智能控制系统;探讨进阶话题:动态Agent组织、安全性设计、与大语言模型(LLM)的融合等。在多Agent系统中,Agent(智能体)是具备自主决策能力的最小执行单元。

小程序开发 1086

查看CPU和内存使用情况(Linux系统)

Linux 中查看内存及CPU资源使用情况对排查线上故障非常重要 可以使用 top 命令快速定位

yudian1991的博客 873

SAP Joule for Developers 全景解析:从 ABAP 到 SAP Build 的一体化开发者 AI 能力

SAP Joule for Developers是一套内嵌于SAP开发工具的设计时AI能力,专为提升SAP开发者效率而设计。它支持自然语言生成应用与自动化流程,帮助理解优化代码,并嵌入单元测试和质量保障功能。Joule深度集成ABAP开发环境,同时服务于Java、JavaScript和低代码开发,覆盖CAP数据模型、UI5/Fiori生成、ABAP代码补全与重构等场景。通过斜杠命令和上下文操作,开发者可在不改变现有平台的前提下,显著提升开发效率和质量。典型案例包括快速构建CAP应用和ABAP Cloud迁移

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 498

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

杀死占用的进程 linux,杀死占用某个端口的进程 (Windows, Mac, Linux)

1. Windows启动tomcat时候,控制台报错,发现是端口占用,于是寻找方法关闭对应的程序。从网上找了好久,尝试之后,发现不行。开始自己尝试,终于,成功的将占用端口的进程杀掉。在此记录下过程(以8081端口为例):第一步,根据端口号查找对应的进程号netstat -ano | findstr 80 //列出进程极其占用的端口,且包含 80结果如下:杀死占用某个端口的进程 (Windows, ...

weixin_39930711的博客 747

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

如何在嵌入式 Linux 系统上快速部署 ST-Link 调试工具:完整指南

ST-Link 是 STMicroelectronics 官方提供的强大调试和编程工具,专为 STM32 微控制器设计。本指南将详细介绍在嵌入式 Linux 系统上部署 ST-Link 的完整流程,帮助您快速搭建专业的嵌入式开发环境。🚀 ## 什么是 ST-Link 工具链? ST-Link 工具链包含一系列实用程序,支持 STM32 系列芯片的调试、编程和固件烧录功能。通过简单的命令行工具

gitblog_00396的博客 365

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Linux查看服务器内存、磁盘、cpu、网络占用、端口占用情况

本文详细介绍了Linux服务器资源监控的常用命令和方法,包括内存(free、top)、磁盘(df、du)、CPU(top、vmstat)、网络(ifconfig、nload)和端口(netstat、lsof)监控。文章提供了命令格式、常用选项和输出解读,并推荐了高级监控工具如glances和Prometheus。最后给出优化建议和注意事项,帮助构建完整的服务器监控体系。适合运维人员日常使用,建议根据实际需求组合工具,关键业务可部署专业监控系统。

5946

系统资源占用异常排查:CPU与内存消失之谜与专业工具指南

在计算机系统性能监控中,CPU使用率和内存占用率是衡量系统负载的核心指标。其原理在于操作系统通过内核调度器管理处理器时间片,并通过内存管理器分配物理与虚拟地址空间。准确监控这些资源对于保障系统稳定性和应用性能至关重要,直接影响到服务器响应、应用流畅度及用户体验。在实际的工程实践中,开发者与运维人员常会遇到任务管理器显示资源耗尽,但进程列表却无对应高占用进程的典型矛盾。这通常涉及系统中断(Interrupts)、文件缓存(File Cache)、内核内存池等底层机制,使得资源消耗未直接归属到具体用户进程。针对

weixin_30878501的博客 317

top 命令:CPU使用率、内存使用率、磁盘使用率

top 命令:CPU使用率、内存使用率、磁盘使用率查看

weixin_44146398的博客 1391

top命令参数详解_linux top命令详解

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,默认linux操作系统提供。在命令行中直接敲入top回车,即可实时显示系统中各个进程的资源占用状况。如下图:linux系统top命令分析CPU和内存详解-linux top命令详解其中各参数含义分别如下:第一行top:显示了系统当前时间、系统运行了多长时间、当前登录用户、以及系统在1分钟/5分钟/15分钟内的平均...

weixin_39694838的博客 881
上一篇: 交互模型预览版发布:突破人机协作瓶颈,开启实时交互新时代
下一篇: OpenHuman:功能强大的个人 AI 助手,与其他工具对比优势显著!
IT界那些事儿
博客等级 码龄6年 2万+粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值