Linux进程全解9——进程状态、system函数、进程间的关系
生活随笔
收集整理的這篇文章主要介紹了
Linux进程全解9——进程状态、system函数、进程间的关系
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
以下內容源于朱有鵬《物聯網大講堂》的課程學習整理,如有侵權,請告知刪除。
1、進程的5種狀態
(1)就緒態
- 這個進程當前所有運行條件就緒,只要得到CPU時間就能直接運行。
(2)運行態
- 就緒態時得到了CPU就進入運行態開始運行。
(3)僵尸態
- 進程已經結束但是父進程還沒來得及回收。
(4)等待態(淺度睡眠&深度睡眠)
- 進程在等待某種條件,條件成熟后可進入就緒態。
- 等待態下就算你給它CPU調度,進程也無法執行。
- 淺度睡眠等待時,進程可以被(信號)喚醒;
- 深度睡眠等待時,不能被喚醒,只能在滿足等待的條件時,才能結束睡眠狀態。
(5)暫停態
- 暫停并不是進程的終止,只是被別人(信號)暫停了,可以恢復。
2、進程各種狀態之間的轉換圖
3、system函數簡介
(1)system函數 = fork+exec
(2)原子操作
- 原子操作意思就是整個操作一旦開始就會不被打斷的執行完。
- 原子操作的好處就是不會被人打斷(不會引來競爭狀態),壞處是自己單獨連續占用CPU時間太長影響系統整體實時性。
- 因此應該盡量避免不必要的原子操作,就算不得不原子操作也應該盡量原子操作的時間縮短。
(3)使用system調用ls
4、進程關系
(1)無關系
(2)父子進程關系
(3)進程組(group):由若干進程構成一個進程組
(4)會話(session):就是進程組的組
總結
以上是生活随笔為你收集整理的Linux进程全解9——进程状态、system函数、进程间的关系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三菱plc编程有c语言吗,三菱plc编程
- 下一篇: Linux进程全解7——父进程wait