我想知道当我试图在没有交换分区或交换文件的运行linux的嵌入式主板上运行新进程时会发生什么。通常对于PC上的linux,它从RAM中换出页面,从而为新进程释放内存。现在,嵌入式主板(以任何开发板为例),在没有交换的情况下运行linux想要在RAM完全满的情况下运行一个新进程,它如何运行一个新进程?
电路板的闪存寿命有限,因此即使我们实现了交换,也不能频繁地交换。
发布于 2012-01-23 16:45:48
OOM Killer会来杀死它认为需要杀死的任何进程。
欲了解更多信息,请访问:http://linux-mm.org/OOM_Killer
发布于 2012-01-23 16:48:37
Android系统试图尽可能长时间地维护应用程序进程,但最终需要删除旧进程,以便为新的或更重要的进程回收内存。为了确定保留和终止哪些进程,系统会根据进程中运行的组件和这些组件的状态将每个进程放入“重要性层次结构”中。当需要恢复系统资源时,首先删除重要性最低的进程,然后删除下一个重要性最低的进程,依此类推。
图片来源:http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html
我想android/linux对你来说也是一样的
https://stackoverflow.com/questions/8968940
复制相似问题