在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux查看資源使用情況和性能調(diào)優(yōu)常用的命令

Q4MP_gh_c472c21 ? 來源:嵌入式ARM ? 作者:嵌入式ARM ? 2020-11-12 17:54 ? 次閱讀

目錄

前言

top命令

htop命令

ps命令

free命令

vmstat命令

iosat命令

netstat命令

df命令

du命令

前言

一般來說,Linux性能調(diào)優(yōu)涉及CPU、內(nèi)存和 IO,包括進(jìn)程、線程、程序堆棧、內(nèi)存、Swap、CPU調(diào)度、內(nèi)存調(diào)度、網(wǎng)絡(luò)連接和IO讀寫等。

本文介紹了Linux查看資源使用情況和性能調(diào)優(yōu)常用的命令,包括top、htop、ps、free、vmstat、iostat、netstat、df和du命令。

top命令

top命令用來監(jiān)控系統(tǒng)的資源使用情況,包括CPU、內(nèi)存、Swap、進(jìn)程和線程等。

命令:

#運(yùn)行top top #顯示進(jìn)程的完整命令 top-c

推薦使用下面的htop命令來代替top命令。

htop命令

htop命令用來監(jiān)控系統(tǒng)的資源使用情況,包括CPU、內(nèi)存、Swap、進(jìn)程和線程等。相比top命令,htop命令更能更強(qiáng)大,顯示也更加直觀。

命令:

#運(yùn)行htop htop

概要信息說明:

CPU使用率:數(shù)字1、2、...表示CPU有幾個(gè)核,后面的進(jìn)度條用不同顏色來表示不同維度的CPU使用率,最后是CPU使用率;

內(nèi)存使用率:Mem后面的進(jìn)度條用不同顏色來表示不同維度的內(nèi)存使用率(綠色:used,藍(lán)色:buffers,橙色:cache),最后是內(nèi)存使用率(used / total);

Swap使用率:Swap后面的進(jìn)度條顯示已用的Swap,最后是Swap使用率(used / total),如果系統(tǒng)關(guān)閉了Swap,則進(jìn)度條為空,Swap使用率為0K/0K;

進(jìn)程和線程統(tǒng)計(jì):Tasks:進(jìn)程數(shù),thr:線程數(shù),running:正在運(yùn)行的進(jìn)程數(shù);

系統(tǒng)平均負(fù)載統(tǒng)計(jì):Load average:前1分鐘平均負(fù)載、前5分鐘平均負(fù)載和前15分鐘平均負(fù)載;負(fù)載越低說明CPU越空閑,負(fù)載越高說明CPU越忙:

負(fù)載低于0.7 * CPU核數(shù):CPU使用率正常;(道路通暢)

負(fù)載高于0.7 * CPU核數(shù):CPU使用率較高,需要關(guān)注;(道路堵車,需要交警到場(chǎng)疏導(dǎo)交通)

負(fù)載高于1 * CPU核數(shù):CPU使用率過高,需要關(guān)注;(道路嚴(yán)重堵車,可能發(fā)生了交通事故,需要交警馬上到現(xiàn)場(chǎng)處理)

負(fù)載高于5 * CPU核數(shù):系統(tǒng)超負(fù)荷運(yùn)轉(zhuǎn),無法正常響應(yīng);(交通癱瘓,可能道路已經(jīng)被水淹無法通行,需要投入搶險(xiǎn)力量恢復(fù)交通)

系統(tǒng)已連續(xù)運(yùn)行時(shí)間:Uptime后面為系統(tǒng)從上次啟動(dòng)后,已連續(xù)運(yùn)行時(shí)間,可以倒推系統(tǒng)上次啟動(dòng)時(shí)間;

詳細(xì)信息說明:

PID:進(jìn)程ID;

USER:進(jìn)程所有者;

PRI:進(jìn)程優(yōu)先級(jí);

NI:nice值,負(fù)值表示高優(yōu)先級(jí),正值表示低優(yōu)先級(jí);

VIRT:進(jìn)程使用的虛擬內(nèi)存(virtual memory);

RES:進(jìn)程使用的物理內(nèi)存(physical memory);

SHR:進(jìn)程使用的共享內(nèi)存(shared memory);

S:進(jìn)程狀態(tài),R(Running)正在運(yùn)行的進(jìn)程、S(Sleeping)休眠的進(jìn)程、T/S(Traced/Stopped) 已停止或中止的進(jìn)程 或 Z(Zommbie)僵尸進(jìn)程;

CPU%:進(jìn)程使用的CPU時(shí)間百分比;

MEM%:進(jìn)程使用的內(nèi)存百分比;

TIME+:進(jìn)程已連續(xù)運(yùn)行時(shí)間;

Command:進(jìn)程的執(zhí)行命令;

常用快捷鍵:

上下箭頭:上下滾動(dòng)查看進(jìn)程;

u:顯示指定用戶的進(jìn)程;

P:按照進(jìn)程使用的CPU時(shí)間百分比排序;

M:按照進(jìn)程使用的內(nèi)存百分比排序;

T:按照進(jìn)程已連續(xù)運(yùn)行時(shí)間排序;

參考:

https://linuxtogether.org/htop-command-explanation/

https://www.softprayog.in/tutorials/htop-command-in-linux

https://scoutapm.com/blog/understanding-load-averages

htop官網(wǎng)

ps命令

#查看java進(jìn)程 #e(every)所有進(jìn)程 #f(fullformat)完整輸出格式 ps-ef|grepnginx #不顯示grep本身 ps-ef|grepnginx|grep-vgrep #獲取指定進(jìn)程的PID ps-ef|grepjava|grepjenkins|grep-vgrep|awk'{print$2}' #根據(jù)進(jìn)程的PID中止進(jìn)程 ps-ef|grepjava|grepjenkins|grep-vgrep|awk'{print$2}'|xargskill-9 #查看進(jìn)程堆棧 #p(path)顯示完整路徑 pmap-p #查看9091端口是哪個(gè)容器進(jìn)程 dockerps|grep9091

ps -ef格式:

UID:進(jìn)程的UID(用戶)

PID:進(jìn)程ID

PPID:父進(jìn)程ID

C:CPU使用時(shí)間百分比

STIME

TTY

TIME

CMD:啟動(dòng)進(jìn)程的命令

free命令

free命令用來查看內(nèi)存和Swap的使用情況。

命令:

#以適合閱讀的形式輸出(h:human) free-h #以MB格式輸出(m:MB) free-m #合計(jì)Mem和Swap(t:total) free-h-t #統(tǒng)計(jì)3次,每秒1次(c:count) free-h-c3 #統(tǒng)計(jì)5次,每2秒統(tǒng)計(jì)1次(s:second) free-h-t-c5-s2

說明:

Total: The amount of RAM installed in your system.

Used: Equal toTotal-(Free+Buffers+Cache).

Free: The amount of memory completely unused by anything.

Shared: Memory taken by thetmpfsfile systems.

Buffer: The data structures that are maintained to provide an index for everything stored inCache.

Cache: Data read from the hard drive, modified data waiting to be written back to the hard drive, and other computed values.

Available: What’s really free. An estimate of the memory inFree,Buffer, andCachethat could be used to satisfy a memory request.

簡單來說,total是系統(tǒng)總內(nèi)存,used就是系統(tǒng)已用內(nèi)存,total - used 就是系統(tǒng)可用內(nèi)存。

參考:

https://www.howtogeek.com/456943/how-to-use-the-free-command-on-linux/

vmstat命令

vmstat命令用來統(tǒng)計(jì)進(jìn)程、內(nèi)存、Swap、IO和CPU等信息。

命令:

#運(yùn)行vmstat vmstat #每5秒統(tǒng)計(jì)1次 vmstat5 #每5秒統(tǒng)計(jì)1次,共統(tǒng)計(jì)4次 vmstat54 #以MB格式輸出內(nèi)存使用情況 vmstat54-SM #顯示統(tǒng)計(jì)概要信息 vmstat-s

說明:

Proc

r: The number of runnable processes. These are processes that have been launched and are either running or are waiting for their next time-sliced burst of CPU cycles.

b: The number of processes in uninterruptible sleep. The process isn’t sleeping, it is performing a blocking system call, and it cannot be interrupted until it has completed its current action. Typically the process is a device driver waiting for some resource to come free. Any queued interrupts for that process are handled when the process resumes its usual activity.

Memory

swpd: the amount of virtual memory used. In other words, how much memory has been swapped out.,

free: the amount of idle (currently unused) memory.

buff: the amount of memory used as buffers.

cache: the amount of memory used as cache.

Swap

si: Amount of virtual memory swappedinfrom swap space.

so: Amount of virtual memory swappedoutto swap space.

IO

bi: Blocks received from a block device. The number of data blocks used to swap virtual memory back into RAM.

bo: Blocks sent to a block device. The number of data blocks used to swap virtual memory out of RAM and into swap space.

System

in: The number of interrupts per second, including the clock.

cs: The number of context switches per second. A context switch is when the kernel swaps from system mode processing into user mode processing.

CPU

These values are all percentages of the total CPU time.

us: Time spent running non-kernel code. That is, how much time is spent in user time processing and in nice time processing.

sy: Time spent running kernel code.

id: Time spent idle.

wa: Time spent waiting for input or output.

st: Time stolen from a virtual machine. This is the time a virtual machine has to wait for the hypervisor to finish servicing other virtual machines before it can come back and attend to this virtual machine.

參考:

https://www.howtogeek.com/424334/how-to-use-the-vmstat-command-on-linux/

https://www.tecmint.com/linux-performance-monitoring-with-vmstat-and-iostat-commands/

iosat命令

iostat命令用來統(tǒng)計(jì)磁盤IO和CPU等信息。

命令:

#運(yùn)行iostat iostat #以MB格式輸出 iostat-m #查看指定磁盤(分區(qū)) iostat-m-pvda #每2秒統(tǒng)計(jì)一次,共統(tǒng)計(jì)3次 iostat-m23

說明:

CPU信息:

%user :It shows the percentage of CPU being utilization that while executing at the user level.

%nice :It shows the percentage of CPU utilization that occurred while executing at the user level with a nice priority.

%system :It shows the percentage of CPU utilization that occurred while executing at the system (kernel) level.

%iowait :It shows the percentage of the time that the CPU or CPUs were idle during which the system had an outstanding disk I/O request.

%steal :It shows the percentage of time being spent in involuntary wait by the virtual CPU or CPUs while the hypervisor was servicing by another virtual processor.

%idle :It shows the percentage of time that the CPU or CPUs were idle and the system did not have an outstanding disk I/O request.

磁盤信息:

Device :The device/partition name is listed in/devdirectory.

tps :The number of transfers per second that were issued to the device. Higher tps means the processor is busier.

Blk_read/s :It shows the amount of data read from the device expressed in a number of blocks (kilobytes, megabytes) per second.

Blk_wrtn/s :The amount of data written to the device expressed in a number of blocks (kilobytes, megabytes) per second.

Blk_read :It shows the total number of blocks read.

Blk_wrtn :It shows the total number of blocks written.

參考:

https://www.geeksforgeeks.org/iostat-command-in-linux-with-examples/

https://www.techrepublic.com/article/how-to-use-the-linux-iostat-command-to-check-on-your-storage-subsystem/

netstat命令

netstat命令用來統(tǒng)計(jì)網(wǎng)絡(luò)連接和端口等信息。

命令:

#顯示在偵聽的TCP/UDP網(wǎng)絡(luò)連接,包括程序和端口信息 #u(UDP) #t(TCP) #n(port) #l(listen) #p(program) netstat-utnlp #只顯示在偵聽的TCP網(wǎng)絡(luò)連接,包括程序和端口信息 netstat-tnlp #查看某個(gè)端口被哪個(gè)進(jìn)程使用 #a(all) netstat-anp|grep6379 #查看某個(gè)進(jìn)程在哪個(gè)端口 netstat-anp|grepredis #查看docker啟動(dòng)的進(jìn)程在哪個(gè)端口 dockerps|grepjenkins

df命令

df命令用來統(tǒng)計(jì)磁盤使用情況。

命令:

#查看全部文件系統(tǒng)的磁盤使用情況 df-h #查看指定目錄所在的文件系統(tǒng)的磁盤使用情況 df-h~ #不顯示docker文件系統(tǒng) df-h|grep-vdocker

du命令

du命令用來統(tǒng)計(jì)指定目錄的大小。

命令:

#統(tǒng)計(jì)某個(gè)目錄大小 du-sh~ #統(tǒng)計(jì)目錄下各個(gè)子目錄和文件的大小 du-h~ #統(tǒng)計(jì)目錄下各個(gè)子目錄和文件的大小,并顯示合計(jì)大小 du-ch~ #只統(tǒng)計(jì)下一級(jí)目錄大小 du-h--max-depth1 #只統(tǒng)計(jì)下一級(jí)目錄大小,單位為MB,從大到小排序 du-m--max-depth1|sort-rn #只統(tǒng)計(jì)下一級(jí)目錄大小,單位為MB,從大到小排序,返回最大的10個(gè)文件(目錄) du-m--max-depth1|sort-rn|head-11

責(zé)任編輯:xj

原文標(biāo)題:9個(gè)必須掌握的Linux性能調(diào)優(yōu)命令和工具

文章出處:【微信公眾號(hào):嵌入式ARM】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11351

    瀏覽量

    210498
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    697

    瀏覽量

    22126
  • 性能
    +關(guān)注

    關(guān)注

    0

    文章

    271

    瀏覽量

    19046

原文標(biāo)題:9個(gè)必須掌握的Linux性能調(diào)優(yōu)命令和工具

文章出處:【微信號(hào):gh_c472c2199c88,微信公眾號(hào):嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux實(shí)時(shí)查看日志的四種命令詳解

    如何在Linux中實(shí)時(shí)查看日志文件的內(nèi)容?那么有很多實(shí)用程序可以幫助用戶在文件更改或不斷更新時(shí)輸出文件的內(nèi)容。在Linux中實(shí)時(shí)顯示文件內(nèi)容的常用命令是tail
    的頭像 發(fā)表于 01-13 10:45 ?423次閱讀
    <b class='flag-5'>Linux</b>實(shí)時(shí)<b class='flag-5'>查看</b>日志的四種<b class='flag-5'>命令</b>詳解

    嵌入式開發(fā)必備-RK3562演示Linux常用系統(tǒng)查詢命令

    本文介紹Linux系統(tǒng)查看硬件配置及常用調(diào)試命令,方便開發(fā)者快速了解開發(fā)板硬件信息及進(jìn)行相關(guān)調(diào)試
    的頭像 發(fā)表于 01-06 14:13 ?138次閱讀
    嵌入式開發(fā)必備-RK3562演示<b class='flag-5'>Linux</b><b class='flag-5'>常用</b>系統(tǒng)查詢<b class='flag-5'>命令</b>

    Linux下如何管理虛擬內(nèi)存 使用虛擬內(nèi)存時(shí)的常見問題

    查看虛擬內(nèi)存使用情況 : 使用 free 命令可以查看當(dāng)前的虛擬內(nèi)存使用情況,包括物理內(nèi)存、交換空間等的
    的頭像 發(fā)表于 12-04 09:19 ?635次閱讀

    LMX2592正常使用情況下溫度大概有多少?

    你好,LMX2592如果將 OUTA_PD = 1;OUTB_PD = 1;為什么芯片還是很燙,正常使用情況下溫度大概有多少,對(duì)于溫度的變化可以提供一下參考嗎
    發(fā)表于 11-08 08:32

    Linux常用命令

    實(shí)時(shí)監(jiān)控: tail -f xxx.log htop 監(jiān)控程序進(jìn)程 htop nvidia-smi 顯示內(nèi)存使用情況 實(shí)時(shí)刷新(每隔1秒刷新一
    的頭像 發(fā)表于 11-06 16:04 ?177次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>常用命令</b>

    TMS320C64x在高性能DSP應(yīng)用中的高速緩存使用情況

    電子發(fā)燒友網(wǎng)站提供《TMS320C64x在高性能DSP應(yīng)用中的高速緩存使用情況.pdf》資料免費(fèi)下載
    發(fā)表于 10-21 09:43 ?0次下載
    TMS320C64x在高<b class='flag-5'>性能</b>DSP應(yīng)用中的高速緩存<b class='flag-5'>使用情況</b>

    Linux服務(wù)器性能查看方法

    Linux服務(wù)器性能查看是系統(tǒng)管理員和開發(fā)人員在日常工作中經(jīng)常需要進(jìn)行的任務(wù),以確保系統(tǒng)穩(wěn)定運(yùn)行并優(yōu)化資源使用。以下將詳細(xì)介紹多種Linux
    的頭像 發(fā)表于 09-02 11:15 ?1251次閱讀

    全志Linux磁盤操作基礎(chǔ)命令

    /sdc2 df命令 顯示Linux上文件系統(tǒng)磁盤使用的占用情況。 [ubuntu@book:~]$ df//顯示文件系統(tǒng)的磁盤使用情況。 [ubuntu@book:~]$ df
    發(fā)表于 09-02 10:47

    Banana Pi BPI-M7 RK3588開發(fā)板在 Linux 上檢查 Rockchip NPU 使用情況

    如下介紹如何監(jiān)控 Rockchip 設(shè)備的 NPU 使用情況。 如今,新型設(shè)備開始配備內(nèi)置 AI 芯片。“AI 芯片”的正確技術(shù)術(shù)語是 NPU,即神經(jīng)處理單元。 如果您有板載 NPU
    的頭像 發(fā)表于 07-11 16:47 ?492次閱讀
    Banana Pi BPI-M7 RK3588開發(fā)板在 <b class='flag-5'>Linux</b> 上檢查 Rockchip NPU <b class='flag-5'>使用情況</b>

    如何查看TC397內(nèi)存的使用情況

    Hi,請(qǐng)問,如何查看 TC397 內(nèi)存的使用情況?謝謝!
    發(fā)表于 05-22 07:50

    可以從下面的圖看出我的工程flash和ram的使用情況嗎?

    芯片是:dspf28335;可以從下面的圖看出我的工程flash和ram的使用情況嗎?感覺flash還可以,ram有點(diǎn)不夠用了,請(qǐng)求大師指點(diǎn),如何分析?
    發(fā)表于 05-11 10:11

    鴻蒙開發(fā)實(shí)戰(zhàn):【性能調(diào)優(yōu)組件】

    性能調(diào)優(yōu)組件包含系統(tǒng)和應(yīng)用調(diào)優(yōu)框架,旨在為開發(fā)者提供一套性能
    的頭像 發(fā)表于 03-13 15:12 ?524次閱讀
    鴻蒙開發(fā)實(shí)戰(zhàn):【<b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>組件】

    CUBEIDE運(yùn)行完可以看RAM的使用情況,運(yùn)行中可以實(shí)時(shí)查看RAM的使用情況嗎?

    CUBEIDE運(yùn)行完可以看RAM的使用情況,運(yùn)行中可以實(shí)時(shí)查看RAM的使用情況嗎?以及負(fù)載情況? 圖片是運(yùn)行完可以看RAM使用情況,是否可
    發(fā)表于 03-12 07:56

    rtthread編譯后如何查看堆棧空間使用情況

    rtthread編譯后如何查看堆棧空間使用情況,現(xiàn)在只能在編譯完成后看到總大小,有沒有辦法能看到詳細(xì)的使用情況。 由于RAM只有128K,除去內(nèi)存池32k,想看看剩余的RAM在哪用了
    發(fā)表于 03-05 07:58

    使用rt_thread nano有辦法查看線程的資源用情況嗎?

    使用rt_thread nano ,有辦法查看線程的資源用情況麼?
    發(fā)表于 02-26 06:05
    主站蜘蛛池模板: 久久老色鬼天天综合网观看 | 精品国产麻豆免费人成网站 | 免费在线观看视频网站 | 亚洲福利一区二区三区 | 欧美爽爽爽爽爽爽视频 | 色视频免费观看高清完整 | 琪琪see色原网一区二区 | 色偷偷伊人 | 免费爱爱视频 | 奇米4色| 亚洲国产色图 | 久久综合九色综合网站 | 亚洲伦理一区 | 色www视频永久免费软件 | 国产成人精品日本亚洲语言 | 李老汉的性生生活1全部 | 天天操天天操 | 国产伦精品一区二区三区在线观看 | 99国产国人青青视频在线观看 | 国产骚b | 午夜免费视频观看 | 在线免费看影视网站 | 国内一区二区三区精品视频 | 婷婷激情综合网 | 182tv免费视视频线路一二三 | 最近2018年在线中文字幕高清 | 亚洲韩国日本欧美一区二区三区 | 在线免费观看视频黄 | 妹子干综合网 | 999久久久国产精品 999久久久免费精品国产牛牛 | 一级视频片 | 国产成人精品1024在线 | 欧美午夜大片 | 最近最新视频中文字幕4 | 欧美日韩一区二区视频图片 | 色爱综合区五月小说 | 91福利国产在线观看网站 | 成人小视频在线 | 天天色综合三 | 午夜三级成人三级 | 国产精品高清一区二区三区不卡 |