程式的可併發執行
程序的定義與特徵
程序的狀態
程序的掛起狀態
程序控制塊
程序的組織形式
程序控制
程序的建立
程序終止
程序的終止過程
引起程序阻塞和喚醒的事件
中斷型別分為如下兩大類
按中斷功能分類
### 引入,前驅圖
定義:
前驅圖是乙個又向無迴圈圖,可用來描述程式段或程序之間的先後次序關係。前趨圖中的每個節點表示乙個程式段或乙個程序,結點間的有向邊用來表示兩個結點之間存在的偏序或前趨關係back
定義:程式的順序執行是指若干個程式或程式段之間必須嚴格按照某種先後次序來執行,進當前一程式或程式段執行完後,才能執行後面的程式或程式段
特徵:
處理機嚴格按照程式所規定的順序執行
程式在執行時獨佔系統的全部資源,系統資源的改變只與執行的程式有關,而不受外界因素的影響
初始條件相同的適合,乙個程式的多次重複執行將得到相同的結果back
定義:
程式的併發執行是指兩個或兩個以上的程式或程式段可在同一時間間隔內同時執行。極大地提高了資源利用率和吞吐量。特徵:
因為要共享資源,但是資源往往都少於正在執行的程式數,所以會存在資源搶占的問題.當乙個資源被占用時,其他需要該資源的程式不得不暫停,待資源被釋放時方可執行
由於它們共享資源或者合作完成同一項任務,系統的狀態不再受其中乙個程式的控制和改變,所以就失去了封閉性
因為程式在併發執行時失去了封閉性,所以任何乙個程式都有可能對系統的狀態進行改變,這也意味著程式執行的結果可能會不相同back
定義:由:
三個部分構成乙個程序實體(又稱程序映像),簡稱程序
pcb定義:系統中存放程序的管理和控制資訊的資料結構稱為程序控制塊pcb(process control block)典型的定義:
程序的特徵:
程序是程式的一次執行過程。程序具有一定的生命期,必須由建立而產生,由排程而執行,由撤銷而滅亡
多個程序實體同存於記憶體中,且能在一段時間內同時執行
程序實體是乙個能夠獨立執行、獨立分配資源和獨立接受排程的基本單位
程序可按各自獨立的、不可預知的速度向前推進back
除了處理器之外的資源都已經獲得,等待處理器分配資源,只要分配了處理器就可以到達執行狀態
占用處理器資源,這個時候,處於這種狀態的程序的數目小於等於處理器的數目
由於程序等待某種原因,比如i/o操作或者程序同步操作,沒有獲得滿足的條件,無法進行back
引入原因:
引入掛起原語操作後的三個程序狀態的轉換
實質:程序不能夠繼續執行,即掛起後的程序處於就緒狀態,不能參與cpu的競爭
掛起常被用在程序對換中,此時掛起程序可以騰出記憶體空間給就緒程序使用
back
定義:為了描述控制程序的執行,系統為每個程序定義了乙個資料結構稱為程序控制塊pcb。pcb是程序實體的乙個組成部分,其中記錄了os所需的、用於描述程序的當前情況以及控制程序的全部資訊
pcb的作用是將程式變成可併發執行的程序pcb通常包含:
作用:back
back
核心功能:
由若干條指令組成的,用於完成一定功能的乙個過程。乙個操作中的所有動作,要麼全做,要麼全不做,是乙個不可分割的基本單位
資源管理功能
作業系統核心都是原語構成的,為什麼?
原因:遮蔽所有中斷,保證序列,使作業系統底層執行結果是唯一的back
引進乙個概念,程序樹,其是描述程序間關係的一棵有向樹。
引起建立程序的事件
程序的建立:
back
引起程序終止的事件:
外界干預
back
back
back
正在執行的程式所不期望的,來自硬體故障或外部請求。
自願性中斷:
使用者在程式設計時要求作業系統提供的服務,使用訪管指令或系統呼叫使中斷發生。也稱為訪管中斷。包括執行i/o,建立程序,分配記憶體,訊號量操作,傳送/接收訊息。back
輸入輸出中斷時當外部裝置或通道操作正常結束或發生某種錯誤時發生的中斷。例如:i/o傳輸出錯、i/o傳輸結束等。
對某**處理機而言,他的外部非通道式裝置所引起的中斷稱為外部中斷。例如:時鐘中斷、操作員控制台中斷、多機系統中cpu到cpu的通訊中斷。
當機器發生故障時所產生的中斷叫硬體故障中斷。例如:電源故障、通道與主存交換資訊是主儲存錯、從主訪問指令出錯、取資料錯、長線傳輸時的奇偶校驗錯等。
在現行程式執行過程中,發現了程式性的錯誤或出現了某些程式的特定狀態而產生的中斷稱為程式性中斷。這些程式性錯誤有定點溢位、十進位制溢位、十進位制數錯、位址錯、使用者態下用核態指令、越界、非法操作等。程式的特定狀態包括逐條指令跟蹤、指令位址符合跟蹤、轉態跟蹤、監視等。
對作業系統提出某種需求(如請求i/o傳輸、建立程序等)時所發出的中斷稱為訪管中斷。back
作業系統學習筆記(二)
命令方式 作業系統外殼 互動性的介面 系統呼叫方式 作業系統核心 管理物件 1 硬體資源 處理器 儲存器 記憶體 外存 外圍裝置 鍵盤 滑鼠 印表機 顯示器等 2 資訊 資料和軟體 是以檔案的方式來進行管理,作業系統是通過檔案系統模組具體來對軟體 資料 實施管理。管理內容 1 資源的分配 和訪問操作...
作業系統學習筆記二
1 管理處理機 2 管理儲存器 3 管理輸入 輸出裝置 4 管理資料檔案 5 提供介面服務 二 處理機管理 程序控制 建立和撤銷程序以及控制程序的狀態轉換 進行同步 協調,互斥訪問臨界資源,協調執行進度 程序通訊 程序間的資訊交換 程序排程 按一定演算法從程序就緒佇列中選出乙個程序,把處理機分配給它...
作業系統學習
看了幾天的資料,今天終於有時間把測試環境搭建起來。模擬機bochs nasm ultraiso 模擬機bochs的設定不難,在網上搜了些資料和參考了bochs的說明檔案,基本上就可以組建並執行起來。在網上下了個dos的映象,執行bochs從a盤啟動,之後把硬碟分割槽格式化,乙個最基礎的測試環境就完成...