記憶體管理系統需求
記憶體被認為是作業系統儲存和訪問資料的主要部分。在主記憶體空間有限且多使用者環境下需要更多切換操作的情況下,記憶體管理是一項複雜的任務,由作業系統執行。它的功能是管理處於就緒、等待或執行狀態的程序的狀態,並根據每個程序的完成情況分配或釋放記憶體位置。每個程序都被分配到特定的記憶體位置,其狀態在記憶體管理系統中被監控和更新。在多程式設計環境中,作業系統將記憶體細分為多個程序以同時執行其功能,在此階段需要適當的記憶體管理,以確保處理器不會進入空閒狀態。
記憶體管理有兩種不同的方案來儲存系統中的資料。連續方法,其中程序被分配到固定大小的記憶體塊,具有較大的大小並存儲在具有連續地址的記憶體位置;而非連續方法,程序儲存在位於不同記憶體部分的不同塊中,不需要連續,這似乎是一種有效的技術,因為它只在需要時才使用記憶體空間。
記憶體管理需求
記憶體管理系統需要一些基本的處理和儲存需求,如下所述。
記憶體共享
在多程序環境中,所有程序都訪問主記憶體的同一部分。在此共享過程中需要保護措施,由記憶體管理負責。這種共享方法是有利的,因為每個程序不需要建立單獨的副本,因為它們可以訪問記憶體中已有的共享副本。共享記憶體在程序間通訊方法中被認為是一種有效的方法。
記憶體保護
處理器必須滿足保護機制,以避免其他未經授權的程序對位於共享記憶體空間中的同一檔案執行寫操作。這必須由系統處理器控制,而不是安裝的作業系統,因為作業系統具有控制佔用程序的功能,從而檢查有效記憶體的引用。簡單來說,保護是保護記憶體免受未經授權的程序訪問的方法。
地址對映/重定位 −
在程序執行期間,使用者可能不知道駐留在主記憶體中的其他程式,這裡發生磁碟交換,它返回到主記憶體,但位置不同。重定位發生在交換之後,因為程序已駐留的先前記憶體位置現在將由另一個程序使用。一旦程序載入到記憶體中,必須從邏輯地址轉換為物理地址,這是由關聯程序和作業系統完成的。物理地址包含與重定位暫存器相關的邏輯地址和內容的組合。
邏輯定址 −
儲存在記憶體單元中的程式被組織成模組,這些模組是可修改的,具有讀和執行許可權,但一些模組沒有修改許可權。位元組序列或其他形式的字是主記憶體的表示形式,它是線性的,本質上具有一維地址空間。如上所述,邏輯地址由 CPU 在程序執行時生成。作為輸入給出的使用者程式被劃分為獨立編譯的模組,並在系統執行時對其引用進行定址。保護可以在駐留不同模組的邏輯空間的每個級別上有所不同。
物理空間 −
眾所周知,系統記憶體有兩個部分:主記憶體和輔助記憶體。主記憶體(易失性)能夠以更好的效能儲存和處理當前正在執行的程式,而輔助記憶體(充當非易失性)支援長期儲存資料,但與主記憶體相比,效能較低。資訊流和交換過程對於使用者來說似乎是一項困難的任務。
當主記憶體和要儲存的資料不足時,使用者可以採用覆蓋方法。此方法允許將使用者程式的各種模組分配到相同的記憶體空間。主要缺點是在多程式設計環境中,使用者在程式執行期間不知道記憶體空間及其位置的詳細資訊。
結論
因此,記憶體管理系統在程序執行和空閒階段控制和管理可用和空閒空間。還根據使用者的請求動態分配記憶體,並在不需要時釋放未使用的記憶體。該系統應管理上述要求,以有效地儲存和處理使用者程式。