【大學課件】執行程序_第1頁
【大學課件】執行程序_第2頁
【大學課件】執行程序_第3頁
【大學課件】執行程序_第4頁
【大學課件】執行程序_第5頁
已閱讀5頁,還剩25頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

執行程序從編碼到運行,了解程序如何執行。什么是執行程序?程序的載體執行程序是程序在計算機系統中運行的載體,它包含了程序的指令和數據。可執行文件執行程序通常以可執行文件的形式存儲在磁盤上,例如.exe、.dll等。運行狀態當程序被加載到內存中并開始執行時,它就處于執行程序狀態。執行程序的特點動態性執行程序是動態變化的,其運行過程伴隨著資源的分配和釋放、狀態的改變等。并發性多個執行程序可以在同一時間段內運行,利用系統資源,提高效率。異步性執行程序的運行時間是不確定的,可能受到其他因素的影響,例如系統資源競爭。執行程序的類型單道程序一次只運行一個程序,計算機資源分配給單個程序,直到程序結束才分配給下一個程序。多道程序多個程序同時駐留在內存中,并交替運行,提高了CPU利用率,增加了系統吞吐量。多任務程序允許一個用戶同時執行多個程序,通常采用圖形界面,并使用窗口來管理不同的任務。多線程程序一個程序可以包含多個線程,每個線程都代表一個執行路徑,并可以獨立執行,提高了程序執行效率。單道程序執行1一個程序系統一次只能運行一個程序2順序執行程序從頭到尾依次執行3低效CPU經常處于空閑狀態多道程序執行1資源利用率提升多個程序同時運行,最大限度利用CPU和內存資源,提高系統效率。2響應時間縮短多個用戶或多個任務可以共享系統資源,減少等待時間,提升用戶體驗。3系統吞吐量增加多個程序并行執行,可以處理更多的任務,提高系統整體吞吐量。進程的概念程序執行一個正在運行的程序,包含了指令和數據資源分配一個進程擁有自己的內存空間、文件和I/O設備狀態變化進程在運行過程中會處于不同的狀態,比如運行、就緒、阻塞進程的狀態運行態進程正在被CPU執行,正在使用CPU的時間片。就緒態進程已準備好運行,但正在等待CPU時間片。阻塞態進程正在等待某個事件,例如I/O操作完成或資源可用。進程切換1保存狀態當前進程的CPU寄存器、程序計數器和其他狀態信息被保存到內存。2加載狀態下一個進程的狀態信息被加載到CPU寄存器和程序計數器中。3恢復執行下一個進程開始執行。進程創建分配資源為新進程分配必要的資源,包括內存、CPU時間、文件、I/O設備等。創建PCB為新進程創建一個進程控制塊(PCB),保存進程的必要信息,如進程標識符、狀態、程序計數器、內存地址等。初始化PCB初始化PCB中的一些關鍵信息,例如進程狀態設置為就緒狀態,程序計數器設置為程序入口地址等。將PCB加入進程隊列將新創建的PCB加入到相應的進程隊列中,等待調度器分配時間片進行執行。進程終止1正常終止進程完成任務后主動退出2異常終止由于錯誤或異常情況導致進程終止3外部干預操作系統或其他進程強制終止進程進程通信進程間的信息交換共享數據或資源協調進程執行進程同步協調進程進程同步是指多個進程協同工作,共享資源,避免沖突。進程同步的主要目的是確保多個進程能夠按預期順序執行,并協調它們對共享資源的訪問。避免競爭條件當多個進程訪問共享資源時,如果執行順序不當,可能會導致數據錯誤或系統崩潰,這種情況稱為競爭條件。進程同步的主要任務就是解決競爭條件,確保數據的一致性和完整性。資源管理進程同步還可以用于管理共享資源,例如打印機、數據庫等,確保多個進程能夠有序地使用這些資源?;コ庠L問定義互斥訪問是指多個進程訪問同一共享資源時,任何時刻只允許一個進程訪問,其他進程必須等待。目的防止多個進程同時訪問共享資源導致數據不一致或錯誤,確保數據完整性和一致性。信號量機制計數器記錄可用資源的數量。等待隊列用于存放等待資源的進程。操作P操作:申請資源,如果資源不可用則等待;V操作:釋放資源,喚醒等待的進程。管程機制同步和互斥管程提供了一種機制,用于確保多個進程對共享資源的訪問是同步的,并且互斥的訪問。數據結構管程包含共享資源的定義以及訪問這些資源的過程。它提供了一種抽象的機制,可以簡化對共享資源的管理。死鎖資源競爭多個進程競爭有限的資源,導致相互等待。循環等待進程間形成循環等待資源,無法釋放資源。死鎖的必要條件相互排斥:資源只能被一個進程使用,其他進程必須等待。占有且等待:進程持有至少一個資源,同時等待獲取其他資源。不可剝奪:進程已獲得的資源不能被強制剝奪,只能由進程自行釋放。循環等待:存在一個封閉的進程資源環路,每個進程都在等待環路中下一個進程釋放的資源。死鎖的預防破壞互斥條件某些資源可以被多個進程共享,但這并不總是可行的。破壞占有并請求條件進程在請求資源之前,必須釋放已占有的所有資源。破壞部分分配條件允許進程一次性請求所有所需的資源,要么全分配,要么都不分配。破壞循環等待條件通過對所有資源進行編號,并要求進程按照資源號遞增的順序請求資源,避免循環等待的發生。死鎖的檢測與解決1檢測使用專門的算法定期檢查系統資源分配情況,判斷是否存在死鎖狀態。2解除一旦檢測到死鎖,需要采取措施來解除死鎖,例如撤銷進程或搶占資源。3預防采取措施來防止死鎖的發生,例如破壞死鎖的必要條件。內存管理概述內存管理是操作系統中一項重要的功能,負責管理計算機系統中的內存資源。內存管理的目標是:有效地利用內存空間,提高系統性能,并確保程序安全運行。內存分配策略首次適應算法從內存的低地址開始查找,找到第一個滿足大小要求的空閑分區分配給進程。最佳適應算法從內存中查找一個最接近進程大小的空閑分區分配給進程。最壞適應算法從內存中查找一個最大的空閑分區分配給進程。虛擬內存擴大地址空間虛擬內存允許程序使用比物理內存更大的地址空間,突破物理內存的限制。提高程序并發度多個程序可以共享同一個物理內存,提高內存利用率,從而提升系統并發度。簡化內存管理虛擬內存提供了一個統一的地址空間,簡化了程序員的內存管理工作。頁面置換算法最久未使用(LRU)選擇最長時間未被訪問的頁面進行替換。先進先出(FIFO)選擇最先進入內存的頁面進行替換。時鐘算法結合FIFO和LRU的優點,在內存中維護一個循環隊列,每次選擇最近使用時間最早的頁面進行替換。文件管理概述文件管理是操作系統的重要組成部分,負責對文件進行組織、存儲和訪問。文件組織文件系統將文件組織成樹狀結構,方便用戶管理和檢索。訪問控制操作系統提供訪問控制機制,確保文件安全性和完整性。數據備份文件管理支持數據備份和恢復功能,防止數據丟失。文件的存儲組織順序存儲文件被存放在連續的磁盤塊中。鏈接存儲文件存儲在不連續的磁盤塊中,塊地址通過指針鏈接。索引存儲文件存儲在不連續的磁盤塊中,塊地址通過索引節點記錄。文件的訪問方式順序訪問從文件開頭開始順序讀取或寫入數據,必須按順序訪問每個數據塊。直接訪問直接訪問文件中的任何數據塊,無需按順序訪問,適合隨機訪問。索引訪問通過索引表來訪問文件,索引表記錄每個數據塊的地址,提供快速訪問。文件共享與保護共享方式多種方式,例如:共享目錄、文件鏈接、網絡文件系統等。保護機制訪問控制、權限管理、加密技術等,保證文件安全。安全考慮病毒、惡意軟件、數據泄露等威脅需要考慮。I/O設備管理I/O設備管理是操作系統的重要組成部分,負責管理計算機系統中的各種輸入輸出設備。它主要負責:設備的分配和回收、數據傳輸的控制、設備的故障檢測和處理、以及設備驅動程序的管理。磁盤調度算法先來先服務(FCFS)簡單易

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論