当给出进程的终止命令时,如何处理分配的内存

How is allocated memory handled when kill command for a process is given?

本文关键字:何处理 处理 分配 内存 进程 终止 命令      更新时间:2023-10-16

假设我正在运行我的应用程序。在此期间,在我的代码中为各种对象分配了内存。现在,我在unix终端上为进程执行一个kill命令。在这种情况下,所有的内存释放过程是如何进行的?这是否完全由操作系统通过为进程释放整个内存来处理?

通常,在进程终止时,通过操作系统(见3.3.2操作系统概念作者:Abraham Silberschatz、Peter B.Galvin、Greg Gagnehttp://www.amazon.com/Operating-System-Concepts-Abraham-Silberschatz/dp/0470128720)

kill命令不是"kill"进程,而是向它发送信号。如果信号是SIGKILL(kill-9PID),你什么都做不了。进程被无条件地扼杀。如果信号是SIGTERM(默认值),您可以提供或忽略它。请参阅:http://en.wikipedia.org/wiki/Unix_signal