SIGKILL

POSIX兼容的平台上,SIGKILL是傳送給一個進程來導致它立即終止的信號。SIGKILL的符號常量在頭檔案signal.h中定義。因為在不同平台上,信號數字可能變化,因此符號信號名被使用,然而在大量主要的系統上,SIGKILL是信號#9。

基本介紹

  • 中文名:SIGKILL
  • 分類:Unix信號
  • 領域:信息科學
語源,使用,

語源

SIG是信號名的通用前綴。KILL是指讓一個進程立即終止的動作的計算機行話。

使用

當SIGKILL被傳送給一個程式時,它使程式立即終止。與SIGTERM和SIGINT相比,這個信號不能被捕獲或忽略,同時接收這個信號的進程在收到這個信號時不能執行任何清理。
  • 殭屍進程不能被殺死,因為它們已經死亡,只等待它們的父進程回收它們。
  • 處於阻塞狀態的進程不會死亡,直到它們再次醒來。
  • init進程是特殊的:它不獲得它不想處理的信號,因此它可以忽略SIGKILL。
  • 因為SIGKILL不給進程任何在終止時做清理操作的機會,在大部分系統關閉過程中,在採取SIGKILL之前,使用信號SIGTERM使進程終止的嘗試先被作出。
  • 為了加速計算機關閉過程,Mac OS X 10.6,也稱為雪豹,會將SIGKILL傳送給已經標記它們自己為“乾淨”的應用程式,以加快關機速度,同時,很可能地,沒有壞作用。
  • 即使SIGKILL被傳送給它,一個正在不可中斷睡眠的進程也可能不會終止(並且釋放它的資源)。這是少數幾個一個UNIX系統可能需要被重新啟動來解決臨時軟體問題的例子中的一個。

相關詞條

熱門詞條

聯絡我們