91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中進程fork()的示例分析

發布時間:2021-07-15 09:57:04 來源:億速云 閱讀:116 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關Linux中進程fork()的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

Linux fork()詳解:

在開始之前,我們先來了解一些基本的概念:

1. 程序, 沒有在運行的可執行文件  

   進程,  運行中的程序   

2. 進程調度的方法:  

    按時間片輪轉  
    先來先服務 
    短時間優先 
    按優先級別   

3. 進程的狀態:       

        就緒   ->>   運行  ->> 等待 
        運行 ->> 就緒 //時間片完了 
        等待 ->> 就緒 //等待的條件完成了   

查看當前系統進程的狀態 ps auxf 

status: 

D    Uninterruptible sleep (usually IO) 
R    Running or runnable (on run queue) 
S    Interruptible sleep (waiting for an event to complete) 
T    Stopped, either by a job control signal or because it is being traced. 
W    paging (not valid since the 2.6.xx kernel) 
X    dead (should never be seen) 
Z    Defunct ("zombie") process, terminated but not reaped by its parent. 
<    high-priority (not nice to other users) 
N    low-priority (nice to other users) 
L    has pages locked into memory (for real-time and custom IO) 
s    is a session leader 
l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do) 
+    is in the foreground process group   

4. 父進程/子進程 , 讓一個程序運行起來的進程就叫父進程, 被調用的進程叫子進程   

5. getpid //獲取當前進程的進程號 
   getppid //獲取當前進程的父進程號   

6. fork //創建一個子進程,創建出來的子進程是父進程的一個副本, 除了進程號,父進程號不同。  

    子進程從fork()后開始運行, 它得到的fork返回值為0 
    父進程得到的返回值為子進程的進程號 
    返回值為-1時, 創建失敗

來看一個程序:

#include <stdio.h> 
#include <unistd.h> 
 
int main(void) 
{ 
  pid_t pid ;  
  //printf("hello world \n"); 
 
  //從fork開始就已經產生子進程 
  pid = fork();  //就已經產生新的4G空間,復制空間 
  //創建出來的子進程是父進程的一個副本,除了進程號,父進程號和子進程號不同 
  //printf("hello kitty\n"); 
  if(pid == 0)   
  { 
    //子進程運行區 
 
    printf("child curpid:%d parentpid:%d \n" , getpid() , getppid()); 
    return 0 ;  
  } 
 
  //父進程運行區 
  printf("parent curpid:%d parentpid:%d \n" , getpid() , getppid()); 
 
  return 0 ;  
}

感謝各位的閱讀!關于“Linux中進程fork()的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

文登市| 金堂县| 淳安县| 彰化市| 肇东市| 临猗县| 太仓市| 克什克腾旗| 漳浦县| 淅川县| 万年县| 林西县| 富宁县| 沈丘县| 额敏县| 东宁县| 沙坪坝区| 综艺| 高青县| 鄄城县| 改则县| 安宁市| 华坪县| 岳普湖县| 都兰县| 喀喇| 靖远县| 七台河市| 慈溪市| 门头沟区| 甘洛县| 达孜县| 剑阁县| 青州市| 抚宁县| 田林县| 静乐县| 宝丰县| 甘南县| 苍溪县| 泸水县|