殭屍檔案

殭屍檔案

殭屍檔案 是計算機黑客 為攻擊大型伺服器或大型電腦,而通過以有網路工具或自己製作的工具生成的一個檔案,如果用戶在瀏覽網頁時正在好個網頁里有他們寫入的這個檔案,那么你的電腦就會像中病毒一樣中這個檔案。大多數功能就是可以對指定的遠程電腦進行DDOS一類的操作

基本信息

什麼是殭屍檔案

殭屍進程是指的父進程已經退出,而該進程dead之後沒有進程接受,就成為殭屍進程.(zombie)進程

怎樣產生殭屍進程的

一個進程在調用exit命令結束自己的生命的時候,其實它並沒有真正的被銷毀,而是留下一個稱為殭屍進程(Zombie)的數據結構(系統調用exit,它的作用是使進程退出,但也僅僅限於將一個正常的進程變成一個殭屍進程,並不能將其完全銷毀)。在Linux進程的狀態中,殭屍進程

是非常特殊的一種,它已經放棄了幾乎所有記憶體空間,沒有任何可執行代碼,也不能被調度,僅僅在進程列表中保留一個位置,記載該進程的退

出狀態等信息供其他進程收集,除此之外,殭屍進程不再占有任何記憶體空間。它需要它的父進程來為它收屍,如果他的父進程沒安裝SIGCHLD信

號處理函式調用wait或waitpid()等待子進程結束,又沒有顯式忽略該信號,那么它就一直保持殭屍狀態,如果這時父進程結束了,那么init進程自動

會接手這個子進程,為它收屍,它還是能被清除的。但是如果如果父進程是一個循環,不會結束,那么子進程就會一直保持殭屍狀態,這就是為什麼系統中有時會有很多的殭屍進程。

怎么查看殭屍進程

利用命令ps,可以看到有標記為Z的進程就是殭屍進程。

怎樣來清除殭屍進程

改寫父進程

在子進程死後要為它收屍。具體做法是接管SIGCHLD信號。子進程死後,會傳送SIGCHLD信號給父進程,父進程收到此信號後,執行waitpid()函式為子進程收屍。這是基於這樣的原理:就算父進程沒有調用wait,核心也會向它傳送SIGCHLD訊息,儘管對的默認處理是忽略,如果想回響這個訊息,可以設定一個處理函式。

把父進程殺掉

父進程死後,殭屍進程成為"孤兒進程",過繼給1號進程init,init始終會負責清理殭屍進程.它產生的所有殭屍進程也跟著消失。

相關詞條

相關搜尋

熱門詞條

聯絡我們