有限的

有限的

引自《Linux 程式設計介面》(第 2.7 節)

從核心的角度來看,進程是核心必須在其中共享電腦各種資源的實體。對於有限的資源(例如記憶體),核心最初會向進程分配一定量的資源,並在進程的生命週期內調整此分配,以回應進程的需求以及整個系統對該資源的需求。當進程終止時,所有此類資源都將被釋放以供其他進程重複使用。其他資源(例如 CPU 和網路頻寬)是可再生的,但必須在所有進程之間公平共享。

我的問題:電腦資源有限(記憶體)或可再生(CPU 和頻寬)意味著什麼?

答案1

資源管理是一個計算概念,描述電腦如何使用其硬體或虛擬元件。引用的摘錄描述了核心如何與此類資源交互,這只是一個範例。

為了更普遍地理解這個想法,我將嘗試將定義與更一般的概念聯繫起來,

資源- 實體硬體或虛擬元件(核心、作業系統等)。請參閱此處,以了解有關 Wikipedia 資源的構成要素的更多資​​訊。

資源有限- 在某些方面稀缺甚至人為限制的資源。在摘錄中,核心被描述為直接管理自己的記憶體分配,因為它需要具有最大化的可用性。這與資源爭奪記憶體管理就是這樣的用例之一。

再生資源- 任何更通用且通常高度可用的資源。存取權在任何使用它的人之間平等共享。這可以是 CPU 或網路頻寬之類的東西,因為它旨在提供分塊時間的使用,對吞吐量幾乎沒有影響,而且通常這種方式更有效。共享再生資源的一個例子是 CPU 多工處理。

答案2

我可以看出這是多麼令人困惑。兩者在某種意義上都是有限的,但差別在於時間。

有限的

有可能用完所有 RAM。如果發生這種情況,進程必須將其歸還,或者必須終止進程。

可再生

不可能用完所有的CPU。 CPU 在過去 3 天內可能已使用 100%,但如果另一個進程也嘗試使用它,則可以共享它,它們各自獲得的資源會減少。如果在過去 5 分鐘內僅使用了 10% 的 CPU,那麼這並不意味著在接下來的 5 分鐘內還剩餘 90%。之前的90%已經消失了,你無法再找回來了。

(這一切都沒有考慮功耗。)

相關內容