小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

 蘇醒的貝殼 2019-01-06

top命令是Linux下常用的性能分析工具,能夠實(shí)時(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況。

一、內(nèi)容介紹

top 命令運(yùn)行圖:

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

1. 第一行——基本信息

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

load average:

load average 表示系統(tǒng)負(fù)載均值,使用 top 或 uptime 可以查看到負(fù)載均值的信息,三個(gè)數(shù)值分表表示 1分鐘內(nèi) 、5分鐘內(nèi) 、 15分鐘內(nèi)的系統(tǒng)負(fù)載均值,要理解這三個(gè)數(shù)值的含義,首先要了解系統(tǒng)的“核數(shù)”

系統(tǒng)的核數(shù) = CPU1 x CPU1的核數(shù) + CPU2 x CPU2的核數(shù) + CPUn x CPUn的核數(shù) + ……

更清楚的講,在Linux系統(tǒng)中輸入命令grep -c 'model name' /proc/cpuinfo,即可得到核數(shù)。

回到負(fù)載均值,負(fù)載均值的飽和值等于系統(tǒng)的核數(shù), 所以,根據(jù)load average觀察系統(tǒng)負(fù)載首先要看系統(tǒng)中共有多少'核',單處理器單核的飽和值為 1,單處理器雙核的飽和值為2,雙處理器單核的飽和值也為2.

理解負(fù)載均值的最經(jīng)典的例子是把一個(gè)CPU的核當(dāng)做一座單行單向橋,多核即為多行路單向橋.如圖:

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

假定,目前系統(tǒng)是單核系統(tǒng),根據(jù)上面的描述,它的負(fù)載飽和值為1.這種條件下,各種數(shù)值的含義如下:

  • 0.00 表示橋上沒(méi)有任何車流,非常暢通
  • 0.50 表示橋上有最高承載量一半的車流,也比較流暢.
  • 1.00 表示橋上已經(jīng)達(dá)到了最大承載量,如果再有車來(lái),可能就要稍等才能上橋了,這種情況下,車速都會(huì)很慢,往往都會(huì)造成負(fù)載均值繼續(xù)上升.
  • 1.70 表示橋已經(jīng)達(dá)到最大負(fù)載,且還有相對(duì)于橋最大負(fù)載70%的車輛等待上橋,這個(gè)時(shí)候的系統(tǒng),已經(jīng)要不堪重負(fù)了.

在實(shí)際應(yīng)用中,重點(diǎn)關(guān)注5分鐘,15分鐘的負(fù)載均值,當(dāng)達(dá)到0.7時(shí),就需要調(diào)查原因了。

2. 任務(wù)信息

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

僵尸進(jìn)程:表示已經(jīng)終止,但仍然保留一些信息的進(jìn)程。其等待父進(jìn)程調(diào)用wait(),就可以從內(nèi)存中完全移除。 將是進(jìn)程無(wú)法使用 kill 清理。如果要手動(dòng)清理僵尸進(jìn)程,需要找到其父進(jìn)程,kill掉父進(jìn)程后,LInux的 init 進(jìn)程將接管該僵尸進(jìn)程(linux中所有的子進(jìn)程都需要有父進(jìn)程,當(dāng)父進(jìn)程被kill后,其所有子進(jìn)程將過(guò)繼給init進(jìn)程),init進(jìn)程隔一段時(shí)間去調(diào)用wait(),來(lái)清除僵尸進(jìn)程。

3. CPU使用情況

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

4. 物理內(nèi)存使用情況

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

buff/cache:

buffers 和 cache 都是內(nèi)存中存放的數(shù)據(jù),不同的是,buffers 存放的是準(zhǔn)備寫(xiě)入磁盤(pán)的數(shù)據(jù),而 cache 存放的是從磁盤(pán)中讀取的數(shù)據(jù)

在Linux系統(tǒng)中,有一個(gè)守護(hù)進(jìn)程(daemon)會(huì)定期把buffers中的數(shù)據(jù)寫(xiě)入的磁盤(pán),也可以使用 sync 命令手動(dòng)把buffers中的數(shù)據(jù)寫(xiě)入磁盤(pán)。使用buffers可以把分散的 I/O 操作集中起來(lái),減少了磁盤(pán)尋道的時(shí)間和磁盤(pán)碎片。

cache是Linux把讀取頻率高的數(shù)據(jù),放到內(nèi)存中,減少I/O。Linux中cache沒(méi)有固定大小,根據(jù)使用情況自動(dòng)增加或刪除。

# 手動(dòng)把buffers寫(xiě)入硬盤(pán)并清空cachesync && echo 3 > /proc/sys/vm/drop_caches

5. 交換區(qū)使用情況

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

Swap(內(nèi)存交換區(qū)):

是硬盤(pán)上的一塊空間。在內(nèi)存不足的情況下,操作系統(tǒng)把內(nèi)存中不用的數(shù)據(jù)存到硬盤(pán)的交換區(qū),騰出內(nèi)存來(lái)讓別的程序運(yùn)行。因此,開(kāi)啟swap會(huì)一定程度的引起 I/O 性能下降(阿里服務(wù)器默認(rèn)不開(kāi))。

6. 進(jìn)程詳細(xì)信息

查看內(nèi)存和CPU的top命令,別看輸出一大堆,理解了其實(shí)很簡(jiǎn)單

二、靈活使用top

1. 命令行式使用

-b:以批處理模式操作 這種方式可以把top輸出的內(nèi)容以可讀的形式寫(xiě)入文件top -b >> top.txt

-c:顯示完整的命令行(COMMAND),想查看進(jìn)程執(zhí)行的具體位置時(shí),非常有用

-d:屏幕刷新間隔時(shí)間 top -d 1:表示每隔一秒刷新一次

-s:使用保密模式

-S:指定累積模式

-i:不顯示任何閑置或者僵死進(jìn)程

-u<用戶名>:指定用戶名

-p<進(jìn)程號(hào)>:指定進(jìn)程

-n<次數(shù)>:指定循環(huán)顯示的次數(shù),到了次數(shù)自己退出。

2. 交互式使用

top命令顯示系統(tǒng)實(shí)時(shí)狀態(tài),支持交互操作。執(zhí)行top命令,顯示系統(tǒng)狀態(tài)界面(同時(shí)也是交互界面),輸入交互命令:

1:查看CPU每個(gè)核的使用情況

h:顯示幫助畫(huà)面,給出一些簡(jiǎn)短的命令總結(jié)說(shuō)明

k:終止一個(gè)進(jìn)程

i:忽略閑置和僵死進(jìn)程,這是一個(gè)開(kāi)關(guān)式命令

q:退出程序

r:重新安排一個(gè)進(jìn)程的優(yōu)先級(jí)別

S:切換到累計(jì)模式

s:改變兩次刷新之間的延遲時(shí)間(單位為s),如果有小數(shù),就換算成ms。輸入0值則系統(tǒng)將不斷刷新,默認(rèn)值是5s

l:切換顯示平均負(fù)載和啟動(dòng)時(shí)間信息

m:切換顯示內(nèi)存信息

t:切換顯示進(jìn)程和CPU狀態(tài)信息

c:切換顯示命令名稱和完整命令行

M:根據(jù)駐留內(nèi)存大小進(jìn)行排序

P:根據(jù)CPU使用百分比大小進(jìn)行排序

T:根據(jù)時(shí)間/累計(jì)時(shí)間進(jìn)行排序

w:將當(dāng)前設(shè)置寫(xiě)入~/.toprc文件中。

原文:https://segmentfault.com/a/1190000009713245

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多