Canonical正在对即将发布的Ubuntu 26.10桌面版进行一项重要优化,希望改善系统在内存资源耗尽情况下的稳定性表现。此次调整将重点修改Ubuntu长期使用的内存不足处理策略,让系统在极端内存压力下能够更合理地决定哪些程序应被终止,从而避免桌面环境突然崩溃。
长期以来,当Linux系统出现内存耗尽情况时,内核会启动OOM(Out Of Memory)机制,通过终止部分进程来释放资源,以保证系统继续运行。然而在实际使用中,这种机制有时会产生不理想的结果。一些维持桌面环境正常工作的关键服务,例如GNOME Shell或D-Bus,可能会在高内存压力下被意外终止,而真正占用大量资源的应用程序却继续运行,最终导致整个图形界面变得无法使用,甚至直接退出。
为解决这一问题,Ubuntu开发团队决定调整默认策略。新方案将给予关键桌面服务更高的生存优先级,通过降低其OOM评分,使这些组件在内核选择终止目标时更不容易被列入清理名单。
与此同时,普通应用程序以及后台服务则继续保持较高的默认评分。这意味着当系统内存严重不足时,浏览器、编辑器或其他运行中的应用程序更有可能被优先关闭,而支撑桌面环境运行的核心服务则会得到保护。
Ubuntu还计划禁用systemd-oomd针对整个用户会话的自动终止策略。开发团队指出,systemd-oomd与Linux内核OOM机制采用不同的决策逻辑,它并不会完全遵循相同的优先级体系。因此在某些情况下,即便关键桌面服务已经设置了较高保护等级,systemd-oomd仍可能单纯依据内存压力将其终止,从而导致用户会话异常结束。
Canonical强调,这项调整并不意味着Ubuntu能够彻底避免内存耗尽问题。当系统确实没有足够可用内存时,部分应用程序仍然会被关闭。此次优化的目的并非让系统免疫OOM事件,而是在无法避免资源不足的情况下,尽可能保留一个可操作、可恢复的桌面环境。
开发团队表示,当前调整只是改善桌面稳定性的第一步。未来版本中,Ubuntu还计划进一步细化不同类型服务和应用程序的优先级体系,使系统能够更精准地判断哪些进程属于关键组件,哪些属于可优先释放的资源。
相关改动目前已经被纳入Ubuntu 26.10开发版本“Stonking Stingray”之中,并预计随正式版一同发布。Canonical同时呼吁开发者和测试用户对新机制进行验证,特别是在低内存设备、高负载运行环境以及大量程序同时运行的场景下,帮助团队收集反馈并继续优化。
随着现代浏览器、开发工具以及人工智能应用对内存需求不断增加,桌面操作系统如何在资源极度紧张时维持稳定运行变得越来越重要。虽然此次调整并不会带来显著的界面变化,但对于经常同时运行大量任务的Linux用户而言,其实际体验改善可能相当明显。
了解更多:
https://discourse.ubuntu.com/t/improving-ubuntu-desktop-stability-under-memory-pressure/87945


