进行繁重处理时,操作系统变得不负责任

进行繁重处理时,操作系统变得不负责任

我使用我的机器(HP EliteBook 850 G5) 进行编程。不幸的是,我遇到了一个问题,当我以某种方式搞砸了(例如创建无限循环、进行昂贵的数据库查询等)时,我的整个机器都会冻结。它变得几乎没有反应。当我移动鼠标时,每隔几秒钟就会移动一次。所以它慢得离谱。当这种情况发生时,我尝试转到另一个控制台(Ctrl+Alt+F2),并终止导致冻结的进程。它非常慢,但它有效。

我的问题: 我能否以某种方式为操作系统保留部分机器的处理能力? 事实上,我知道 Playstation 操作系统就是这样做的。无论游戏代码有多糟糕,崩溃的频率有多高(Cyber​​punk),用户界面始终是完全可访问的。我能用我的电脑做到这一点吗?例如,只为操作系统保留一个核心?

uname -a
Linux Michael-PC 5.4.0-66-generic #74~18.04.2-Ubuntu SMP Fri Feb 5 11:17:31 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

对于编程我主要使用:

  • Ruby(Rubymine 作为 IDE)
  • Docker
  • Postgres

谢谢大家的意见!

硬件:

Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz
16 GB RAM
SSD: 256GB Model: SK hynix BC501 HFM256GDJTNG-8310A

@heynnema

free -h
              total      used       free     shared    buff/cache   available
Mem:         15G         10G        421M        2,1G        4,8G        2,9G
Swap:        975M        975M         72K



grep -i swap /etc/fstab
/dev/mapper/ubuntu--vg-swap_1 none            swap    sw              0       0



sysctl vm.swappiness
vm.swappiness = 60

我想你们已经发现了问题所在……交换空间有点小,不是吗?是 RAM 的 1.5 倍?哈哈,我明白了1/16

相关内容