![当低优先级进程导致可用内存较低时,如何让高优先级进程继续运行](https://linux22.com/image/36025/%E5%BD%93%E4%BD%8E%E4%BC%98%E5%85%88%E7%BA%A7%E8%BF%9B%E7%A8%8B%E5%AF%BC%E8%87%B4%E5%8F%AF%E7%94%A8%E5%86%85%E5%AD%98%E8%BE%83%E4%BD%8E%E6%97%B6%EF%BC%8C%E5%A6%82%E4%BD%95%E8%AE%A9%E9%AB%98%E4%BC%98%E5%85%88%E7%BA%A7%E8%BF%9B%E7%A8%8B%E7%BB%A7%E7%BB%AD%E8%BF%90%E8%A1%8C.png)
好吧,我不确定这是否是发布此内容的正确位置。这更像是一个“为什么不”的问题,而不是一个“如何做”的问题(假设它不/不能完成)。
为什么我们不允许将 RAM 划分为 2 个(或更多)块,以用于不同类型的进程?这里的主要动机是接近 100% 使用 RAM,并且当(我假设)RAM 交换到磁盘时会发生冻结。大多数时候,这是由于内存泄漏造成的,可以通过终止并重新启动进程来修复。这可以通过几个命令来完成,但是您必须等到机器“解锁”。如果存在分区 RAM 的概念,您可以设置优先级,例如系统/util + 非系统(允许系统 RAM 溢出)分区。然后,通过“冻结”(应用程序内存泄漏),您可以轻松解决问题。
凭借我对内存架构的了解,您不需要在硬件上进行太多(或任何东西)更改,而是可以在软件中扩展分页/虚拟内存以支持额外的标志和协调管理器。
上述内容显然存在问题,无论是技术上还是不切实际。我只是对为什么不感兴趣。