日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Linux進程管理及作用
無論是 linux 系統(tǒng)管理員還是普通用戶,監(jiān)視系統(tǒng)進程的運行情況并適時終止一些失控的進程,是每天的例行事務(wù)。和 Linux 系統(tǒng)相比,進程管理在 Windows 中更加直觀,它主要是使用"任務(wù)管理器"來進行進程管理的。

公司主營業(yè)務(wù):做網(wǎng)站、成都網(wǎng)站建設(shè)、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出北塔免費做網(wǎng)站回饋大家。

通常,使用"任務(wù)管理器"主要有 3 個目的:

  1. 利用"應(yīng)用程序"和"進程"標(biāo)簽來査看系統(tǒng)中到底運行了哪些程序和進程;
  2. 利用"性能"和"用戶"標(biāo)簽來判斷服務(wù)器的健康狀態(tài);
  3. 在"應(yīng)用程序"和"進程"標(biāo)簽中強制中止任務(wù)和進程;

Linux 中雖然使用命令進行進程管理,但是進程管理的主要目的是一樣的,即查看系統(tǒng)中運行的程序和進程、判斷服務(wù)器的健康狀態(tài)和強制中止不需要的進程。

那么,到底什么是進程呢?它和我們平時所說的“程序”又有什么聯(lián)系呢?

什么是進程和程序

進程是正在執(zhí)行的一個程序或命令,每個進程都是一個運行的實體,都有自己的地址空間,并占用一定的系統(tǒng)資源。程序是人使用計算機語言編寫的可以實現(xiàn)特定目標(biāo)或解決特定問題的代碼集合。

這么講很難理解,那我們換一種說法。程序是人使用計算機語言編寫的,可以實現(xiàn)一定功能,并且可以執(zhí)行的代碼集合。而進程是正在執(zhí)行中的程序。當(dāng)程序被執(zhí)行時,執(zhí)行人的權(quán)限和屬性,以及程序的代碼都會被加載入內(nèi)存,操作系統(tǒng)給這個進程分配一個 ID,稱為 
PID(進程 ID)。

也就是說,在操作系統(tǒng)中,所有可以執(zhí)行的程序與命令都會產(chǎn)生進程。只是有些程序和命令非常簡單,如 ls 命令、touch 命令等,它們在執(zhí)行完后就會結(jié)束,相應(yīng)的進程也就會終結(jié),所以我們很難捕捉到這些進程。但是還有一些程和命令,比如 httpd 進程,啟動之后就會一直駐留在系統(tǒng)當(dāng)中,我們把這樣的進程稱作
常駐內(nèi)存進程。

某些進程會產(chǎn)生一些新的進程,我們把這些進程稱作
子進程,而把這個進程本身稱作
父進程。比如,我們必須正常登錄到 Shell 環(huán)境中才能執(zhí)行系統(tǒng)命令,而 Linux 的標(biāo)準(zhǔn) Shell 是 bash。我們在 bash 當(dāng)中執(zhí)行了 ls 命令,那么 bash 就是父進程,而 ls 命令是在 bash 進程中產(chǎn)生的進程,所以 ls 進程是 bash 進程的子進程。也就是說,
子進程是依賴父進程而產(chǎn)生的,如果父進程不存在,那么子進程也不存在了。

進程管理的作用

在使用 Windows 系統(tǒng)的過程中,使用任務(wù)管理器,很大程度上是為了強制關(guān)閉“未反應(yīng)”的軟件,也就是殺死進程。的確,這是很多使用進程管理工具或進程管理命令的人最常見的使用方法。不過,殺死進程(強制中止進程)只是進程管理工作中最不常用的手段,因為每個進程都有自己正確的結(jié)束方法,而殺死進程是在正常方法已經(jīng)失效的情況下的后備手段。

那么,進程管理到底應(yīng)該是做什么的呢?我以為,進程管理主要有以下 3 個作用。

1) 判斷服務(wù)器的健康狀態(tài)

運維工程師最主要的工作就是保證服務(wù)器安全、穩(wěn)定地運行。理想的狀態(tài)是,在服務(wù)器出現(xiàn)問題,但是還沒有造成服務(wù)器宕機或停止服務(wù)時,就人為干預(yù)解決了問題。

進程管理最主要的工作就是判斷服務(wù)器當(dāng)前運行是否健康,是否需要人為干預(yù)。如果服務(wù)器的 CPU 占用率、內(nèi)存占用率過高,就需要人為介入解決問題了。這又出現(xiàn)了一個問題,我們發(fā)現(xiàn)服務(wù)器的 CPU 或內(nèi)存占用率很高,該如何介入呢?是直接終止高負(fù)載的進程嗎?

當(dāng)然不是,應(yīng)該判斷這個進程是否是正常進程,如果是正常進程,則說明你的服務(wù)器已經(jīng)不能滿足應(yīng)用需求,你需要更好的硬件或搭建集群了;如果是非法進程占用了系統(tǒng)資源,則更不能直接中止進程,而要判斷非法進程的來源、作用和所在位置,從而把它徹底清除。

當(dāng)然,如果服務(wù)器數(shù)量很少,我們完全可以人為通過進程管理命令來進行監(jiān)控與干預(yù),但如果服務(wù)器數(shù)量較多,那么人為手工監(jiān)控就變得非常困難了,這時我們就需要相應(yīng)的監(jiān)控服務(wù),如 cacti 或 nagios??傊?,進程管理工作中最重要的工作就是判斷服務(wù)器的健康狀 態(tài),最理想的狀態(tài)是服務(wù)器宕機之前就解決問題,從而避免服務(wù)器的宕機。

2) 查看系統(tǒng)中所有的進程

我們需要查看看系統(tǒng)中所有正在運行的進程,通過這些進程可以判斷系統(tǒng)中運行了哪些服務(wù)、是否有非法服務(wù)在運行。

3) 殺死進程

這是進程管理中最不常用的手段。當(dāng)需要停止服務(wù)時,會通過正確關(guān)閉命令來停止服務(wù)(如 apache 服務(wù)可以通過 service httpd stop 命令來關(guān)閉)。只有在正確終止進程的手段失效的情況下,才會考慮使用 kill 命令殺死進程。

其實,進程管理和 Windows 中任務(wù)管理器的作用非常類似,不過大家在使用任務(wù)管理器時是為了殺死進程,而不是為了判斷服務(wù)器的健康狀態(tài)。


標(biāo)題名稱:Linux進程管理及作用
轉(zhuǎn)載注明:http://www.5511xx.com/article/ccceohp.html