11001周志遠教授作業系統_第7A講 Ch3:Processes Concept

Поделиться
HTML-код
  • Опубликовано: 2 дек 2024

Комментарии • 2

  • @doge7562
    @doge7562 Месяц назад +3

    # Process Control Block (PCB) 與 Process Life Cycle
    ## PCB 的重要性
    ### 定義
    PCB 是作業系統用來管理進程的一種數據結構,包含了進程的各種信息。
    ### 作用
    - 記錄進程的狀態(New, Ready, Running, Waiting, Terminated)
    - 保存進程的上下文信息(程序計數器、寄存器等)
    - 管理進程的資源(文件、內存等)
    ### 內容
    - 狀態
    - 程序計數器
    - 寄存器
    - 內存管理信息
    - I/O 狀態
    - 賬戶信息
    - 其他控制信息
    ## Process 的生命週期
    ### 五種狀態
    1. **New**:進程被創建
    2. **Ready**:進程準備好執行,等待分配 CPU
    3. **Running**:進程正在執行
    4. **Waiting**:進程等待某個事件(如 I/O 完成)
    5. **Terminated**:進程結束
    ### 狀態轉換
    - **New -> Ready**:進程初始化完成
    - **Ready -> Running**:調度器選中進程
    - **Running -> Waiting**:進程等待事件
    - **Waiting -> Ready**:事件完成
    - **Running -> Terminated**:進程正常結束或異常終止
    ## Context Switch
    ### 定義
    將 CPU 從一個進程(process)切換到另一個進程(process)的過程。
    ### 過程
    1. 保存當前進程的狀態到 PCB
    2. 載入新進程的狀態到 CPU
    ### 開銷
    - 浪費 CPU 時間
    ### 優化
    - 減少寄存器數量(但是現在電腦的設計不容易這樣做)
    - 硬件支持(多個寄存器組直接做切換,這樣就不需要重新load資料來處理。但是register很貴)
    - 優化內存訪問
    ## Process 與 Thread 的區別
    ### Process
    - 重量級
    - 獨立的內存空間
    ### Thread
    - 輕量級
    - 共享同一進程的內存空間

  • @huaitehuang5419
    @huaitehuang5419 Год назад +8

    這集有校犬的聲音😂