計算機的核心是cpu,首先作業系統講的就是對處理器的管理。在處理器管理當中都講了些什麼呢?當然是需要操作需要管理的東西。
處理器是用來處理程序的,程序通俗的講就是要幹的活兒。並且處理器屬於獨佔型資源,同一時刻只能處理一件事情。為了能夠讓處理器的利用率發揮到最高,就出現了處理器管理,(貌似有點像個人管理,當然機器和人還是有很大的差別的)。
程序具有三種狀態(也有五態圖),就緒、執行和阻塞。這三種狀態和日常生活當中的任務的狀態基本一致,準備幹、正在幹、等待,三種狀態。當然了幹完的事情就不屬於我們要考慮的範圍了。
在處理器管理當中還講到了一些新的概念,包括:管程、死鎖、中斷、pv操作等,這些名詞的出現都是因為一些程序的特點和處理的特殊要求。
管程:
有一些程序需要一起來處理,他們之間的關係比較密切,從而就出現了管程。
管程由來:把分散在各個程序中的臨界區集中起來進行管理,並把系統的共享資源用資料結構抽象表示出來。由於臨界區是訪問共享資源的**段,建立乙個秘書程式管理,秘書每次僅讓乙個程序來訪問,這樣既便於對共享資源的管理,又實現了互斥訪問。在後來的實現中,秘書就改為管程。
對共享資源的管理就是借助資料結構以及在其上的操作的一組過程。
管程:共享資源的資料及其在上操作的一組過程或者共享資料結構及其在上所有的操作。
管程有三部分組成:共享變數、對資料結構的操作的過程、初始值語句。
管程與程序的區別:管程是為了管理共享資源而建立的,程序是占用系統資源和實現系統並發行而引入的。
死鎖:
當系統資源分配不合理時,系統中程序不能繼續執行就形成了死鎖。對死鎖的產生原因和處理辦法在這裡就不羅列了,書上寫的很清楚。
中斷:
在日常生活中中斷也是經常出現的,比如你在銀行辦理業務呢!來了乙個vip,那就有可能打斷你現有的執行。先給vip辦理業務。這就是優先順序不同的問題,在程序中也有不同的優先順序,當然cpu執行也不完全是按照優先順序來執行的,有多種演算法進行管理的。
中斷的也有多重,硬體故障中斷是我們都不可避免的。
pv操作:
通過訊號量來控制程序的執行或阻塞。從而達到程序的同步和互斥。
其實在處理器管理也就是對程序的管理。在這管理裝那個有很多管理演算法,這些演算法都源於日常生活。將計算機、時間管理和個人管理肯定會讓你大側大悟的!不僅對知識的學習對我們個人管理和時間管理都有一定的好處。
作業系統之處理機管理
處理機管理可歸結為對程序的管理。在單道程式系統中,程式只能夠順序的執行,即兩個程式只能等乙個執行完再執行下乙個。這樣就使程式的執行具有三個特型 順序性 封閉性和可再現性。而到了多道程式系統中,允許程式併發的執行 巨集觀並行,微觀序列 此時程式併發執行就具有了 間斷性 失去封閉性和不可再現性。為了解決...
作業系統02 處理機管理
處理機排程是系統對處理機資源進行分配,使處於就緒狀態的程序得以執行。使用的處理機排程演算法決定了大型系統執行時的效能。1.處理機排程層次 乙個作業從提交到獲得處理機執行,直至作業執行完畢,可能需要經過多級處理機排程。處理機排程的層次分三層 2.作業與作業排程 3.程序排程 4.實時排程 優先順序倒置...
作業系統 處理機排程概念
乙個作業被提交後,必須經過處理機排程,才能獲得處理機執行,通常經過三個排程 高階排程 高階排程,長程排程 中級排程 中程排程 低階排程 短程排程 根據某種演算法,把外村上處於後備佇列中的那些作業調入記憶體,排程物件是作業 就是一些程式,資料,還有一些作業說明書。作業需要執行哪些步驟執行完。每乙個步驟...