現行已分配資源

現行已分配資源

系統資源(system resource)是指計算機中軟體和硬體資源,並以合理的方式組織調度計算機的工作和資源的分配,以提供給用戶和其他軟體的接口。現行已分配資源是指系統已經分配給進程或程式的資源,一般是指記憶體資源和設備資源。現已分配資源在很多方面有套用,如調度,預防死鎖

基本介紹

  • 中文名:現行已分配資源
  • 外文名:current allocated resources
  • 學科:計算機
  • 定義:系統已經分配給進程或程式的資源
  • 領域:計算機系統
  • 作用:預防死鎖
簡介,記憶體分配,設備分配,死鎖,系統安全狀態,

簡介

現行已分配資源是指系統已經分配給進程或程式的資源。現在系統一般都運行多個進程,而系統中的資源一般都是有限的。因此,系統資源的分配一般會基於一定的規則。現行已分配資源是系統中進程進行調度的基礎。

記憶體分配

記憶體分配的主要任務是為每道程式分配記憶體空間,使它們“各得其所” ;提高存儲器的利用率,以減少不可用的記憶體空間;允許正在運行的程式申請附加的記憶體空間,以適應程式和數據動態增長的需要。
OS 在實現記憶體分配時,可採取靜態和動態兩種方式。在靜態分配方式中,每個作業的記憶體空間是在作業裝入時確定的;在作業裝入後的整個運行期間,不允許該作業再申請新的記憶體空間,也不允許作業在記憶體中“移動” 。在動態分配方式中,每個作業所要求的基本記憶體空間也是在裝入時確定的,但允許作業在運行過程中繼續申請新的附加記憶體空間,以適應程式和數據的動態增長,也允許作業在記憶體中“移動” 。為了實現記憶體分配,在記憶體分配的機制中應具有這樣的結構和功能:
(1) 記憶體分配數據結構。該結構用於記錄記憶體空間的使用情況,作為記憶體分配的依據;
(2) 記憶體分配功能。系統按照一定的記憶體分配算法為用戶程式分配記憶體空間;
(3) 記憶體回收功能。系統對於用戶不再需要的記憶體,通過用戶的釋放請求去完成系統的回收功能。

設備分配

設備分配的基本任務是根據用戶進程的 I/O 請求、 系統的現有資源情況以及按照某種設備的分配策略,為之分配其所需的設備。如果在 I/O 設備和 CPU 之間還存在著設備控制器和 I/O 通道時,還須為分配出去的設備分配相應的控制器和通道。
為了實現設備分配,系統中應設定設備控制表、控制器控制表等數據結構,用於記錄設備及控制器的標識符和狀態。根據這些表格可以了解指定設備當前是否可用,是否忙碌,以供進行設備分配時參考。在進行設備分配時,應針對不同的設備類型而採用不同的設備分配方式。 對於獨占設備(臨界資源)的分配, 還應考慮到該設備被分配出去後系統是否安全。在設備使用完後,應立即由系統回收。

死鎖

作業系統中描述兩個或兩個以上的進程因競爭資源而無休止地互相等待狀態的概念。在計算機系統或網路系統中,如果在某一時刻,有一組進程,其中每個進程都占有了被該組中其他進程所要求的不能搶占的資源,則此組中的進程就被死鎖住了。這時系統效率將大大下降或不能繼續運行。避免死鎖發生的辦法是,作業系統根據預先掌握的關於資源用法來控制資源的分配,使得共同進展路徑的下一步不致於進入危險區。檢測死鎖的辦法是,作業系統不斷地監督進程的共同進展路徑,一旦發現已進入死鎖時,則立即採取有效措施使之恢復正常運行。

系統安全狀態

在預防死鎖的幾種方法中,都施加了較強的限制條件;在避免死鎖的方法中,所施加的限制條件較弱,有可能獲得令人滿意的系統性能。在該方法中把系統的狀態分為安全狀態和不安全狀態,只要能使系統始終都處於安全狀態,便可避免發生死鎖。
在避免死鎖的方法中,允許進程動態地申請資源,但系統在進行資源分配之前,應先計算此次資源分配的安全性。若此次分配不會導致系統進入不安全狀態,則將資源分配給進程;否則,令進程等待。
所謂安全狀態,是指系統能按某種進程順序(P 1 ,P 2 ,…,P n )(稱〈P 1 ,P 2 ,…,P n 〉序列為安全序列),來為每個進程 P i 分配其所需資源,直至滿足每個進程對資源的最大需求,使每個進程都可順利地完成。如果系統無法找到這樣一個安全序列,則稱系統處於不安全狀態。
雖然並非所有的不安全狀態都必然會轉為死鎖狀態,但當系統進入不安全狀態後,便有可能進而進入死鎖狀態;反之,只要系統處於安全狀態,系統便可避免進入死鎖狀態。因此,避免死鎖的實質在於:系統在進行資源分配時,如何使系統不進入不安全狀態。

相關詞條

熱門詞條

聯絡我們