進程管理
一、作業調度算法
1.先來先服務(FCFS)
2.短作業優先(SJF)
3.響應比高優先(HRN)
響應比 = 等待時間/運行時間
4.優先級調度
二、進程
1.概念
進程是程序在一個數據集上的運行過程。
它是系統進行資源分配和調度的可併發執行的獨立單位。
它是程序的一次動態執行活動。
2.組成
進程控制塊(PCB),程序,數據區,工作區
3.進程控制塊PCB
PCB是系統用於查詢和控制進程運行的檔案。
PCB可以分爲兩部分:進程基本控制塊和進程擴充控制塊,其中基本控制塊要常駐內存。
4.進程的狀態
執行,就緒,阻塞
三、進程調度
1.三種調度
高級調度:決定哪個後備作業可以調入主系統,成爲就緒進程
中級調度:決定交換區中哪個就緒進程可以調入內存,直接參與CPU的競爭
低級調度:決定內存中哪個就緒進程可以佔用CPU
2.進程調度策略
進程調度策略分爲可剝奪和不可剝奪策略。
3.進程調度算法
1)先來先服務FIFO
一種不可搶佔的簡單算法,缺點是大進程運行時,小進程需要等待很長時間。
2)時間片輪轉法
按進程到達的時間排在一個FIFO就緒隊列中,每次選擇隊首的進程佔用處理機並運行一段稱爲“時間片”的固定時間間隔。
3)優先級調度
分兩種:靜態優先級和動態優先級
應該被賦予較高優先級的進程:系統進程,短作業進程,IO繁忙的進程
四、線程
一個進程中區分若干個線程作爲調度和執行的基本單位,而資源擁有單位依舊爲進程。
線程之間共享地址空間,但有自己的線程控制塊,用戶棧,核心棧。
優點:創建快,切換快,通信快,終止快。