導航:首頁 > 操作系統 > linux子進程順序

linux子進程順序

發布時間:2023-07-09 18:35:31

A. linux中讓子進程執行和父進程不同功能的兩種常用方法

運維
Linux系統進程式控制制

行者111111111111111
原創
關注
0點贊·3人閱讀
1、進程創建
shell命令行啟動程序指令皆是創建了進程,我們通常通過調用fork()函數創建子進程。
1.1、fork()函數用法簡介
調用fork後,操作系統內核將:

分配新的內存塊和內核數據結構給子進程
將父進程部分數據結構內容拷貝至子進程
添加子進程到系統進程列表當中
fork返回,開始調度器調度
1.2、fork函數返回值
子進程返回0,父進程返回的是子進程的pid

原因:fork之後進入內核,申請內存構建子進程PCB、虛擬內存、頁表,將子進程設置R狀態,放入調度隊列,由於創建子進程之後父子進程共享代碼,所以父子進程都會有return返回值。返回值返回給變數本質發生了寫時拷貝,改變了子進程對應頁表的指向,數據映射到了其他區域
1.3、寫時拷貝
由於進程要獨立,代碼不可修改,數據可改,所以默認數據各有一份,但是內存是有限度的,如果把父進程數據全部再拷貝一份,那麼太浪費內存,甚至導致fork失敗。通常通過寫時拷貝實現,就是當父或子進程修改數據時,將要修改的數據拷貝一份,讓子進程頁表指向新的重復數據在發生修改

B. linux 進程調度演算法問題 主進程fork了 4個子進程a b c d 優先順序相等 一種

cb這是第一個fork的子進程產生的第一個fork父進程進入elseif先執行子進程輸出b這是第一個fork的父進程產生的父進程輸出ab所以一共是三個進程父——>父(產生父子)父——>子(終)

閱讀全文

與linux子進程順序相關的資料

熱點內容
英雄聯盟神魔怎麼綁定伺服器 瀏覽:980
音樂app怎麼換音質 瀏覽:974
python進階客戶流失 瀏覽:280
華為榮耀10伺服器地址 瀏覽:998
javastring相等判斷 瀏覽:411
程序員考研究生學校 瀏覽:935
java卡頓 瀏覽:500
編程軟體怎麼運行zip文件 瀏覽:505
單片機怎麼做組態 瀏覽:899
android參考文獻外文 瀏覽:684
銅電極電流效率的演算法 瀏覽:142
簡訊內存已滿怎麼處理安卓 瀏覽:312
ogg命令 瀏覽:784
南昌程序員最新消息 瀏覽:151
藍牙編程入門書籍 瀏覽:763
單片機秒錶實驗 瀏覽:411
小米3文件夾設置 瀏覽:566
手動添加dns伺服器加什麼數字 瀏覽:563
單片機中三位數碼管原件 瀏覽:141
pdf可以刪除其中一頁 瀏覽:217