1. 程式人生 > >操作系統原理之進程和線程學習

操作系統原理之進程和線程學習

訪問 發生 執行 等待 保護 輸出 內存 不存在 當前

  • 進程
  1. 操作系統必須交替執行多個進程,在合理的響應時間範圍內使處理器的利用率達到最大。
  2. 操作系統按照程序分配的優先級給進程分配資源,避免死鎖。
  3. 操作系統支持進程間的通信和用戶創建進程

定義:正在計算機上執行的程序實例,能分配給處理器並由處理器執行的實體(程序代碼+代碼相關數據集)

進程控制塊:標識符(進程唯一標識符)、狀態、優先級、程序計數器(程序即將被執行的下一條指令地址)、內存指針(程序和相關數據的指針、和其他進程共享內存塊的指針)、上下文數據(寄存器中的數據)、I/O狀態信息(顯式的I/O請求、分配給進程的I/O設備)和記賬信息

  • 進程的創建
  1. 新的批處理作業-響應作業提交時
  2. 交互登錄-終端用戶登錄到系統
  3. 操作系統因為提供一項服務而創建-如用戶請求打印文件
  4. 由現有的進程派生
  • 進程的終止
  1. 正常完成
  2. 超過時限-進程運行時間超過規定時限(總運行時間、執行時間、交互進程從上一次用戶輸入到當前時刻的時間總量)
  3. 無可用內存-系統無法滿足進程所需的內存空間
  4. 越界-進程視圖訪問不允許訪問的內存單元
  5. 保護錯誤-進程試圖使用不允許使用的或不正確使用資源或文件
  6. 算術錯誤-進程視圖進行被禁止的計算
  7. 時間超出-進程等待某一事件發生的時間超過了規定的最大值
  8. I/O失敗-在輸入或輸出期間發生錯誤,如找不到文件或無效操作
  9. 無效指令-進程試圖執行一個不存在的指令
  10. 特權指令-進程試圖使用為操作系統保留的指令
  11. 數據誤用-錯誤類型或未初始化的一塊數據
  12. 操作員或操作系統幹涉-操作員或操作系統終止進程
  13. 父進程終止-用於派生進程情況下
  14. 父進程請求-在進程派生情況下,父進程具有終止任何後代進程的權力


AUTANT EN EMPORTE LE VENT 記於2018.04.01愚人節

操作系統原理之進程和線程學習