欢迎来到天天文库
浏览记录
ID:51593264
大小:2.95 MB
页数:71页
时间:2020-03-25
《操作系统教程09.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Chapter9:VirtualMemoryBackgroundDemandPagingCopy-on-WritePageReplacementAllocationofFramesThrashingMemory-MappedFilesAllocatingKernelMemoryBackgroundVirtualmemorySeparationofuserlogicalmemoryfromphysicalmemoryOnlypartoftheprograminmemoryLogicaladdressspace>=physicaladdressspaceInmany
2、cases,theentireprogramnotneeded:ErrorcodeArrays,lists&tablesallocatedmorethanneedCertainoptions&featuresofaprogramrarelyusedBackgroundBenefits:ProgramscanbelargerthanphysicalmemoryProgrammersneedn’tcareaboutmemorylimitationsMoreprogramscouldberunsimultaneouslyLessI/Oneeded,eachuserpr
3、ogramwouldrunfasterEasy2sharefilesamongseveralprocessesMoreefficientprocesscreationDrawbacks:VirtualMemoryThatisLargerThanPhysicalMemoryVirtual-addressSpaceSparseaddressspaces(holes)SharedLibraryUsingVirtualMemoryLibrarycanbesharedCommunicationFork()systemcallVirtualMemoryVirtualme
4、morycanbeimplementedvia:DemandpagingPagingondemandDemandsegmentationSegmentingondemandDemandPagingPagingondemandBringapageintomemoryonlywhenitisneededLessI/OneededLessmemoryneededFasterresponseMoreusersLazyswapperneverswapsapageintomemoryunlesspagewillbeneededSwapperthatdealswithpage
5、sisapagerTransferofaPagedMemorytoContiguousDiskSpaceValid-InvalidBitAvalid–invalidbitforeachpagetableentryAllaresettoiinitiallyvin-memory&legalinot-in-memorypagefaultwhenreferencedinvalidreferenceabortnot-in-memorybringtomemoryvvvvii….Frame#valid-invalidbitpagetablePageTableWhe
6、nSomePagesAreNotinMainMemoryPageFaultpagefaultFirstreferencetoapagewilltraptooperatingsystem:InvalidreferenceabortValidbutnotinmemoryFindafreeframe(fromthefreeframelist)SwappageintoframeResetpagetablesSetvalidationbit=vRestarttheinstructionthatcausedthepagefaultStepsinHandlingaPage
7、FaultPageFault(Cont.)RestartinstructionC=A+B1.fetchtheinstruction2.fetchA3.fetchB4.AddAandB5.StorethesuminC(Cnotinmemory)ProblemscanbeignoredRepetition1instructioncauseNpagefaultsPageFault(Cont.)Restartinstruction1instructionmodifyNlocationsE.g.MVC(movecharacter),canmove256bytesBlock
8、smaystraddle
此文档下载收益归作者所有