❶ 操作系統對資源分配,有哪幾種常見的策略
進程(Process)是系統進行資源分配和調度的基本單位。
進程也是搶占處理機的調度單位,它擁有一個完整的虛擬地址空間。當進程發生調度時,不同的進程擁有不同的虛擬地址空間,而同一進程內的不同線程共享同一地址空間。
與進程相對應,線程與資源分配無關,它屬於某一個進程,並與進程內的其他線程一起共享進程的資源。
線程只由相關堆棧(系統棧或用戶棧)寄存器和線程式控制製表TCB組成。寄存器可被用來存儲線程內的局部變數,但不能存儲其他線程的相關變數。
調度與操作系統的線程的實現有關,如果是管態線程與目態線程是一一對應,則調度的最小單位可以是線程,但我覺得這也就是理論上,一般的商用操作系統可能操作系統調度的單位也是進程。
(1)如何進行資源進程分配擴展閱讀
進程一般有三個狀態:就緒狀態、執行狀態和等待狀態【或稱阻塞狀態】;進程只能由父進程建立,系統中所有的進程形成一種進程樹的層次體系;掛起命令可由進程自己和其他進程發出,但是解除掛起命令只能由其他進程發出。
進程式控制制塊(PCB):PCB不但可以記錄進程的屬性信息,以便操作系統對進程進行控制和管理,而且PCB標志著進程的存在,操作系統根據系統中是否有該進程的進程式控制制塊PCB而知道該進程存在與否。
系統建立進程的同時就建立該進程的PCB,在撤銷一個進程時,也就撤銷其PCB,故進程的PCB對進程來說是它存在的具體的物理標志和體現。一般PCB包括以下三類信息:進程標識信息;處理器狀態信息;進程式控制制信息。
❷ 如何解決資源分配問題
廣義上的資源角度來說:使用的數量<=可獲得的數量。
解決資源分配問題的第一步是明確活動和資源,對每一個活動,需要作出活動數量的決策,也就是要確定活動水平。它包含了生產分配和財務問題。以下三類數據是必須的:
每種資源的可供量;
每一種活動所需要的各種資源的數量,對於每一種資源與活動的組合,單位活動所消耗的資源量必須首先估計出來;
每一種活動對總的績效測度的單位貢獻。
首先確認問題的活動類型,問題的決策也就是決定各種活動的水平;
明確合適的績效測度以求解問題;
估計每一種活動對於總績效測度的單位貢獻;
明確分配給各種活動的有限資源;
對於每一種資源,明確可獲得的數量以及各種活動的單位使用量;
建立使用的資源數量<=可用的資源數量的線性規劃約束進行計算。
建模步驟
實際操作
可以用EXCEL對資源分配問題進行計算,將數據輸入電子表格,可以在活動欄與可獲得的資源欄之間要保留兩個空欄的參數表,指定可變單元格來顯示活動水平的決策量,左邊一欄做為輸出單元格的總數欄,右邊一欄為所有的資源輸入<=符號,使用SUMPRODUCT函數,指派目標單元格以顯示總的績效測度,也使SUMPRODUCT函數。
應用
作為線性規劃問題常見的類型之一,資源分配問題在現實生活得到的廣泛的應用。例如,在多項目環境下,項目與項目之間存在著資源競爭、共享以及沖突。解決各個項目間的資源分配問題將關系著新產品研發項目成敗。在多項目環境下,新產品開發項目工期、項目進度安排、項目資源分配這三者之間有著密切的關系。首先,項目資源分配是影響項目時間(工期)的關鍵因素,有效的項目資源分配將可以使得產品研發項目工期最小,從而縮短新產品研發項目的周期,使其能夠更早的投入市場,佔領市場,取得利潤最大化。其次,項目進度安排和資源分配是相互聯系,不可分割的。資源分配是項目進度安排的非常重要的一部分,項目進度安排常常需要考慮時間節奏和稀缺資源的用度等問題。項目進度安排在一定程度上可以說也是一個項目資源分配的問題,即將項目的資源分配到各個項目的每一項活動中,得出哪一個活動需要多少資源,在哪個時間內完成,以達到最佳的資源配置,使新產品研發項目工期最短。因此在多項目環境下新產品研發項目的資源分配問題,即怎樣有效地優化多個新產品研發項目同時進行情況下資源分配以縮短項目工期的問題的解決在現實生活中有很大的意義
❸ 網路操作系統題目進程資源分配
其實這種題就是操作系統裡面有關死鎖的問題:運用銀行家演算法和安全演算法
就可以啦
1.
分配 需要 剩餘
P1 3 0 1 1 1 1 0 0
P2 0 1 0 0 0 1 1 2
P3 1 1 1 0 3 1 0 0
P4 1 1 0 1 0 0 1 0
P5 0 0 0 0 2 1 1 0
現在剩餘 1 0 2 0 我們就在這個五個進程中找滿足: 需要資源<=剩餘資源
只有P4進程滿足,把資源分給P4進程,讓其運行完成,P4進程結束後釋放
資源,則剩餘資源=1 0 2 0 + 1 1 0 1= 2 1 2 1.
接下來用:需要資源<=剩餘資源 ,可以找到P1滿足(第二種情況P5也滿足)
依次類推,則可以找到一個安全序列:P4 P1 P5 P3 P2(這里的安全序列有
很多中情況)
2.
當P2請求一個(0 0 1 0)資源時:請求資源(0 0 1 0)< 剩餘資源(1 0 2 0)
請求資源(0 0 1 0)< 需要資源,所以系統可以分配 但還要用安全演算法進行
檢查是否會該時刻系統是否安全,即用(1)題中的步驟檢查,
這時分配圖如下:
分配 需要 剩餘
P1 3 0 1 1 1 1 0 0
P2 (0 1 1 0) (0 1 0 2)
P3 1 1 1 0 3 1 0 0
P4 1 1 0 1 0 0 1 0
P5 0 0 0 0 2 1 1 0
括弧中為變化部分,剩餘資源為 1 0 1 0 運用滿足條件:需要資源<=剩餘資源
根據上述步驟可以找到一個安全序列:P4 P1 P5 P3 P2 (安全序列不唯一)
所以P2發出的請求 系統可以滿足
3.
這個小問就不用說了吧 都是一樣的