2014IT鐵人賽-19-process 與控管
今天一樣使用 EasyCloud 雲端簡單龍的帳戶, 那就登入 https://gemini.nchc.org.tw/ 來開始練習openSUSE 基礎指令吧.
今天練習process 相關管理練習
筆記部份:
Program: An executable file.
Process: A running program.
User Process: 由使用者啟動的 process.
Daemon Process: 系統預設啟動的 process.
在Linux系統可以利用
#ps 來觀察目前的process 的狀態
每一個process 都有自己的PID(Process ID)
#pstree 來觀察process 的關係
工作控制
指令 & 直接在背景執行
jobs 觀察背景執行或是暫停的工作
bg 把暫停的工作丟到背景執行
fg 把暫停的工作丟到前景執行
Ctrl + Z 暫停前景正在執行的工作
nice 針對還沒有執行的指令指定優先性
renice 針對已經執行的指令指定優先性
程式執行的優先性
給定的範圍為 +19 到 -20 數字越小越優先
只有root 可以給負的NICE值
開始練習吧
Lab: 觀察Parents and Children process
#ps <觀看目前的 Process>
#echo $$ <觀看目前 shell 的 PID>
#bash <再開一個 shell>
#echo $$ <觀看目前 shell 的 PID>
#ps -fH <觀看 PID>
Ctrl + D <登出 shell>
#echo $$
Lab: Monitoring Processes and job control
#cd /home/max
#pstree -p <以樹狀方式觀察 PID>
#ps aux <顯示所有 process>
#xeyes <以前景執行 xeyes >
Ctrl + c <終止 xeyes >
#xeyes & <以背景方式執行 xeyes>
#jobs <列出背景及暫停的工作>
#fg %1 <將工作 1 丟到前景執行>
Ctrl + Z <暫停,丟到 Bg>
#jobs
#bg %1 <將工作丟到背景執行>
#kill -l <列出 kill 的信號>
#jobs -l
#kill -15 程式的 PID
#xeyes &
#jobs -l
#kill -19 程式的 PID <以kill 的方式停止程式>
#jobs -l
#kill -15 程式的 PID <請觀察資訊>
#jobs -l
#kill -9 程式的 PID <以kill 的方式強制停止程式>
Lab: nice and renice
#ps l <請使用 小寫 L >
#vi 123 & <請觀察 NICE 值>
#nice vi aaa &
#ps l <請觀察 nice 預設的 NICE 值>
#nice -n -5 vi bbb & <請指定程式的 NICE 值>
#renice +5 程式 vi aaa 的 PID
#ps l <請觀察 NICE 值>
#top <文字方式即時監控 process>
#gnome-system-monitor <圖形介面監控>
Fun with Day 19 ~