• 內存管理

    編輯
    本詞條由“匿名用戶” 建檔。

    什么是內存管理

    編輯

    內存管理是一種應用于計算機內存的資源管理形式。內存管理的基本要求是提供根據程序請求動態分配內存部分的方法,并在不再需要時將其釋放以供重用。這對于任何在任何時候都可能正在進行多個進程的高級計算機系統至關重要。

    已經設計了幾種方法來提高內存管理的有效性。虛擬內存系統將進程使用的內存地址與實際物理地址分開,允許進程分離并使用分頁或交換到二級存儲將虛擬地址空間的大小增加到超出可用RAM量的范圍。虛擬內存管理器的質量可以對整體系性能產生廣泛的影響。

    在某些操作系統中,例如OS/360和后續操作系統,內存由操作系統管理。在其他操作系統中,例如類Unix操作系統,內存在應用程序級別進行管理。

    地址空間內的內存管理通常分為手動內存管理或自動內存管理。

    手動內存管理

    編輯

    完成分配請求的任務包括定位一塊足夠大的未使用內存。通過從稱為堆或空閑存儲的大型內存池中分配部分來滿足內存請求。[注1]在任何給定時間,堆的某些部分正在使用中,而有些則是“空閑的”(未使用),因此可用于將來的分配。

    有幾個問題使實現復雜化,例如外部碎片,當分配的內存塊之間存在許多小間隙時會出現這種情況,這使得它們無法用于分配請求。分配器的元數據也可以夸大(單獨)小分配的大小。這通常由分塊管理。內存管理系統必須跟蹤未完成的分配以確保它們不會重疊并且不會“丟失”內存(即沒有“內存泄漏”)。

    具有虛擬內存的系統

    編輯

    虛擬內存是一種將內存組織與物理硬件分離的方法。應用程序通過虛擬地址對內存進行操作。應用程序每次嘗試訪問特定的虛擬內存地址都會導致虛擬內存地址被轉換為實際的物理地址。通過這種方式,虛擬內存的添加實現了對內存系統和訪問方法的精細控制。

    在虛擬內存系統中,操作系統限制進程訪問內存的方式。此功能稱為內存保護,可用于禁止進程讀取或寫入未分配給它的內存,防止一個程序中的惡意或故障代碼干擾另一個程序的操作。

    即使分配給特定進程的內存通常是隔離的,進程有時也需要能夠共享信息。共享內存是進程間通信最快的技術之一。

    內存通常按訪問速度分為主存儲和二級存儲。除其他操作外,內存管理系統還處理這兩個內存級別之間的信息移動。

    OS/360和后續版本中的內存管理

    編輯

    IBMSystem/360不支持虛擬內存。[注2]作業的內存隔離可以選擇使用保護密鑰來完成,為每個作業分配一個不同的密鑰,0為主管或1-15。OS/360中的內存管理是一個主管功能。使用GETMAIN宏請求存儲并使用宏釋放存儲FREEMAIN,這會導致調用主管(SVC)來執行操作。

    內存管理

    在OS/360中,詳細信息因系統的生成方式而異,例如,對于PCP、MFT、MVT。

    在OS/360MVT中,作業區域或共享系統隊列區域(SQA)內的子分配基于子池,區域大小為2KB的倍數——受保護密鑰保護的區域的大小。子池編號為0–255。在一個區域內,子池被分配作業的存儲保護或主管的密鑰,密鑰0。子池0-127接收作業的密鑰。最初只創建子池0,并且所有用戶存儲請求都從子池0中得到滿足,除非在內存請求中指定了另一個。子池250-255由主管代表作業的內存請求創建。其中大多數被分配了鍵0,盡管有一些獲得了工作的鍵。子池編號也與MFT相關,盡管細節要簡單得多。MFT使用可由操作員重新定義的固定分區而不是動態區域,而PCP只有一個分區。

    每個子池由標識子池內已分配和空閑內存塊的控制塊列表映射。通過找到足夠大小的空閑區域或通過在子池中分配額外的塊來分配內存,直到作業的區域大小。可以釋放全部或部分分配的內存區域。

    OS/VS1的細節與MFT和MVT的細節相似;OS/VS2的細節類似于MVT的細節,除了頁面大小為4KiB。對于OS/VS1和OS/VS2,共享系統隊列區域(SQA)是不可分頁的。

    在MVS中,地址空間包括一個額外的可分頁共享區、公共存儲區(CSA)和一個額外的私有區、系統工作區(SWA)。此外,存儲密鑰0-7都保留供特權代碼使用。

    內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/127537/

    (6)
    詞條目錄
    1. 什么是內存管理
    2. 手動內存管理
    3. 具有虛擬內存的系統
    4. OS/360和后續版本中的內存管理

    輕觸這里

    關閉目錄

    目錄
    91麻精品国产91久久久久