进程调度实验_Linux应用编程之进程的PID与PPID
ID:嵌入式情報局
作者:情報小哥
1進程PID
? ? 首先介紹PID的相關知識,為后面介紹fork函數進行鋪墊。
01
PID與PPID?
? ? PID不是控制理論的PID算法,而是Prcess ID的簡寫。進程PID是當操作系統運行進程時系統自動為其分配的唯一標識符,用于唯一標識此進程的一個整數,而PPID就是進程的父進程的PID。
? ? 既然是唯一標識,PID也就相當于我們的身份證,一旦被發放即終生標識,這也便于操作系統更好的管理和標識進程,當然一旦進程生命周期結束,此時的PID便會被釋放,可供以后的進程再次使用。
02
特殊PID進程
? ? 我們可以通過命令行輸入 : ps -aux 來查看當前系統所運行的進程。
PID= 0的進程 :?
通常也叫調度進程、idle進程,負責進程之間的調度和切換。該進程是內核的一部分,所有進程的根進程,一般我們是看不到該進程的。
PID = 1的進程 :
通常是init進程,Linux幾乎所有的進程都是由父進程產生的,PID=1的進程為父原始進程,比如該進程會讀取文件系統來完成操作系統的啟動。
PID = 2的進程 :
也叫kthreadd進程,它的任務就是管理和調度其他內核線程。
2兩個常用API函數
01
兩個常用API??
? ? 同樣我們使用命令行 : man 2 getpid ,從而可以找到該API的詳解。
其中getpid表示獲得當前進程PID,而getppid是獲得當前進程的父進程PID,并且兩個函數均能成功返回。
02
實驗說明???
實驗代碼 :?
實驗結果:
? ? 同樣我們可以通過使用命令行ps -aux看到子進程PID = 45347 = ./Test和父進程PID = 45286 = bash。
3最后
? ? 這里小哥就介紹了PID、PPID以及如何獲得進程PID的API函數,今天就分享到這里,下期跟大家一起學學 folk!
我是情報小哥,一個90后嵌入式自學玩家!
長按前往圖中包含的公眾號關注
總結
以上是生活随笔為你收集整理的进程调度实验_Linux应用编程之进程的PID与PPID的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Homework2-project re
- 下一篇: linux 其他常用命令