導航:首頁 > 編程系統 > linux查看線程內存

linux查看線程內存

發布時間:2023-05-30 23:54:09

linux查看線程佔用cpu

top命令是最方便的,想看CPU列的話直接按字母 c 就會以cpu的使用高低來排列。 其實就每一列的第一個字母,如果想按cpu排列就按c ,按內存排列就按m。 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND top [-] [d delay] [q] [c] [s] [S] [i] d 指定每兩次屏幕信息刷新之間的時間間隔。當然用戶可以使用s交互命令來改變之。 q 該選項將使top沒有任何延遲的進行刷新。如果調用程序有超級用戶許可權,那麼top將以盡可能高的優先順序運行。 S 指定累計模式。 s 使top命令在安全模式中運行。這將去除交互命令所帶來的潛在危險。 i 使top不顯示任何閑置或者僵死進程。 c 顯示整個命令行而不只是顯示命令名但是無法顯示每個線程的 cpu 利用率情況, 這時就可能出現這種情況,總的 cpu 利用率中 user 或 system 很高,但是用進程的 cpu 佔用率進行排序時,沒有進程的 user 或 system 與之對應。 可以用下面的命令將 cpu 佔用率高的線程找出來: 這個命令首先指定參數'H',顯示線程相關的信息,格式輸出中包含:user,pid,ppid,tid,time,%cpu,cmd,然後再用%cpu欄位進行排序。這樣就可以找到佔用處理器的線程了。

② 問題一、在linux系統中,如何查看apache某一時刻運行線程數(命令)和 內存的使用情況;

你所說的 必須要有一個腳本監控apache 和mysql進程 定期輪詢 並把結果輸出到文件中才能查看任一時刻的線程數和內存使用情況

ps ax | grep httpd -c
ps ax | grep mysqld -c

③ Linux內存使用情況查看命令

linux內存使用情況查看命令查看內存:free
www.dnjsb.com
total
used
free
shared
buffers
cachedMem:
8126976
7609376
517600
0
447392
1268632-/+
buffers/cache:
5893352
2233624Swap:
2928636
572388
2356248top查看進程,shift+f可以設置排序順序,如果按照RES排序,可以保證清晰的查看到系統佔用內存較大的線程。
www.dnjsb.com
ps:查看進程情況,
一般使用ps
-ef,
ps
-aux-A
:所有的
process
均顯示出來,與
-e
具有同樣的效用;-a
:不與
terminal
有關的所有
process
;-u
:有效使用者
(effective
user)
相關的
process
;x
:通常與
a
這個參數一起使用,可列出較完整信息。輸出格式規劃:l
:較長、較詳細的將該
PID
的的信息列出;j
:工作的格式
(jobs
format)-f
:做一個更為完整的輸出。紅色為父進程idguest
12032
11991
0
21:32
pts/0
00:00:00
grep
httpdadmin
14969
26047
0
09:21
?
00:00:01
/usr/alibaba/httpd/bin/httpd
-d
/home/admin/run/deployadmin
20417
26047
0
09:36
?
00:00:01
/usr/alibaba/httpd/bin/httpd
-d
/home/admin/run/deployroot
26047
1
0
Nov19
?
00:00:00
/usr/alibaba/httpd/bin/httpd
-d
/home/admin/run/deploy通過pstree
-p
26047,
可以看到所有的子進程的線程!查看swap使用情況:#!/bin/bashPID=${1:-[1-9]*}total_swap=0GetSwap
()
{
pid=$1
cmdline=$(cat
/proc/$pid/cmdline
2>/dev/null|tr
''
'
')
pid_swap=$(awk
'BEGIN{total=0}/Swap/{total+=$2}END{print
total}'
/proc/$pid/smaps
2>/dev/null)
if
[
$pid_swap
!=
''
]
&&
[
$pid_swap
-gt
0
];
then
echo
PID=$pid

Swap
used:
$pid_swap
Kb

($cmdline)
fi}cd
/procfor
pid
in
$PID;
do
GetSwap
$pid
let
total_swap+=$pid_swapdoneecho
Total
swap:
$total_swap
Kb

④ 在linux 下怎麼查看伺服器的cpu和內存的硬體信息

以Linux centos 7伺服器為例,查看伺服器的cpu和內存的硬體信息方法如下:

1、滑鼠右鍵點擊桌面,選擇「打開終端」,如下圖所示。


⑤ 使用Linux該怎麼查看進程線程

linux怎麼查看進程線程?我們一起來了解一下吧。
1、打開linux系統,在linux的桌面的空白處右擊。
2、在彈出的下拉選項里,點擊打開終端。
3、使用命令ps-T-p+進程ID可以查看指定線程。
4、使用top-H命令可以查看所有線程。

⑥ linux 怎麼查看一個進程的所有線程

1、top -H
手冊中說:-H : Threads toggle
加上這個選項啟動top,top一行顯示一個線程。否則,它一行顯示一個進程版。
2、ps xH
手冊中說:H Show threads as if they were processes
這樣可以查權看所有存在的線程。
3、ps -mp <PID>
手冊中說:m Show threads after processes
這樣可以查看一個進程起的線程數。
更多詳盡的解釋還可以man ps,man top。

⑦ linux查看什麼線程佔用內存

:14;m
7: 4
4;cpuinfo |grep "cpuinfo |grep "cache;etc/.982
5.3:45 UTC 2014 x86_64 x86_64 x86_64 GNU/.20,核心數)
[root@MysqlCluster01 ~]# cat /、當前操作系統內核信息
[root@MysqlCluster01 ~]# uname -a
Linux MysqlCluster01 2;|uniq
cpu cores : 1761 6102
Swap;issue
CentOS release 6、查看物理CPU的個數
[root@MysqlCluster01 ~]# cat /proc/、查看邏輯CPU的個數
[root@MysqlCluster01 ~]# cat /.el6;cpuinfo |grep ".4 (Final)
Kernel \proc/.32-431;physical id"、查看CPU的主頻
[root@MysqlCluster01 ~]# cat /proc/.6;cpuinfo |grep MHz|uniq
cpu MHz : 7863 2738 5125 0 141 835
-/、內存使用情況
[root@MysqlCluster01 ~]# free -m
total used free shared buffers cached
Mem;|sort |uniq|wc -l
1
2.x86_64 #1 SMP Thu Jun 19 21、查看CPU是幾核(即;proc/、當前操作系統發行版信息
[root@MysqlCluster01 ~]# cat /cores"|wc -l
4
3: 2499;Linux
6;r on an \+ buffers/processor"

⑧ Linux最大線程數限制及當前線程數查詢

查看系統允許的最大線程數:

Linux無法直接控制單個進程可擁有的線程數,但有參考公式max = VM/stack_size,默認stack為8k,可通過降低stack大小或增加虛擬內存來調大每個進程可擁有的最大線程數;
對於支持多線程的程序如Java,有可能會遇到一個進程無法創建更多線程的情形,其原因多種多樣,而OS端可能由此參數造成.

查看系統允許的最大進程數:

ulimit -a 顯示當前所有的資源限制

root用戶下執行 ulimit -a 然後查看 max user processes 這個值通常是系統最大線程數的一半:/proc/sys/kernel/threads-max/2

普通用戶下 ulimit -u 出現的max user processes的值 默認是 /etc/security/limits.d/20-nproc.conf(centos6 是90-nproc.conf) 文件中的

普通用戶默認是1024

打開/etc/security/limits.conf (部分的系統是在/etc/security/limits.d/90-nproc.conf)

設置限制數量,第一列表示用戶,* 表示所有用戶

soft nproc :單個用戶可用的最大進程數量(超過會警告);
hard nproc:單個用戶可用的最大進程數量(超過會報錯);
soft nofile :可打開的文件描述符的最大數(超過會警告);
hard nofile :可打開的文件描述符的最大數(超過會報錯);

重啟後生效
reboot

查詢當前某程序的線程數
pstree -p 進程號 | wc -l
管道符號"|"左邊命令的輸出作為右邊命令的輸入

直接修改/etc/security/limits.conf 文件中的 * soft nproc 65535 值後,普通用戶最大進程數無法達到65535 ,因為用戶的max user processes的值,最後是受全局的kernel.pid_max的值限制。也就是說kernel.pid_max=1024 ,那麼你用戶的max user processes的值是127426 ,用戶能打開的最大進程數還是1024。

永久修改系統最高進程數的方法
在/etc/sysctl.conf中添加kernel.pid_max = 65535
vim /etc/sysctl.conf
kernel.pid_max = 65535
或者:
echo "kernel.pid_max = 65535" >> /etc/sysctl.conf
然後重啟機器。

臨時修改的方法:
echo 65535 > /proc/sys/kernel/pid_max
所以以上都操作完成後,才算是正確修改了max user processes 的值

閱讀全文

與linux查看線程內存相關的資料

熱點內容
win10刪除c盤文件會刪掉系統嗎 瀏覽:785
qq的獨立密碼怎麼取消 瀏覽:289
後台的商品數據在哪裡看 瀏覽:795
不用網路載入的單機游戲有哪些 瀏覽:608
數據線插頭怎麼接頭 瀏覽:577
網路載入視頻失敗是怎麼回事 瀏覽:805
傳奇賬號在哪個文件夾里 瀏覽:346
百度app在哪裡安裝 瀏覽:587
如何設置路由器網路不斷網 瀏覽:471
傳到qq群里的文件怎麼刪除 瀏覽:861
索尼安卓71更新日誌 瀏覽:234
怎麼找手機里的垃圾app 瀏覽:540
2015藍橋杯代碼填空 瀏覽:698
安卓資料庫dbexecSQL 瀏覽:227
doc重命名文件格式 瀏覽:728
getscreen截圖工具下載 瀏覽:719
共識數據是什麼時候開始的 瀏覽:96
數碼管顯示電壓程序 瀏覽:479
資料庫文件有哪個 瀏覽:543
途強儲存在哪個文件夾 瀏覽:172

友情鏈接