日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

6.Linux中的进程管理

發(fā)布時間:2024/8/1 linux 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 6.Linux中的进程管理 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.進(jìn)程

進(jìn)程的定義

? ? 程序是靜態(tài)的代碼文件;進(jìn)程是指程序運(yùn)行時的形態(tài)
? ? 進(jìn)程是程序的一個副本(copy程序到內(nèi)存,相當(dāng)于副本)
? ? 進(jìn)程是有生命周期的
? ? ? ? 準(zhǔn)備期:準(zhǔn)備資源(類似于執(zhí)行“打掃教室任務(wù)”前,“拿掃把”)
? ? ? ? 運(yùn)行期:執(zhí)行過程
? ? ? ? 終止期:執(zhí)行后程序所占用的系統(tǒng)資源被回收

進(jìn)程和線程

? ? ? ? 進(jìn)程:進(jìn)程是資源調(diào)用的最小單位。所有事件由cpu處理,當(dāng)一個事件cpu,其他事件就無法占用處于,等待用完才可以使用cpu。
? ? ? ? 雙核、三核cpu:為使充分使用cpu,一個事件細(xì)劃分成若干個小的線程,加速cpu同時處理。
? ? ? ? 線程是進(jìn)程的最小單位
????????程序執(zhí)行流是從上到下貫穿運(yùn)行的
????????當(dāng)進(jìn)程是多任務(wù),cpu是多核心時,多任務(wù)應(yīng)該同時被每個核心處理,每個核心處理的任務(wù)叫線程資源。 線程資源是共享的

進(jìn)程狀態(tài)

R(TASK_RUNNING)
????????##可執(zhí)行態(tài):正在被cpu處理,或已經(jīng)加載好等待被cpu處理
S(TASK_INTRRUPTABLE)
????????##可喚醒休眠:使用cpu超時,進(jìn)入休眠,再次使用時需要被激活
D(TASK_UNINTRRUPTABLE)
????????##不可喚醒休眠:使用cpu超時,仍有資源沒有被加載好,不可以使用cpu
T(TASK_STOP)
????????##暫停狀態(tài):關(guān)閉無法使用程序,但可以人為喚醒
Z(EXIT_ZOMBLE)
? ? ? ? ##僵死態(tài):進(jìn)程已經(jīng)結(jié)束,卻占用資源不放,需要手動結(jié)束程序。“bug”

2.進(jìn)程查看命令?

gnome-system-monitor ????????##圖形進(jìn)程查看工具

ps 進(jìn)程查看 ????????ps 命令的三種執(zhí)行風(fēng)格 unix bsd GNU ps a ????????與終端相關(guān)的進(jìn)程(當(dāng)用戶登陸系統(tǒng)后產(chǎn)生的進(jìn)程都是帶終端的) ps x???????? 與終端無關(guān)相關(guān)的進(jìn)程 ps u ????????用戶信息歸類的查看方式

?ps?f? ? ? ? ? 進(jìn)程層級關(guān)系

ps o ????????顯示指定參數(shù) ?pid comm nice pri pcpu ppid stat,user,group

ps
ps -e ????????顯示所有進(jìn)程
ps -f???????? 顯示信息的完整格式
ps -H????????顯示進(jìn)程的層級結(jié)構(gòu)


ps?-o ????????顯示指定參數(shù)

ps?--sort=? ? #排序

正序,從小到大,例:ps axo %cpu --sort=%cpu
倒序,從大到小,例:ps axo %cpu --sort=-%cpu

#ps ax顯示信息如下: #PID 進(jìn)程id #TTY 進(jìn)程用到的終端 #STAT 進(jìn)程狀態(tài) #TIME 進(jìn)程占用cpu時長 #COMMAND 進(jìn)程名稱

#ps aux顯示信息如下: #USER 進(jìn)程所有人 #PID 進(jìn)程id #%CPU 進(jìn)程使用cpu的用量 #%MEM 進(jìn)程所用到的內(nèi)存用量 #VSZ 進(jìn)程使用的虛擬內(nèi)存大小 #RSS 進(jìn)程常駐內(nèi)存中的數(shù)據(jù)大小 #TTY 進(jìn)程用到的終端 #STAT 進(jìn)程狀態(tài) #START 進(jìn)程運(yùn)行時長 #TIME 進(jìn)程占用cpu時長 #COMMAND 進(jìn)程名稱 pgrep #進(jìn)程過濾 #-u uid ??????顯示指定用戶進(jìn)程 #-U user ???顯示指定用戶進(jìn)程 #-t tty ????????顯示指定終端進(jìn)程 #-l? ? ? ? ? ? ? 顯示進(jìn)程名稱 #-a? ? ? ? ? ? ?顯示進(jìn)程的完整名稱 #-P? ? ? ? ? ? ?進(jìn)程的子進(jìn)程 pidof pidof vim ????????##查看vimpid top ????????##動態(tài)進(jìn)程查看 ##top中的內(nèi)容顯示信息 #09:48:51 ????????系統(tǒng)時間 #up 18:54 ????????運(yùn)行時長 #2 users ????????系統(tǒng)中有兩個用戶登陸 #load average: 0.75, 0.53, 0.41 1min 5min 15min #Tasks: #331 total 任務(wù)總量 #3 running 正在運(yùn)行 #329 sleeping 休眠人物數(shù)量 #0 stopped 被暫停數(shù)量 #0 zombie 僵死人物數(shù)量 #%Cpu(s) #1.5 us 用戶空間 #1.9 sy 內(nèi)核空間 #0.0 ni nice值調(diào)整時間 #58.9 id 空閑時間 #0.0 wa 等待io時間 #2.1 hi 處理硬件中斷時間 #0.2 si 處理軟件中斷時間 #0.0 st 被偷走的時間(vm使用時間) #MiB Mem : #7664.6 total, 總量 #5383.9 free 空閑 #1312.1 used 占用 #968.8 buff/cache 緩存 #MiB Swap: 交換分區(qū)用量 #top命令的參數(shù) #-d 指定刷新頻率 #-b 以批次方式顯示 #-n 指定顯示的批次數(shù)量 #top內(nèi)部指令(鍵盤操作) #P ????????cpu排序 #M ????????內(nèi)存排序 #T ????????累計(jì)占用cpu時間排序 #l ????????關(guān)閉/開啟uptime信息 #t ????????關(guān)閉/開啟cpu&task #s ????????指定刷新頻率 #k ????????操作進(jìn)程 (按k,默認(rèn)處理資源占用最多的,輸入pid選擇要關(guān)閉的進(jìn)程,15正常關(guān)閉,9強(qiáng)制關(guān)閉) #u ????????查看指定用戶進(jìn)程 #PID 進(jìn)程id #USER 進(jìn)程所有者的用戶名 #PR 優(yōu)先級 #NI nice負(fù)值表示高優(yōu)先級正值表示低優(yōu)先級 #VIRT 進(jìn)程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES #RES 進(jìn)程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA #SHR 共享內(nèi)存大小,單位kb #S 進(jìn)程狀態(tài)(D=不可中斷的睡眠狀態(tài),R=運(yùn)行,S=睡眠,T=跟蹤/停止,Z=僵尸進(jìn)程) #%CPU 上次更新到現(xiàn)在的CPU時間占用百分比 #%MEM 進(jìn)程使用的物理內(nèi)存百分比 #TIME+ 進(jìn)程使用的CPU時間總計(jì),單位1/100秒 #COMMAND 命令名/命令行

?

3.進(jìn)程優(yōu)先級?

系統(tǒng)時多任務(wù)多用戶的操作模式 任務(wù)的重要性是有區(qū)分的 如何確定任務(wù)的重要性 優(yōu)先級 范圍: 0--139 內(nèi)核自控優(yōu)先級范圍:0-99 用戶可控優(yōu)先級:100-139 nice :-20?-?19 renice -n -5 43331 ##更改優(yōu)先級(普通用戶只能把自己的優(yōu)先級改低) nice -n -5 cat ##指定優(yōu)先級打開進(jìn)程 ps ax -o pid,nice,comm | grep cat ? ps ---- > pri --- 39-0 nice? ?-20?-?19 priority 0-139 (100-139) S???????? #sleeping < ????????#優(yōu)先級高 s???????? #頂級進(jìn)程 T???????? #stop N???????? #優(yōu)先級底 R????????#running + ????????#運(yùn)行在前臺

4.進(jìn)程前后臺調(diào)用

<ctrl>+<z> ????????##把占用shell的進(jìn)程打入后臺掛起 bg? ? ? ? ? ? ? ? ? ? ? ##把后臺掛起的進(jìn)程運(yùn)行起來 fg? ? ? ? ? ? ? ? ? ? ? ?##把后臺進(jìn)程調(diào)回前臺 & ? ? ? ? ? ? ? ? ? ? ??##運(yùn)行進(jìn)程在后臺 jobs????????????????? ##查看當(dāng)前shell中在后臺的所有工作

5.進(jìn)程信息號?

man 7 signal #進(jìn)程信號 1 ????????#重新家在系統(tǒng)配置文件(source) 2 ????????#清空內(nèi)存中的進(jìn)程數(shù)據(jù) 3 ????????#清空內(nèi)存中的鼠標(biāo)(ctrl+\) 9 ????????#強(qiáng)行結(jié)束進(jìn)程不能被阻塞 15???????? #正常關(guān)閉進(jìn)程會被阻塞 18 ????????#運(yùn)行被暫停的進(jìn)程 19 ????????#暫停進(jìn)程不會被阻塞 20 ????????#暫停進(jìn)程會被阻塞的
? #進(jìn)程信號控制工具 kill 進(jìn)程信號 pid killall 進(jìn)程信號 進(jìn)程名字 pkill 進(jìn)程信號 進(jìn)程條件

6.systemd守護(hù)進(jìn)程


? ##實(shí)驗(yàn)環(huán)境
#linux.westos.com -------- > 172.25.254.10 #node1.westos.com ----------> 172.25.254.20 查找ip

#遠(yuǎn)程操作主機(jī) #ssh 遠(yuǎn)程主機(jī)ip -l 遠(yuǎn)程主機(jī)用戶 ?ssh -l root 172.25.254.20 #守護(hù)進(jìn)程 #替內(nèi)核分擔(dān)程序控管的程序 #通常pid1 #systemd -----> systemctl #systemctl 管理系統(tǒng)服務(wù) #服務(wù)指在系統(tǒng)中開啟的共享系統(tǒng)資源到網(wǎng)絡(luò)中的程序 #cs client ------ server #systemctl命令的用法 start???????????????????????????????? ##開啟 stop???????????????????????????????? ##關(guān)閉 status? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##查看狀態(tài) reload? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##重新加載 restart? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##重新啟動服務(wù) enable? ? ? ? ? ? ? ? ? ? ? ? ? ? ?##設(shè)定服務(wù)開機(jī)啟動 enable --now? ? ? ? ? ? ? ? ? ?##設(shè)定服務(wù)開機(jī)啟動,并當(dāng)前開啟服務(wù) disable? ? ? ? ? ? ? ? ? ? ? ? ? ? ##設(shè)定服務(wù)開啟不其動 list-units? ? ? ? ? ? ? ? ? ? ? ? ? ##查看系統(tǒng)所有服務(wù)當(dāng)前狀態(tài) list-unit-files? ? ? ? ? ? ? ? ? ? ##查看服務(wù)開機(jī)狀態(tài) list-dependencies? ? ? ? ? ?##列出服務(wù)依賴性 mask? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##凍結(jié)服務(wù) unmask? ? ? ? ? ? ? ? ? ? ? ? ? ##解鎖 set-default? ? ? ? ? ? ? ? ? ? ? ##設(shè)定系統(tǒng)運(yùn)行模式 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #multi-user.target 無圖形網(wǎng)絡(luò)模式 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #graphical.target 有圖形的網(wǎng)絡(luò)模式 get-default? ? ? ? ? ? ? ? ? ? ?##查看系統(tǒng)運(yùn)行模式

?


? ##系統(tǒng)運(yùn)行模式 ? #0-6 init 0 ????????POWEROFF init 1 ????????single init 2 ????????noG+NETWORK(開機(jī)2,3,4都無圖形) init 3 init 4 init 5 ????????G+NETWORK 開機(jī)有圖形 init 6 ????????REBOOT 重啟

?7.系統(tǒng)中的登陸審計(jì)?

w ##顯示正在登陸系統(tǒng)的賬號 ## -i 顯示登陸來源

?

#/var/run/utmp last ##登陸成功現(xiàn)在已經(jīng)退出的 ##/var/log/wtmp lastb ##試圖登陸但未成功 ##/var/log/btmp

?

總結(jié)

以上是生活随笔為你收集整理的6.Linux中的进程管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。