作業系統 1 程序

2021-08-20 14:44:51 字數 2059 閱讀 7971

1.程序:資料集程式在乙個資料集執行的過程。

#組成:程式**,資料集棧,程序控制塊(pcb)——是程序存在的唯一標識,os根據pcb的屬性控制程序。

2.上下文:程序執行時cpu的暫存器資料集合(現場)。包括了使用者可見暫存器和控制/狀態暫存器。

3.分派器(即程序排程程式):排程時發生上下文切換:儲存舊程序的上下文到它的pcb,從新程序的pcb恢復它的上下文到暫存器。即選擇並排程乙個程序,使之占用cpu執行。

!#引入程序,由於實現了併發執行和資源共享,可提高資源利用率吞吐率的好處,但卻增加了系統的時間空間開銷。

1.程序建立:os為程序建立pcb,分配記憶體空間。

#導致程序建立的原因:

①新的批處理作業:作業提交後,開始執行時建立程序。

②互動登入:新使用者登入和接受使用者命令時建立程序。

③os提供服務:如控制列印,網路通訊等服務程序。

④父程序派送子程序:父程序請求建立子程序。

#建立的步驟

①給新程序分配乙個新pcb和唯一pid。

②給程序分配記憶體空間(**,資料,棧)。

③初始化pcb:各屬性取預設值或所請求的值。在unix中,子程序pcb基本複製自父程序pcb。

④將pcb放置就緒佇列或就緒掛起佇列。

⑤建立其他資料結構:如記賬,日誌等。

2.程序終止:**記憶體,釋放資源,銷毀pcb。

#導致程序終止的原因:

①程序正常執行完畢

②使用者或os干預

③父程序請求或父程序已終止

④執行時發生的各種故障和錯誤

3.五狀態模型

3.1程序狀態

3.2程序佇列

①就緒佇列:所有就緒程序按fcfs或優先順序順序排隊。

②等待(阻塞)佇列:每一種等待時間對應於乙個佇列。

3.3 被掛起的程序

!#pcb始終在記憶體中。

4.1作業系統的控制結構

os構造並維護所管理的每個實體的資訊表,4類

4.2程序控制結構pcb

pcb的索引(pid)唯一地標識該程序。

psw(程式狀態字暫存器):指明cpu當前特權級別、終端遮蔽碼,(中斷優先順序)等。

5.1cpu有兩種執行模式:

①使用者態:只能執行非特權指令。

②系統態:可以執行所有指令,使用所有資源以及改變cpu狀態。

?#cpu何時從使用者態到系統態?

?#cpu何時從系統態到使用者態?

?#注意

在unix中,父程序通過系統呼叫fork()建立子程序。

!!#fork()有兩個返回值:向父程序返回子程序的pid,向子程序返回0

作業系統 程序(1)

程序就是執行中的程式,當乙個程式被載入到記憶體之後就變為了程序 程序的出現,讓每個使用者感覺到自己在獨佔cpu,因此可以說程序就是為了在cpu上實現多道程式設計而出現的概念 物理視角 從物理記憶體的分配來看,每個程序占用一片記憶體空間,從這點上看,程序其實就是記憶體的某片空間,由於在任意時刻,乙個 ...

作業系統 程序1

程式本身不是程序。程式只是被動實體,如儲存在磁碟上包含一系列指令的檔案 而程序是活動實體,具有乙個程式計數器用於表示下個執行命令和一組相關資源。當乙個可執行檔案被載入到記憶體,程式就變成了程序。引入程序的目的是 為了實現程式的併發執行,並且可以對併發程式進行控制 程序具有以下狀態 新的 正在被建立 ...

作業系統 程序

在作業系統中,作業系統將記憶體,網路,檔案系統抽象為資源的統一抽象表示。1 什麼是程序 程序就是進入記憶體中正在執行的程式。把程序當做一組元素組成的實體。程序包括兩個部分,一部分是 部分,另一部分是 相關的資料集合。程序控制塊 每乙個程序,在核心中都對應著乙個程序控制塊。程序控制塊中儲存著程序的所有...