<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      學習筆記6 第三章的自學歸納

      多任務處理

      • 一般來說,多任務處理指的是同時進行幾項獨立活動的能力。在計算機技術中,指的是同時執行幾個獨立的任務。多任務處理是所有操作系統的基礎,總的來說,它也是并行編程的基礎。

      進程的概念

      • 進程是對映像的執行,操作系統內核將一系列執行視為使用系統資源的單一實體。系統資源包括內存空間、I/O設備以及最重要的CPU時間。在操作系統內核中,每個進程用一個獨特的數據結構表示,即PROC結構體,它包含了某個進程的所有信息。
      • 如下是一個PROC結構體

      1.next是指向下一個PROC結構體的指針

      2.ksp保存的堆棧指針

      3.pid是一個進程的進程編號

      4.status是當前狀態

      5.priority是進程調度優先級

      6.kstack是進程執行時的堆棧

      多任務處理系統

      type.h文件

      #define FREE 0
      #define READY 1
      #define SLEEP 2
      #define ZOMBIE 3
      typedef struct proc
      { 
         struct proc *next;
         int *ksp;
         int pid;
         int ppid;
         int status;
         int priority;
         int kstack[SSIZE];
      }
      
      • type.h文件定義了系統常熟和表示進程的簡單PROC結構體。

      ts.s文件

      • ts.s文件在32位GCC匯編代碼中可實現進程上下文切換

      queue.c文件

      • 可實現隊列和鏈表操作

      進程同步

      • 是指控制和協調進程交互以確保其正確執行所需的各項規則和機制

      • 睡眠模式/等待:ksleep(int event)

      • 喚醒操作:kwakeup(event)

      進程終止

      • 分為正常終止和異常終止

      • 進程家族樹:PROC child,sibling,*parent;

      • 子進程,兄弟進程,父進程

      • 等待子進程終止

      • 無論何時,進程都能調用內核函數kwait等待僵尸子進程:pid = kwait(int *status)

      Unix/Linux中的進程

      1.進程來源

      • 當操作系統啟動時,操作系統內核的啟動代碼會強行創建一個PID=0初始進程執行初始進程P0

      2.INIT和守護進程

      • 當進程P1開始運行時,它將其執行映像更改為INIT程序。P1 開始復刻出許多子進程,P1的大部分子進程都是用來提供系統服務的。它們在后臺運行,不與任何用戶交互。

      3.登錄進程

      • P1復刻了許多LOGIN進程,每個終端上一個,用于用戶登錄。

      4.sh進程

      • 當用戶成功登錄時,LOGIN進程會獲取用戶的gid和uid,從而稱為用戶的進程。他將目錄更改為用戶的主目錄并執行列出的程序,通常是命令解釋程序sh。

      5.進程的執行模式

      • 在Unix/Linux中進程以兩種不同的模式執行,即內核模式和用戶模式,簡稱Kmode和Umode。在每種執行模式下,一個進程有一個執行映像。

      • Umode只能通過中斷,陷阱,系統調用三種方式進入Kmode

      進程管理中的系統調用

      • fork()、wait()、exec()、exit()

      I/O重定向

      • 文件流和文件描述符

      • 文件流I/O和系統調用

      • 重定向標準輸入

      • 如果用一個新打開的文件來替換文件描述符0,那么輸入將來自該文件而不是原始輸入設備。

      • 重定向標準輸出

      • 更改文件描述符1,指向打開的文件名,然后stdout的輸出將會轉到該文件而不是屏幕;同樣也可以將stderr重定向到一個文件。

      管道

      • 管道是用于進程交換數據的單向進程間通信通道。管道有一個讀取端和一個寫入端
      • 管道命令處理

      cmd1 | cmd2

      sh將通過一個進程運行cmd1,并通過另一個進程運行cmd2,他們通過一個管道連接在一起,因此cmd1的輸出變為cmd2的輸入。

      遇到的問題

      蘇格拉底提問


      posted on 2023-10-22 12:28  20211422王俊凱  閱讀(20)  評論(0)    收藏  舉報



      主站蜘蛛池模板: 乱人伦中文字幕成人网站在线| 曰本丰满熟妇xxxx性| 亚洲综合伊人五月天中文| 精品尤物国产尤物在线看| 肥大bbwbbw高潮抽搐| 亚洲精品二区在线播放| 午夜福利片1000无码免费| 无码人妻精品一区二区三区蜜桃| 国产亚洲久久久久久久| 亚洲制服无码一区二区三区| 国产午夜在线观看视频播放| 欧美精品人人做人人爱视频| 亚洲熟妇自偷自拍另类| 国产精品中文字幕日韩| 亚洲一区二区三区自拍偷拍| 无码任你躁久久久久久久| 日韩国产中文字幕精品| 熟女系列丰满熟妇AV| 99精品久久久中文字幕| 亚洲一区二区在线无码| 亚洲av日韩av综合在线观看| 天堂av在线一区二区| 久久精品熟妇丰满人妻久久| 国产精品三级爽片免费看| 亚洲中文字幕精品第一页| 成人午夜激情在线观看| 婷婷开心色四房播播| 先锋影音男人av资源| 手机看片福利一区二区三区 | 久久精品一偷一偷国产| 欧美大bbbb流白水| 国产精品一区二区三区四区| 日产无人区一线二码三码2021| 精选国产av精选一区二区三区| 男人天堂亚洲天堂女人天堂| 日韩精品中文女同在线播放 | 日本三级理论久久人妻电影| 五月天中文字幕mv在线| 日韩国产精品区一区二区| 久久精品波多野结衣| 宜兰市|