Escolar Documentos
Profissional Documentos
Cultura Documentos
GerenciamentodeMemriaVirtual AlgoritmosdePaginao
NortonTrevisanRoman MarceloMorandini JUeyama
AlgoritmosdeTrocadePgina
Veremoscadaumem detalhes
AlgoritmosdeTrocadePgina
Algoritmotimo
Retiradamemriaapginaquetemmenoschancede serreferenciada(maiornmerodeinstruesfaltantes)
AlgoritmosdeTrocadePgina
AlgoritmoNotRecentlyUsedPage Replacement(NRU)
ParaauxiliaroS.O.acoletarestatsticasdepgina deuso:
02bitsassociadosacadapginaR(eferenciada)e M(odificada)
Referenciadalidaouescrita Modificadaescrita
4
AlgoritmosdeTrocadePgina
AlgoritmoNotRecentlyUsedPage Replacement(NRU)
ParaauxiliaroS.O.acoletarestatsticasdepgina deuso:
ReMsoatualizadosacadarefernciamemria;
Armazenadosemcadaentradadatabeladepgina Seuvalordeterminadopelohardware
Quandoumprocessoiniciado,ambosReMso 0paratodassuaspginas
Periodicamente,obitRlimpoparadiferenciaras pginasquenoforamreferenciadasrecentemente;
Acadainterrupoderelgio;
5
AlgoritmosdeTrocadePgina
AlgoritmoNotRecentlyUsedPage Replacement(NRU)
Vantagens:
AlgoritmosdeTrocadePgina
AlgoritmoFirstinFirstoutPageReplacement (FIFO)
SOmantmumafiladaspginascorrentesna memria;
Apginadoincioremovida Anovainseridaaofinaldafila
AlgoritmosdeTrocadePgina
AlgoritmodaSegundaChance
FIFO+bitR; InspecionaobitRdapginamaisvelha
AlgoritmosdeTrocadePgina
AlgoritmodaSegundaChance
Ex:
Ocorrepagefaultnotempo20eRA=0
Aremovido,eonovoelementoinseridoaofinal
9
AlgoritmosdeTrocadePgina
AlgoritmodaSegundaChance
Ex:
Ocorrepagefaultnotempo20eRA=1
RA=0agora
RepeteaoperaocomB
SeRB=0,troca Seno,passaaofinaldafila,comRB=0,everificaseC
10
AlgoritmosdeTrocadePgina
AlgoritmodoRelgio
MelhoriaaoSegundaChance:
11
AlgoritmosdeTrocadePgina
AlgoritmodoRelgio
Quandoocorreumpagefault:
Inspecionaseacabeadalista
RC=0
12
AlgoritmosdeTrocadePgina
AlgoritmodoRelgio
Quandoocorreumpagefault:
Inspecionaseacabeadalista SeR=0:
Substituiseapginadacabeapelanovapgina
RC=0
13
AlgoritmosdeTrocadePgina
AlgoritmodoRelgio
Quandoocorreumpagefault:
Inspecionaseacabeadalista SeR=0:
Substituiseapginadacabeapelanovapgina Avanaseacabeaemumaposio
RC=0
14
AlgoritmosdeTrocadePgina
AlgoritmodoRelgio
Quandoocorreumpagefault:
Inspecionaseacabeadalista SeR=1:
Avanaseacabeaemumaposio RepeteseoprocessoatencontrarpginacomR=0
RC=1;RD=0
RC=0;RD=0
15
AlgoritmosdeTrocadePgina
AlgoritmodoRelgio
Quandoocorreumpagefault:
Inspecionaseacabeadalista SeR=1:
RC=1;RD=0
RC=0;RD=0
RC=0;RD=1
16
AlgoritmosdeTrocadePgina
AlgoritmoLeastRecentlyUsedPage Replacement(LRU)
Idia:
Altocusto
AlgoritmosdeTrocadePgina
AlgoritmoLeastRecentlyUsedPage Replacement(LRU)
Podeserimplementadotantoporhardwarequanto porsoftware:
Hardware:MMUdevesuportaraimplementaoLRU;
AlgoritmosdeTrocadePgina
AlgoritmoLeastRecentlyUsedPage Replacement(LRU)
Implementao:
Hardware(Alternativo):
Seocomputadortemnmolduras,ohardwaedeLRUmantm umamatrizdennbits,inicialmentezero
19
AlgoritmosdeTrocadePgina
AlgoritmoLeastRecentlyUsedPage Replacement(LRU)
Implementao:
Hardware(Alternativo):
Pginas:01232
20
AlgoritmosdeTrocadePgina
AlgoritmoLeastRecentlyUsedPage Replacement(LRU)
Implementao:
Hardware(Alternativo):
Ex:
Pginas:01232
Pginas:10323
21
AlgoritmosdeTrocadePgina
AlgoritmoLeastRecentlyUsedPage Replacement(LRU)
Podeserimplementadotantoporhardwarequanto porsoftware:
SoftwareNFU(Notfrequentlyused):
AlgoritmosdeTrocadePgina
AlgoritmoLeastRecentlyUsedPage Replacement(LRU)
Podeserimplementadotantoporhardwarequanto porsoftware:
SoftwareAging:
23
Aging
24
AlgoritmosdeTrocadePgina
AlgoritmoWorkingSet(WS):
Conjuntodepginasqueumprocessoestefetivamente utilizando(referenciando)emumdeterminadotempot;
w(k,t)
WS P1 P3 P4 P7 P8 P4 t1 t2 tempo
25
AlgoritmosdeTrocadePgina
AlgoritmoWorkingSet(WS):
Objetivoprincipal:reduzirafaltadepginas
Umprocessosexecutadoquandotodasaspginas necessriasnotempotestocarregadasnamemria;
Atento,gerarpagefaults
Workingsetw(k,t)
AlgoritmosdeTrocadePgina
AlgoritmoWorkingSet(WS):
Oworkingsetvarialentamentecomotempo
Podemosestimaronmerodepginasnecessrias quandooprogramatrazidododiscocombaseemseu workingsetdequandofoiinterrompido. Prpaginaoconsisteemcarregaressaspginasantes derodarnovamenteoprocesso OSOprecisamanterregistrodequepginasestono workingset. Quandoocorrerumpagefault,encontreumapginafora doworkingsetearemova,casonohajamaisnenhuma molduralivre
27
Implementao:
AlgoritmosdeTrocadePgina
AlgoritmoWorkingSet(WS):
Implementao:
Contaotempoindividualdoprocesso,descontando escalonamentoseutempovirtualcorrente
UtilizabitReotempoderelgio(tempovirtual)daltima vezqueapginafoireferenciada;
28
AlgoritmosdeTrocadePgina
AlgoritmoWorkingSet(WS):
Algoritmo:
Pressupostos:
Emcadapagefault,atabeladepginasinteira buscada
medidaquecadaentradaprocessada,examineR
AlgoritmosdeTrocadePgina
AlgoritmoWorkingSet(WS):
Algoritmo:
Emcadapagefault,atabeladepginasinteira buscada
Senenhumcandidatoforencontrado(todasaspginasestono workingset),substituaapginamaisvelha,dentreascomR=0
30
AlgoritmosdeTrocadePgina
AlgoritmoWorkingSet(WS):
31
AlgoritmosdeTrocadePgina
AlgoritmoWSClock:
AlgoritmosdeTrocadePgina
AlgoritmoWSClock:
Mnomostrado nafigura
Funcionamento:
33
AlgoritmosdeTrocadePgina
AlgoritmoWSClock:
Funcionamento:
SeR=0
Apginasubstituda Acabeadalistaavana
34
AlgoritmosdeTrocadePgina
AlgoritmoWSClock:
Funcionamento:
SeR=0
Se,contudo,apginaestiversujanopossuicpiavlidano disco
Agendaumaescritaaodisco,evitandotrocadeprocesso Avanaacabeadalista,prosseguindodapginaseguinte
35
AlgoritmosdeTrocadePgina
AlgoritmoWSClock:
Funcionamento:
SeR=0
Se,contudo,apginaestiversujanopossuicpiavlidano disco
Agendaumaescritaaodisco,evitandotrocadeprocesso Avanaacabeadalista,prosseguindodapginaseguinte
36
AlgoritmosdeTrocadePgina
AlgoritmoWSClock:
Seacabeaderumavoltacompletanalistasem substituir:
Epelomenosumaescritanodiscofoiagendada
Enenhumaescritafoiagendada
37
AlgoritmosdeTrocadePgina
Algoritmosde substituiolocal:
WorkingSet; WSClock;
ImplementaodaPaginao
Ondecolocaraspginasnodisco,quando retiradasdamemria?
Asoluomaissimplesterumapartioespecial deswap
SoluodoUnixeLinux Nopossuiumsistemadearquivosnormal
39
ImplementaodaPaginao
Ondecolocaraspginasnodisco,quando retiradasdamemria?
Asoluomaissimplesterumapartioespecial deswap
Halgoritmosmelhores,masquenoserodiscutidos
Associadoacadaprocessoestoendereono discodesuareadeswap
Mantidonatabeladeprocessos Clculodoendereoparaescreverumapgina:
Adicioneoendereodoinciodapgina(seuvalornoendereo virtual)aoinciodareadeswapassociadaaoprocesso
40
ImplementaodaPaginao
Ondecolocaraspginasnodisco,quando retiradasdamemria?
Problema:antesdeumprocessoiniciar,areade swapdeveserinicializada
ImplementaodaPaginao
Ondecolocaraspginasnodisco,quando retiradasdamemria?
PossibilidadeA
42
ImplementaodaPaginao
Ondecolocaraspginasnodisco,quando retiradasdamemria?
Problema:antesdeumprocessoiniciar,areade swapdeveserinicializada
PossibilidadeBNadaalocadoantecipadamente.
ImplementaodaPaginao
Ondecolocaraspginasnodisco,quando retiradasdamemria?
PossibilidadeB