Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
unix是否对停止的进程进行分页?_Unix_Signals - Fatal编程技术网

unix是否对停止的进程进行分页?

unix是否对停止的进程进行分页?,unix,signals,Unix,Signals,如果我在默认情况下发送一个进程SIGSTOP,进程将停止时钟周期,但是它似乎不会从实际内存中卸载自己。这种行为是否因实现的不同而不同,或者是否有一种方法可以强制某个进程分页?我使用BSD Unix(Mac OS)。虽然我不能具体谈论Mac OS,但通常基于Unix的操作系统不会在SIGSTOP上立即翻页。这有几个原因: 分页需要I/O带宽;不必要地使用I/O带宽实际上可能会降低计算机的速度 进程通常不会停止很长时间;尤其是在调试时!因为所有操作系统都知道,在它完成分页之前,您将恢复它 没有必要强

如果我在默认情况下发送一个进程SIGSTOP,进程将停止时钟周期,但是它似乎不会从实际内存中卸载自己。这种行为是否因实现的不同而不同,或者是否有一种方法可以强制某个进程分页?我使用BSD Unix(Mac OS)。

虽然我不能具体谈论Mac OS,但通常基于Unix的操作系统不会在SIGSTOP上立即翻页。这有几个原因:

  • 分页需要I/O带宽;不必要地使用I/O带宽实际上可能会降低计算机的速度
  • 进程通常不会停止很长时间;尤其是在调试时!因为所有操作系统都知道,在它完成分页之前,您将恢复它
  • 没有必要强制翻页。随着时间的推移,如果确实存在内存压力,未使用的数据最终将被调出

  • 哪个unix?现在有很多这样的操作系统…你为什么要这么做?除非绝对必要,否则没有操作系统会进行交换。它的速度很慢,而且会让系统陷入困境。一些进程可能会保持匿名状态,在后台占用CPU,耗尽笔记本电脑的电池。因为它们不需要执行任何操作,所以最好完全关闭它们。现在我很困惑,这是关于CPU还是内存?因为如果是关于CPU,那么你已经有了解决方案。