- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Chapter 7 記憶體空間的管理(Memory Management) A compiler will typically bind symbolic address to relocatable address. The loader will in turn bind relocatable address to absolute address. Dynamic Loading A routine is not loaded until it is called. Program size may be larger than memory space. Address Binding Dynamic Linking Linking is postponed until execution time. Overlay The routines need not be required at the same time, thus they can be assigned to the same memory location. 邏輯地址空間與實體地址空間(1) 一個儲存在磁碟等輔助記憶體內的可執行模組(Executable Module),它的地址是由0開始算起,它的定址(Addressing)方式是一種相對地址(Relative Address)。 此執行模組之地址空間(Address Space)是一種邏輯地址空間(Logical Address Space)。 當程式擺入主記憶體後,它的地址是在實體地址空間(Physical Address Space)內,而且所參考使用的地址是實體地址(Physical Address)。 邏輯地址空間與實體地址空間(2) 置換出與置換入(1) 主記憶體的容量有限,有可能無法讓所有程式同時載入主記憶體內,這時記憶體管理系統就必須提供置換(Swapping)機制,以便進行置換出(Swap Out)及置換入(Swap In)工作 。 置換出與置換入(2) 置換出有時又被稱為轉出(Roll Out)。 When insufficient main memory is available , one or more jobs may be remove from main memory and swapped onto secondary memory . 程式被置換出後在主記憶體內所留下來的空間,可以供之前被置換出的某個程式擺入,我們稱此動作為置換入或轉入(Roll In)。 When job has completed , the swap out job may be reload into memory . 記憶體管理的策略 記憶體管理的策略(Memory Management Strategies) 找尋策略(Fetch Strategies) 去尋找那些程式必須佔有主記憶體。 Demand fetch Anticipatory(預測) fetch 置放策略(Placement Strategies) 置換策略(Replacement Strategies) 記憶體配置(Storage Allocation) 連續記憶體配置(Contiguous Storage Allocation) 程式載入主記憶體內,它必須佔有連續地址的記憶體。 Each program had to occupy a single contiguous block of storage locations. 不連續記憶體配置(Non Contiguous Storage Allocation) 程式可以被切為幾個區塊(Block),而且這些區塊不必擺在主記憶體內連續位置。 A program is divided into several blocks or segments that may be placed throughout main memory in pieces not necessarily adjacent to one another. 實際記憶體與虛擬記憶體管理 實際記憶體(Real Storage)系統是指,整個程式必須載入主記憶體內連續空間,因此程式大小受限於主記憶體大小。 一個虛擬記憶體(Virtual Memory)系統是指,程式採用不連續記憶體配置,且僅需將程式的部份區塊擺入主記憶體內執行;也因此程式的邏輯地址空間可以大於主記憶體的實體地址空間。 虛擬記憶體(Virtual Storage) 記憶體管理方法 實際記憶體管理方法 單一分割法(Single Partition) 絕對固定分割法(Absolute Fixed Partit
文档评论(0)