導航:首頁 > 操作系統 > 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子進程順序相關的資料

熱點內容
壓縮文件的用法 瀏覽:32
如何用瀏覽器訪問伺服器地址 瀏覽:205
soft編譯器 瀏覽:113
三軸車床的編程指令 瀏覽:71
天生敏感pdf 瀏覽:565
西瓜星球伺服器怎麼刷鑽石 瀏覽:838
php生成chm 瀏覽:658
解釋程序和編譯程序產生目標嗎 瀏覽:609
dos命令rem 瀏覽:371
plc程序員水平高低 瀏覽:854
linux伺服器linux雲 瀏覽:373
大腳重置命令 瀏覽:130
app怎麼引導頁面 瀏覽:946
pdf轉換成w0rd 瀏覽:569
壓縮空氣屬於什麼能量類型 瀏覽:881
上海交警app怎麼付費 瀏覽:601
暗黑2怎麼切換伺服器 瀏覽:20
安卓如何玩港服游戲 瀏覽:350
程序員如何換個城市生活 瀏覽:147
JS開發PDF 瀏覽:286