SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
1 
Sistemas Operacionais 
Prof. Esp. André Luís Belini 
Bacharel em Sistemas de Informações 
MBA em Gestão Estratégica de Negócios 
2 
Aula 09 
• Gerenciamento de Memória Virtual 
• Paginação 
Capítulo 10 – PLT – Pág. 174 - 214 
3 
Gerenciamento de Memória Virtual 
• Memória virtual é uma tecnica sofisticada e poderosa de 
gerência de memória, onde as memórias principal e 
secundária são combinadas dando ao usuário a ilusão 
de existir uma memória muito maior que a capacidade 
real da memória principal. 
• O conceito de memória virtual fundamenta-se em não 
vincular o endereçamento feito pelo programa dos 
endereços físicos de memória principal. 
• Desta forma, programas e suas estruturas de dados 
deixam de estar limitados ao tamanho da memória física 
disponível, pois podem possuir endereços associados à 
memória secundária. 
• Outra vantagem da técnica de memória virtual é permitir 
um número maior de processos compartilhando a 
memória principal, já que apenas partes de cada 
processo estarão residentes. 
• Isto leva a uma utilização mais eficiente também do 
processador, além de minimizar o problema da 
fragmentação da memória principal. 
• Existe um forte relacionamento entre a gerência de 
memória virtual e a arquitetura de hardware do sistema 
operacional. 
4
2 
5 
Espaço de Endereçamento Virtual 
• O conceito de memória virtual se aproxima muito da 
idéia de um vetor, existente nas linguagens de alto nível. 
• Quando um programa faz referência a um elemento do 
vetor, não há preocupações em saber a posição de 
memória daquele dado. 
• O compilador se encarrega de gerar instruções que 
implementam esse mecanismo, tornando-o totalmente 
transparente ao programador. 
Vetor de 100 posições 
6 
Endereço Físico 
500 
501 
502 
503 
504 
. 
. 
. 
599 
VET [1] 
VET [2] 
VET [3] 
VET [4] 
VET [5] 
. 
. 
. 
. 
. 
. 
VET [100] 
• A memória virtual utiliza abstração semelhante, só que 
em relação aos endereços dos programas e dados. Um 
programa no ambiente de memória virtual não faz 
referência a endereços físicos de memória, mas apenas 
a endereços virtuais. 
• No momento da execução de uma instrução, o endereço 
virtual referenciado é traduzido para um endereço físico, 
pois o processador manipula apenas posições da 
memória principal. 
• O mecanismo de tradução do endereço virtual para 
endereço físico é denominadomapeamento. 
7 
8 
• Como o espaço de endereçamento virtual não tem 
nenhuma relação direta com os endereços no espaço 
real, um programa pode fazer referência a endereços 
virtuais que estejam for a dos limites da memória 
principal, ou seja, os programas e suas estruturas de 
dados não estão mais limitados ao tamanho da memória 
física disponível. 
• Para que isso seja possível, o sistema operacional utiliza 
a memória secundária como extensão da memória 
principal.
3 
Espaço de endereçamento virtual e real 
9 
Espaço de endereçamento virtual 
Espaço de endereçamento real 
Endereço virtual 0 
Endereço virtual 1 
Endereço virtual 2 
Endereço virtual 3 
Endereço virtual 4 
Endereço virtual 5 
. 
. 
. 
Endereço virtual V 
Endereço real 0 
Endereço real 1 
Endereço real 2 
Endereço real 3 
. 
. 
. 
Endereço real R 
10 
Espaço de endereçamento virtual e real 
Espaço de endereçamento virtual 
Espaço de endereçamento real 
Endereço virtual 0 
Endereço virtual 1 
Endereço virtual 2 
Endereço virtual 3 
Endereço virtual 4 
Endereço virtual 5 
. 
. 
. 
Endereço virtual V 
Endereço real 0 
Endereço real 1 
Endereço real 2 
Endereço real 3 
. 
. 
. 
Endereço real R 
11 
• O processador apenas 
executa instruções e 
referencia dados residentes 
no espaço de 
endereçamento real; 
portanto, deve existir um 
mecanismo que transforme 
os endereços virtuais em 
endereços reais. Esse 
mecanismo, conhecido 
como mapeamento, permite 
traduzir um endereço 
localizado no espaço virtual 
para um associado no 
espaço real. 
• 
Mapeamento 
Memória Virtual 
Memória Principal 
Mapeamento 
... 
... 
Tabela de mapeamento 
12 
Espaço de 
endereçamento 
virtual de A 
Endereço virtual 1 
. 
. 
. 
Processo A 
Tabela de 
mapeamento 
de A 
Espaço de 
endereçamento 
virtual de B 
Endereço virtual 1 
. 
. 
. 
Tabela de 
mapeamento 
de B 
Processo B 
Memória Principal
4 
Página real 0 
Página real 1 
Página real R 
13 
Memória Virtual por Paginação 
• A memória virtual por 
paginação é a técnica de 
gerência de memória em 
que o espaço de 
endereçamento virtual e o 
espaço de endereçamento 
real são divididos em blocos 
de mesmo tamanho 
chamados páginas. 
• As páginas no espaço virtual 
são denominadas páginas 
virtuais, enquanto as 
páginas no espaço real são 
chamadas de páginas reais 
ou frames. 
Memória Virtual 
Página virtual 0 
Página virtual 1 
Página virtual 2 
. 
. 
. 
. 
Página virtual V 
Tabela de 
páginas 
ETP 
Memória Principal 
. 
. 
. 
Memória Secundária 
• Quando um programa é executado, as páginas virtuais 
são transferidas da memória secundária para a memória 
principal e colocadas nos frames. Sempre que um 
programa fizer referência a um endereço virtual, o 
mecanismo de mapeamento localizará na ETP (Entrada 
de Tabela de Páginas) da tabela do processo o 
endereço físico do frame no qual se encontra o 
endereço real correspondente. 
14 
15 
Políticas de Busca por Páginas 
• O mecanismo de memória virtual permite a execução de 
um programa sem que seu código esteja completamente 
residente na memória principal. A política de busca de 
páginas determina quando uma página deve ser 
carregada para a memória. 
• Existem basicamente duas estratégias para este 
propósito: paginação por demanda e paginação 
antecipada 
Paginação por Demanda 
• As páginas dos processos são transferidas da memória 
secundária para a principal apenas quando são 
referenciadas. 
• É um mecanismo adequado, pois leva para a memória 
principal apenas as páginas realmente necessárias à 
execução do programa. 
16
5 
17 
Paginação antecipada 
• Na paginação antecipada, o sistema carrega para a 
memória principal as páginas referenciadas e outras 
páginas que podem ou não ser utilizadas ao longo do 
processamento. 
• Vantagem: maior rapidez ao acessar páginas 
referenciadas que já estão na memória ao invés de 
buscá-las na memória secundária. 
• Desvantagem: se as páginas não forem utilizadas, serão 
perdidos recursos de processamento e memória. 
18 
Políticas de Alocação de Páginas 
• A política de alocação de páginas determina quantos 
frames cada processo pode manter na memória 
principal. Existem, basicamente, dois tipos: alocação fixa 
e alocação variável. 
• Na política de alocação fixa, cada processo tem um 
número máximo de frames que pode ser utilizado 
durante a execução do programa. Caso o número de 
páginas reais seja insuficiente, uma página do processo 
deve ser descartada para que uma nova seja carregada. 
• Na política de alocação variável, o número de páginas 
alocadas ao processo pode variar durante sua execução 
em função de sua taxa de paginação e da ocupação da 
memória principal. 
19 
Políticas de Substituição de Páginas 
• Em algumas situações, quando um processo atinge o 
seu limite de alocação de frames e necessita alocar 
novas páginas na memória principal, o sistema 
operacional deve selecionar, dentre as diversas páginas 
alocadas, qual deverá ser liberada. 
• Este mecanismo é chamado de política de substituição 
de páginas. Uma página real, quando liberada por um 
processo, está livre para ser utilizada por qualquer outro 
processo. O mecanismo deve considerar se uma página 
foi ou não modificada antes de liberá-la, caso contrário, 
dados armazenados na página podem ser perdidos. 
Substituição de páginas 
20 
Memória Principal 
Arquivo de 
paginação 
Page out 
Page in
6 
21 
Working Set 
• Apesar de suas diversas vantagens, o mecanismo de 
memória virtual introduz um sério problema. Como cada 
processo possui na memória principal apenas algumas 
páginas alocadas, o sistema deve manter um conjunto 
mínimo de frames buscando uma baixa taxa de 
paginação. 
• Ao mesmo tempo, o sistema operacional deve impedir 
que os processos tenham um número excessivo de 
páginas em memória, de forma a aumentar o grau de 
compartilhamento da memória principal. 
• Caso os processos tenham na memória principal um número insuficiente 
de páginas para a execução do programa, é provável que diversos 
frames referenciados ao longo do seu processamento não estejam na 
memória. Esta situação provoca a ocorrência de um número elevado de 
page faults e inúmeras operações de E/S, levando a um problema 
conhecido como thrashing, provocando sérias consequências ao 
sistema. 
• O working set tem por objetivo reduzir o problema do thrashing e está 
22 
relacionado ao princípio da localidade. 
• Existem dois tipos de localidade que são observados durante a 
execução da maioria dos programas. 
• A localidade espacial é a tendência de que após uma referência a uma 
posição de memória sejam realizadas novas referências a endereços 
próximos. 
• A localidade temporal é a tendência de que após a referência a uma 
posição de memória esta mesma posição seja novamente referenciada 
em um curto intervalo de tempo. 
Princípio da localidade 
• O princípio da localidade significa que o processador tenderá 
a concentrar suas referências a um conjunto de páginas do 
processo durante um determinado período de tempo. 
Imaginando um loop, cujo código ocupe três páginas, a 
tendência dessas três páginas serem referenciadas diversas 
vezes é muito alta. 
23 
Página 0 
Página 1 
Página 2 
Página 3 
Página 4 
Inicialização 
WHILE () DO 
BEGIN 
END; 
Imprime resultados 
24 
Algoritmos de Substituição de Páginas 
• O maior problema na gerência de memória virtual por 
paginação não é decidir quais páginas carregar para a 
memória principal, mas quais liberar. 
• Quando um processo necessita de uma nova página e 
não existem frames disponíveis, o sistema deverá 
selecionar, dentre as diversas páginas alocadas na 
memória, qual deverá ser liberada pelo processo. 
• Os algoritmos de substituição de páginas têm o objetivo 
de selecionar os frames que tenham as menores 
chances de serem referenciados em um futuro próximo.
7 
• A melhor estratégia de substituição de páginas seria 
aquela que escolhesse um frame que não fosse mais 
utilizado no futuro ou levasse mais tempo para ser 
novamente referenciado. 
• O algoritmo de substituição deve tentar manter o 
working set dos processos na memória principal e, ao 
mesmo tempo, não comprometer o desempenho do 
sistema. 
• Os principais algoritmos existentes são: 
25 
26 
Ótimo 
• Seleciona para substituição uma página que não será 
mais referenciada no futuro ou aquela que levará o 
maior intervalo de tempo para ser novamente utilizada. 
• É impossível de ser implementado, haja vista que o S.O. 
não tem como prever o comportamento futuro das 
aplicações. 
• É utilizado apenas como estratégia de comparação para 
os demais algoritmos 
27 
Aleatório 
• Como o nome sugere, não utiliza critério algum de 
seleção. 
• Todas as páginas alocadas na M.P. têm a mesma 
chance de serem selecionadas, inclusive os frames que 
são frequentemente referenciados. 
• Apesar de consumir poucos recursos do sistema é 
raramente implementada, pois é pouco eficiente 
28 
FIFO 
• A página que primeiro foi utilizada será a primeira a ser 
escolhida, ou seja, o algoritmo seleciona a página que 
está há mais tempo na memória principal. 
• O algoritmo pode ser implementado associando-se a 
cada página o momento em que foi carregada para a 
memória ou utilizando-se uma estrutura de fila.
8 
29 
LFU (Least-Frequently Used) 
• O algoritmo LFU seleciona a página menos 
referenciada, ou seja, o frame menos utilizado. Para 
isso, é mantido um contador com o número de 
referências para cada página na M.P. 
• A página que possuir o contador com o menor número 
de referências será escolhida, ou seja, o algoritmo evita 
selecionar páginas que são bastante utilizadas. 
30 
LRU (Least-Recently-Used) 
• O algoritmo LRU seleciona a página na M.P. que está há 
mais tempo sem ser referenciada. 
• Se considerarmos o princípio da localidade, é provável 
que uma página que não foi utilizada recentemente não 
seja referenciada novamente em um futuro próximo. 
31 
NRU (Not-Recently-Used) 
• O algoritmo NRU é bastante semelhante ao LRU, porém 
com menor sofisticação. 
• Para a implementação deste agoritmo é necessário um 
bit adicional, conhecido como bit de referência (BR). 
• O bit indica se a página foi utilizada recentemente e está 
presente em cada entrada da tabela de páginas. 
• Quando uma página é carregada para a M.P., o bit de 
referência é alterado pelo hardware, indicando que a 
página foi referenciada e, periodicamente, o S.O. altera 
o BR para zero, e à medida que as páginas são 
utilizadas, o bit retorna para 1. 
FIFO com buffer de páginas 
• O algoritmo FIFO é de fácil implementação e baixo 
overhead, porém apresenta séria limitação quando 
páginas antigas são constantemente referenciadas. 
• O algoritmo FIFO com buffer de páginas combina uma 
lista de páginas alocadas (LPA) com uma lista de 
páginas livres (LPL). A LPA organiza todas as páginas 
que estão sendo utilizadas na MP, podendo ser 
implementada como uma lista única para todos os 
processos ou uma lista individual para cada processo. 
32
9 
FIFO com buffer de páginas FIFO circular (clock) 
33 
Lista de páginas livres 
início fim 
(a) (c) 
(b) 
fim início 
Lista de páginas alocadas 
• O algoritmo FIFO circular utiliza como base o FIFO, 
porém as páginas alocadas na memória estão em uma 
estrutura circular, semelhante a um relógio. 
Normalmente este mecanismo está presente em 
sistemas Unix. 
34 
P1 
P2 
P3 
P5 P4 
Pn 
BR= 1 
BR= 1 
BR= 0 
página 
mais 
antiga 
(a) 
P1 
P2 
P3 
P5 P4 
Pn 
BR= 0 
BR= 0 
BR= 0 
página 
selecionada 
(b) 
35 
Tamanho da Página 
• A definição do tamanho da página é um fator importante 
no projeto de sistemas que implementam memória 
virtual por paginação. O tamanho da página está 
associado à arquitetura do hardware e varia de acordo 
com o processador, mas normalmente está entre 512 e 
16 M endereços. 
• Algumas arquiteturas permitem a configuração do 
tamanho da página, oferecendo assim maior 
flexibilidade. 
• O tamanho da página tem impacto direto sobre o 
número de entradas na tabela de páginas e, 
consequentemente, no tamanho da tabela e no espaço 
ocupado na memória principal. 
• Por exemplo, uma arquitetura de 32 bits para 
endereçamento e páginas de 4 k endereços, teríamos 
tabelas de páginas de até 220 entradas. 
• Se cada entrada ocupasse 4 bytes, poderíamos ter 
tabelas de páginas de 4 Mb por processo. 
36
10 
• Apesar de páginas grandes tornarem menor o tamanho 
das tabelas de páginas, ocorre o problema da 
fragmentação interna. 
• O principal argumento a favor do uso de páginas 
pequenas é a melhor utilização da memória principal. A 
partir do princípio da localidade, com páginas pequenas 
teríamos na memória apenas as partes dos programas 
com maiores chances de serem executados. 
• Quanto maior o tamanho da página, maiores as chances 
de ter na memória código pouco referenciado, ocupando 
espaço desnecessariamente. 
37 
38 
Página 0 
Página 1 
Página 2 
Página 3 
Página 4 
PROGRAM Frag; 
VAR 
PROCEDURE A; 
END; 
BEGIN 
END. 
Fragmentação 
Fragmentação Interna 
39 
Paginação em múltiplos níveis 
• Em sistemas que implementam apenas um nível de 
paginação, o tamanho das tabelas de páginas pode ser 
um problema. 
• Como já demonstrado, uma arquitetura de 32 bits e 
páginas com 4 k, onde cada entrada na tabela ocupe 4 
bytes, poderia gerar uma tabela de páginas com mais de 
um milhão de entradas. 
• Imaginando vários processos residentes na memória 
principal, manter tabelas desse tamanho para cada 
processo certamente seria de difícil gerenciamento. 
• Uma boa solução para contornar o problema 
apresentado é a utilização de tabelas de páginas em 
múltiplos níveis. A idéia é que o princípio da localidade 
seja aplicado também às tabelas de mapeamento – 
apenas as informações sobre páginas realmente 
necessárias aos processos estariam residentes na M.P. 
40 
0 
1 
2 
(2 -1) 20 
Tabela de páginas 
Endereço Virtual 
NPV Desloc. 
20 bits 12 bits 
32 bits 
4 Mb
11 
41 
Translation Lookaside Buffer 
• A gerência de memória virtual utiliza a técnica de 
mapeamento para traduzir endereços virtuais em 
endereços reais, porém o mapeamento implica pelo 
menos dois acessos à memória principal: o primeiro à 
tabela de páginas e o outro à própria página. 
• Sempre que um endereço virtual precisar ser traduzido, 
a tabela de mapeamento deve ser consultada para se 
obter o endereço do frame e, posteriormente, acessar o 
dado na memória principal. 
• Como a maioria das aplicações referencia um número 
reduzido de frames, somente uma pequena fração da 
tabela de mapeamento é realmente necessária. 
Translation lookaside buffer (TLB) 
42 
Memória principal 
Endereço Virtual 
NPV Desloc. 
Translation Lookaside Buffer (TLB) 
BV Tag End. Físico 
0 
1 
0 
1 
0 
1 
Tabela de mapeamento 
BV End. Físico 
1 
1 
1 
0 
1 
0 
1 
Memória secundária 
• Com base neste princípio, foi introduzida uma memória 
especial chamada de translation lookaside buffer (TLB), 
com o intuito de mapear endereços virtuais em 
endereços físicos sem a necessidade do acesso à 
tabela de páginas. 
• O TLB funciona como uma memória cache, mantendo 
apenas as traduções dos endereços virtuais das páginas 
mais recentemente referenciadas. Em geral, o TLB 
utiliza o esquema de mapeamento associativo, que 
permite verificar simultaneamente em todas as suas 
entradas a presença do endereço virtual. 
43 
44 
Campos da TLB 
Campo Descrição 
Tag Endereço virtual sem o deslocamento 
Modificação Bit que indica se a página foi alterada 
Referência Bit que indica se a página foi recentemente 
referenciada, sendo utilizada para a realocação 
de entradas na TLB 
Proteção Define a permissão de acesso à página 
Endereço físico Posição do frame na memória principal
12 
45 
Proteção de Memória 
• Em qualquer sistema multiprogramável, onde diversas 
aplicações compartilham a M.P., devem existir 
mecanismos para preservar as áreas de memória do S.O. 
e dos diversos processos dos usuários. 
• O S.O. deve impedir que um processo tenha acesso ou 
modifique uma página do sistema sem autorização. 
• Caso uma página do S.O. seja indevidamente alterada, é 
possível que haja uma instabilidade no funcionamento do 
sistema ou sua parada completa. 
• Até mesmo páginas dos processos dos usuários precisam 
ser protegidas contra alteração, como no caso de frames 
contendo código executável. 
• Um primeiro nível de proteção é inerente ao próprio 
mecanismo de memória virtual por paginação. Neste 
esquema, cada processo tem sua própria tabela de 
mapeamento e a tradução dos endereços é realizada 
pelo sistema. Desta forma, não é possível a um 
processo acessar áreas de memória de outros 
processos, a menos que haja compartilhamento explícito 
de páginas entre processos. 
• A proteção de acesso é realizada individualmente em 
cada página da M.P., utilizando-se as entradas das 
tabelas de mapeamento, onde alguns bits especificam 
os acessos permitidos. 
46 
47 
L G 
Endereço da 
página/ segmento 
Proteção para páginas 
Bits de proteção 
LG Descrição 
00 Sem acesso 
10 Acesso de leitura 
11 Acesso para leitura/gravação 
48 
Compartilhamento de Memória 
• Em sistemas que implementam memória virtual, é 
bastante simples a implementação da reentrância, 
possibilitando o compartilhamento de código entre os 
diversos processos. 
• Para isso, basta que as entradas das tabelas de 
mapeamento dos processos apontem para os mesmos 
frames na M.P., evitando, assim, várias cópias de um 
mesmo programa na memória. 
• Apesar dos processos compartilharem as mesmas 
páginas de código, cada um possui sua própria área de 
dados em páginas independentes.
13 
Compartilhamento de memória 
49 
Espaço de 
endereçamento 
virtual de A 
Endereço virtual 1 
. 
. 
. 
Processo A 
Tabela de 
mapeamento 
de A 
Espaço de 
endereçamento 
virtual de B 
Endereço virtual 1 
. 
. 
. 
Tabela de 
mapeamento 
de B 
Processo B 
Memória Principal 
Página 
50 
Memória Virtual por Segmentação 
• Memória virtual por segmentação é a técnica de 
gerência de memória onde o espaço de endereçamento 
virtual é dividido em blocos de tamanhos diferentes 
chamados segmentos. 
• Na técnica de segmentação, um programa é dividido 
logicamente em subrotinas e estruturas de dados, que 
são alocados em segmentos na M.P. 
• Enquanto na técnica de paginação o programa é 
dividido em páginas de tamanho fixo, sem qualquer 
ligação com sua estrutura, na segmentação existe uma 
relação entre a lógica do programa e sua alocação na 
M.P. 
Segmentação 
51 
PROGRAM Segmento; 
VAR A: ARRAY... 
C: ... 
PROCEDURE X; 
END; 
FUNCTION Y; 
END; 
BEGIN 
END. 
Procedimento X 
Programa Principal 
Função Y 
Array A 
Variável C 
. 
. 
. 
52 
Memória Virtual por Segmentação com Paginação 
• Memória virtual por segmentação com paginação é a 
técnica de gerência de memória na qual o espaço de 
endereçamento é dividido em segmentos e, por sua vez, 
cada segmento dividido em páginas. Esse esquema de 
gerência de memória tem o objetivo de oferecer as 
vantagens tanto da técnica de paginação quando da 
técnica de segmentação. 
• Nessa técnica, um endereço virtual é formado pelo 
número do segmento virtual (NSV), um número de 
página virtual (NPV) e um deslocamento.
14 
53 
Memória Virtual por Segmentação com Paginação 
Deslocamento 
Endereço virtual 
Desloc. 
Tabela de segmentos 
End. do segmento 
ETS 
Desloc. 
Segmento na 
memória principal 
Deslocamento 
Endereço físico 
Segmento virtual 
54 
Swapping em Memória Virtual 
• A técnica de swapping também pode ser aplicada em 
sistemas com memória virtual, permitindo aumentar o 
número de processos que compartilham a memória 
principal e, consequentemente, o grau de 
multiprogramação do sistema. 
• Quando existem novos processos para serem 
executados e não há M.P. livre suficiente para alocação, 
o sistema utiliza o swapping, selecionando um ou mais 
processos para saírem da memória e oferecer espaço 
para novos processos. 
Swapping em memória virtual 
55 
Memória Principal 
Processo A 
Processo B 
Processo E 
Processo D 
Processo F Processo C 
Memória Principal 
Processo A 
Processo F 
Processo B 
Processo D 
Processo C 
Processo B 
Arquivo de 
swapping 
Swap out 
Swap in 
Segmentação com paginação 
Segmento virtual 
Endereço virtual 
Deslocamento 
Num. 
segmento 
Num. 
página 
Tabela de segmentos 
ETS 
End. da tabela de páginas 
Tabela de páginas 
ETP 
Endereço do frame 
Endereço do frame Deslocamento 56 
Endereço físico
15 
57 
Thrashing 
• Trashing pode ser definido como sendo a excessiva 
transferência de páginas/segmentos entre a memória 
principal e a memória secundária. Esse problema está 
presente em sistemas que implementam tanto 
paginação como segmentação. 
• O thrashing no sistema ocorre quando existem mais 
processos competindo por memória principal que 
espaço disponível. 
Prof. André Luís Belini 
E-mail: andre.belini@aedu.com 
Blog: http://profandreluisbelini.wordpress.com/

Mais conteúdo relacionado

Mais procurados

Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
Amostra   Resolucao da Prova Sefaz 2007   Prof JaimeAmostra   Resolucao da Prova Sefaz 2007   Prof Jaime
Amostra Resolucao da Prova Sefaz 2007 Prof JaimeWalter Cunha
 
Gerenciamento de memoria
Gerenciamento de memoriaGerenciamento de memoria
Gerenciamento de memoriaJailson Silva
 
Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)Faculdade Mater Christi
 
Sistemas operacionais memória no linux
Sistemas operacionais   memória no linuxSistemas operacionais   memória no linux
Sistemas operacionais memória no linuxCarlos Melo
 
Gerenciamento de Memória
Gerenciamento de MemóriaGerenciamento de Memória
Gerenciamento de Memóriaelliando dias
 
Sistemas Operacionais 13 gerenciamento de memória
Sistemas Operacionais  13   gerenciamento de memóriaSistemas Operacionais  13   gerenciamento de memória
Sistemas Operacionais 13 gerenciamento de memóriaMauro Duarte
 
Memória virtual 2
Memória virtual 2Memória virtual 2
Memória virtual 2jackeline456
 
Gerencia de memoria
Gerencia de memoriaGerencia de memoria
Gerencia de memoria37193694
 
SO-05 Gerenciamento de Memória e Alocação
SO-05 Gerenciamento de Memória e AlocaçãoSO-05 Gerenciamento de Memória e Alocação
SO-05 Gerenciamento de Memória e AlocaçãoEduardo Nicola F. Zagari
 
Aula 9 gerenciamento_memoria (1)
Aula 9 gerenciamento_memoria (1)Aula 9 gerenciamento_memoria (1)
Aula 9 gerenciamento_memoria (1)escoteirodabahia
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3Universal.org.mx
 
2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoria2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoriaComputação Depressão
 
Gerenciamento de Memoria
Gerenciamento de MemoriaGerenciamento de Memoria
Gerenciamento de Memoriaaudineisilva1
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas OperacionaisBia Vieira
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisRonildo Oliveira
 

Mais procurados (20)

Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
Amostra   Resolucao da Prova Sefaz 2007   Prof JaimeAmostra   Resolucao da Prova Sefaz 2007   Prof Jaime
Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
 
Gerenciamento de memoria
Gerenciamento de memoriaGerenciamento de memoria
Gerenciamento de memoria
 
Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)
 
Sistemas operacionais memória no linux
Sistemas operacionais   memória no linuxSistemas operacionais   memória no linux
Sistemas operacionais memória no linux
 
Gerenciamento de Memória
Gerenciamento de MemóriaGerenciamento de Memória
Gerenciamento de Memória
 
Sistemas Operacionais 13 gerenciamento de memória
Sistemas Operacionais  13   gerenciamento de memóriaSistemas Operacionais  13   gerenciamento de memória
Sistemas Operacionais 13 gerenciamento de memória
 
Gerenciamento de memória
Gerenciamento de memóriaGerenciamento de memória
Gerenciamento de memória
 
Memória virtual 2
Memória virtual 2Memória virtual 2
Memória virtual 2
 
Gerencia de memoria
Gerencia de memoriaGerencia de memoria
Gerencia de memoria
 
SO-05 Gerenciamento de Memória e Alocação
SO-05 Gerenciamento de Memória e AlocaçãoSO-05 Gerenciamento de Memória e Alocação
SO-05 Gerenciamento de Memória e Alocação
 
Aula 9 gerenciamento_memoria (1)
Aula 9 gerenciamento_memoria (1)Aula 9 gerenciamento_memoria (1)
Aula 9 gerenciamento_memoria (1)
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3
 
Aula 04-gerenciamento-basico-de-memoria
Aula 04-gerenciamento-basico-de-memoriaAula 04-gerenciamento-basico-de-memoria
Aula 04-gerenciamento-basico-de-memoria
 
2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoria2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoria
 
Gerenciamento de Memoria
Gerenciamento de MemoriaGerenciamento de Memoria
Gerenciamento de Memoria
 
Gerenciamento memoria
Gerenciamento memoriaGerenciamento memoria
Gerenciamento memoria
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas Operacionais
 
Gerenciamento de memoria
Gerenciamento de memoriaGerenciamento de memoria
Gerenciamento de memoria
 
Hardware memória principal
Hardware  memória  principalHardware  memória  principal
Hardware memória principal
 

Destaque

SO-07 Gerenciamento de Memória: Memória Virtual
SO-07 Gerenciamento de Memória: Memória VirtualSO-07 Gerenciamento de Memória: Memória Virtual
SO-07 Gerenciamento de Memória: Memória VirtualEduardo Nicola F. Zagari
 
Pipeline Técnica de processadores.
Pipeline Técnica de processadores.Pipeline Técnica de processadores.
Pipeline Técnica de processadores.Cleber Ramos
 
Sistemas Operacionais Modernos - Gerenciamento de Memória
Sistemas Operacionais Modernos - Gerenciamento de MemóriaSistemas Operacionais Modernos - Gerenciamento de Memória
Sistemas Operacionais Modernos - Gerenciamento de MemóriaWellington Oliveira
 

Destaque (8)

Memória ram aula 3
Memória ram   aula 3Memória ram   aula 3
Memória ram aula 3
 
Memoria virtual - Exposicion
Memoria virtual - ExposicionMemoria virtual - Exposicion
Memoria virtual - Exposicion
 
Introdução ao pipeline
Introdução  ao  pipelineIntrodução  ao  pipeline
Introdução ao pipeline
 
Hierarquia de níveis
Hierarquia de níveisHierarquia de níveis
Hierarquia de níveis
 
SO-07 Gerenciamento de Memória: Memória Virtual
SO-07 Gerenciamento de Memória: Memória VirtualSO-07 Gerenciamento de Memória: Memória Virtual
SO-07 Gerenciamento de Memória: Memória Virtual
 
MIPS Pipeline
MIPS Pipeline MIPS Pipeline
MIPS Pipeline
 
Pipeline Técnica de processadores.
Pipeline Técnica de processadores.Pipeline Técnica de processadores.
Pipeline Técnica de processadores.
 
Sistemas Operacionais Modernos - Gerenciamento de Memória
Sistemas Operacionais Modernos - Gerenciamento de MemóriaSistemas Operacionais Modernos - Gerenciamento de Memória
Sistemas Operacionais Modernos - Gerenciamento de Memória
 

Semelhante a Memoria Virtual - Gerenciamento

Memória Virtual - Aspectos Básicos
Memória Virtual - Aspectos BásicosMemória Virtual - Aspectos Básicos
Memória Virtual - Aspectos Básicosblumenschein
 
7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memória7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memóriaMaria194536
 
Gerência de Memória: Memória Principal
Gerência de Memória: Memória PrincipalGerência de Memória: Memória Principal
Gerência de Memória: Memória PrincipalAlexandre Duarte
 
Aumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinadaAumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinadaHenrique Lima
 
Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosMessias Batista
 
Arquitetura 8 1 - 2012.2
Arquitetura 8   1 - 2012.2Arquitetura 8   1 - 2012.2
Arquitetura 8 1 - 2012.2Paulo Fonseca
 
Arquitetura 8 1 - 2012.2
Arquitetura 8   1 - 2012.2Arquitetura 8   1 - 2012.2
Arquitetura 8 1 - 2012.2Paulo Fonseca
 
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MERRodrigo Kiyoshi Saito
 
Melhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPressMelhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPressJulian Fernandes
 
Apostila computacao
Apostila computacaoApostila computacao
Apostila computacaowebphotoshop
 
Tópicos - Computacao Paralela Programação (Visão geral)
Tópicos - Computacao Paralela Programação (Visão geral)Tópicos - Computacao Paralela Programação (Visão geral)
Tópicos - Computacao Paralela Programação (Visão geral)Luiz Arthur
 
Programação Concorrente - Introdução
Programação Concorrente - IntroduçãoProgramação Concorrente - Introdução
Programação Concorrente - IntroduçãoFabio Moura Pereira
 
Resumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicosResumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicosJoo200
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHPFelipe Ribeiro
 

Semelhante a Memoria Virtual - Gerenciamento (20)

Gestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptxGestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptx
 
Memória Virtual - Aspectos Básicos
Memória Virtual - Aspectos BásicosMemória Virtual - Aspectos Básicos
Memória Virtual - Aspectos Básicos
 
7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memória7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memória
 
Gerência de Memória: Memória Principal
Gerência de Memória: Memória PrincipalGerência de Memória: Memória Principal
Gerência de Memória: Memória Principal
 
355862 slide12-mem virt
355862 slide12-mem virt355862 slide12-mem virt
355862 slide12-mem virt
 
Aumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinadaAumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinada
 
Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - Processos
 
Arquitetura 8 1 - 2012.2
Arquitetura 8   1 - 2012.2Arquitetura 8   1 - 2012.2
Arquitetura 8 1 - 2012.2
 
Arquitetura 8 1 - 2012.2
Arquitetura 8   1 - 2012.2Arquitetura 8   1 - 2012.2
Arquitetura 8 1 - 2012.2
 
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
 
Melhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPressMelhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPress
 
S.o aula 3132
S.o aula 3132S.o aula 3132
S.o aula 3132
 
RAM
RAMRAM
RAM
 
Sistema Operativo 2
Sistema Operativo 2Sistema Operativo 2
Sistema Operativo 2
 
Apostila computacao
Apostila computacaoApostila computacao
Apostila computacao
 
Tópicos - Computacao Paralela Programação (Visão geral)
Tópicos - Computacao Paralela Programação (Visão geral)Tópicos - Computacao Paralela Programação (Visão geral)
Tópicos - Computacao Paralela Programação (Visão geral)
 
Gfs slides
Gfs slidesGfs slides
Gfs slides
 
Programação Concorrente - Introdução
Programação Concorrente - IntroduçãoProgramação Concorrente - Introdução
Programação Concorrente - Introdução
 
Resumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicosResumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicos
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHP
 

Último

GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdfGEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdfElianeElika
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamentalAntônia marta Silvestre da Silva
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptMaiteFerreira4
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....LuizHenriquedeAlmeid6
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxDianaSheila2
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFtimaMoreira35
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números Mary Alvarenga
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memorialgrecchi
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - DissertaçãoMaiteFerreira4
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOAulasgravadas3
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 

Último (20)

GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdfGEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.ppt
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptx
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdf
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memoria
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - Dissertação
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 

Memoria Virtual - Gerenciamento

  • 1. 1 Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios 2 Aula 09 • Gerenciamento de Memória Virtual • Paginação Capítulo 10 – PLT – Pág. 174 - 214 3 Gerenciamento de Memória Virtual • Memória virtual é uma tecnica sofisticada e poderosa de gerência de memória, onde as memórias principal e secundária são combinadas dando ao usuário a ilusão de existir uma memória muito maior que a capacidade real da memória principal. • O conceito de memória virtual fundamenta-se em não vincular o endereçamento feito pelo programa dos endereços físicos de memória principal. • Desta forma, programas e suas estruturas de dados deixam de estar limitados ao tamanho da memória física disponível, pois podem possuir endereços associados à memória secundária. • Outra vantagem da técnica de memória virtual é permitir um número maior de processos compartilhando a memória principal, já que apenas partes de cada processo estarão residentes. • Isto leva a uma utilização mais eficiente também do processador, além de minimizar o problema da fragmentação da memória principal. • Existe um forte relacionamento entre a gerência de memória virtual e a arquitetura de hardware do sistema operacional. 4
  • 2. 2 5 Espaço de Endereçamento Virtual • O conceito de memória virtual se aproxima muito da idéia de um vetor, existente nas linguagens de alto nível. • Quando um programa faz referência a um elemento do vetor, não há preocupações em saber a posição de memória daquele dado. • O compilador se encarrega de gerar instruções que implementam esse mecanismo, tornando-o totalmente transparente ao programador. Vetor de 100 posições 6 Endereço Físico 500 501 502 503 504 . . . 599 VET [1] VET [2] VET [3] VET [4] VET [5] . . . . . . VET [100] • A memória virtual utiliza abstração semelhante, só que em relação aos endereços dos programas e dados. Um programa no ambiente de memória virtual não faz referência a endereços físicos de memória, mas apenas a endereços virtuais. • No momento da execução de uma instrução, o endereço virtual referenciado é traduzido para um endereço físico, pois o processador manipula apenas posições da memória principal. • O mecanismo de tradução do endereço virtual para endereço físico é denominadomapeamento. 7 8 • Como o espaço de endereçamento virtual não tem nenhuma relação direta com os endereços no espaço real, um programa pode fazer referência a endereços virtuais que estejam for a dos limites da memória principal, ou seja, os programas e suas estruturas de dados não estão mais limitados ao tamanho da memória física disponível. • Para que isso seja possível, o sistema operacional utiliza a memória secundária como extensão da memória principal.
  • 3. 3 Espaço de endereçamento virtual e real 9 Espaço de endereçamento virtual Espaço de endereçamento real Endereço virtual 0 Endereço virtual 1 Endereço virtual 2 Endereço virtual 3 Endereço virtual 4 Endereço virtual 5 . . . Endereço virtual V Endereço real 0 Endereço real 1 Endereço real 2 Endereço real 3 . . . Endereço real R 10 Espaço de endereçamento virtual e real Espaço de endereçamento virtual Espaço de endereçamento real Endereço virtual 0 Endereço virtual 1 Endereço virtual 2 Endereço virtual 3 Endereço virtual 4 Endereço virtual 5 . . . Endereço virtual V Endereço real 0 Endereço real 1 Endereço real 2 Endereço real 3 . . . Endereço real R 11 • O processador apenas executa instruções e referencia dados residentes no espaço de endereçamento real; portanto, deve existir um mecanismo que transforme os endereços virtuais em endereços reais. Esse mecanismo, conhecido como mapeamento, permite traduzir um endereço localizado no espaço virtual para um associado no espaço real. • Mapeamento Memória Virtual Memória Principal Mapeamento ... ... Tabela de mapeamento 12 Espaço de endereçamento virtual de A Endereço virtual 1 . . . Processo A Tabela de mapeamento de A Espaço de endereçamento virtual de B Endereço virtual 1 . . . Tabela de mapeamento de B Processo B Memória Principal
  • 4. 4 Página real 0 Página real 1 Página real R 13 Memória Virtual por Paginação • A memória virtual por paginação é a técnica de gerência de memória em que o espaço de endereçamento virtual e o espaço de endereçamento real são divididos em blocos de mesmo tamanho chamados páginas. • As páginas no espaço virtual são denominadas páginas virtuais, enquanto as páginas no espaço real são chamadas de páginas reais ou frames. Memória Virtual Página virtual 0 Página virtual 1 Página virtual 2 . . . . Página virtual V Tabela de páginas ETP Memória Principal . . . Memória Secundária • Quando um programa é executado, as páginas virtuais são transferidas da memória secundária para a memória principal e colocadas nos frames. Sempre que um programa fizer referência a um endereço virtual, o mecanismo de mapeamento localizará na ETP (Entrada de Tabela de Páginas) da tabela do processo o endereço físico do frame no qual se encontra o endereço real correspondente. 14 15 Políticas de Busca por Páginas • O mecanismo de memória virtual permite a execução de um programa sem que seu código esteja completamente residente na memória principal. A política de busca de páginas determina quando uma página deve ser carregada para a memória. • Existem basicamente duas estratégias para este propósito: paginação por demanda e paginação antecipada Paginação por Demanda • As páginas dos processos são transferidas da memória secundária para a principal apenas quando são referenciadas. • É um mecanismo adequado, pois leva para a memória principal apenas as páginas realmente necessárias à execução do programa. 16
  • 5. 5 17 Paginação antecipada • Na paginação antecipada, o sistema carrega para a memória principal as páginas referenciadas e outras páginas que podem ou não ser utilizadas ao longo do processamento. • Vantagem: maior rapidez ao acessar páginas referenciadas que já estão na memória ao invés de buscá-las na memória secundária. • Desvantagem: se as páginas não forem utilizadas, serão perdidos recursos de processamento e memória. 18 Políticas de Alocação de Páginas • A política de alocação de páginas determina quantos frames cada processo pode manter na memória principal. Existem, basicamente, dois tipos: alocação fixa e alocação variável. • Na política de alocação fixa, cada processo tem um número máximo de frames que pode ser utilizado durante a execução do programa. Caso o número de páginas reais seja insuficiente, uma página do processo deve ser descartada para que uma nova seja carregada. • Na política de alocação variável, o número de páginas alocadas ao processo pode variar durante sua execução em função de sua taxa de paginação e da ocupação da memória principal. 19 Políticas de Substituição de Páginas • Em algumas situações, quando um processo atinge o seu limite de alocação de frames e necessita alocar novas páginas na memória principal, o sistema operacional deve selecionar, dentre as diversas páginas alocadas, qual deverá ser liberada. • Este mecanismo é chamado de política de substituição de páginas. Uma página real, quando liberada por um processo, está livre para ser utilizada por qualquer outro processo. O mecanismo deve considerar se uma página foi ou não modificada antes de liberá-la, caso contrário, dados armazenados na página podem ser perdidos. Substituição de páginas 20 Memória Principal Arquivo de paginação Page out Page in
  • 6. 6 21 Working Set • Apesar de suas diversas vantagens, o mecanismo de memória virtual introduz um sério problema. Como cada processo possui na memória principal apenas algumas páginas alocadas, o sistema deve manter um conjunto mínimo de frames buscando uma baixa taxa de paginação. • Ao mesmo tempo, o sistema operacional deve impedir que os processos tenham um número excessivo de páginas em memória, de forma a aumentar o grau de compartilhamento da memória principal. • Caso os processos tenham na memória principal um número insuficiente de páginas para a execução do programa, é provável que diversos frames referenciados ao longo do seu processamento não estejam na memória. Esta situação provoca a ocorrência de um número elevado de page faults e inúmeras operações de E/S, levando a um problema conhecido como thrashing, provocando sérias consequências ao sistema. • O working set tem por objetivo reduzir o problema do thrashing e está 22 relacionado ao princípio da localidade. • Existem dois tipos de localidade que são observados durante a execução da maioria dos programas. • A localidade espacial é a tendência de que após uma referência a uma posição de memória sejam realizadas novas referências a endereços próximos. • A localidade temporal é a tendência de que após a referência a uma posição de memória esta mesma posição seja novamente referenciada em um curto intervalo de tempo. Princípio da localidade • O princípio da localidade significa que o processador tenderá a concentrar suas referências a um conjunto de páginas do processo durante um determinado período de tempo. Imaginando um loop, cujo código ocupe três páginas, a tendência dessas três páginas serem referenciadas diversas vezes é muito alta. 23 Página 0 Página 1 Página 2 Página 3 Página 4 Inicialização WHILE () DO BEGIN END; Imprime resultados 24 Algoritmos de Substituição de Páginas • O maior problema na gerência de memória virtual por paginação não é decidir quais páginas carregar para a memória principal, mas quais liberar. • Quando um processo necessita de uma nova página e não existem frames disponíveis, o sistema deverá selecionar, dentre as diversas páginas alocadas na memória, qual deverá ser liberada pelo processo. • Os algoritmos de substituição de páginas têm o objetivo de selecionar os frames que tenham as menores chances de serem referenciados em um futuro próximo.
  • 7. 7 • A melhor estratégia de substituição de páginas seria aquela que escolhesse um frame que não fosse mais utilizado no futuro ou levasse mais tempo para ser novamente referenciado. • O algoritmo de substituição deve tentar manter o working set dos processos na memória principal e, ao mesmo tempo, não comprometer o desempenho do sistema. • Os principais algoritmos existentes são: 25 26 Ótimo • Seleciona para substituição uma página que não será mais referenciada no futuro ou aquela que levará o maior intervalo de tempo para ser novamente utilizada. • É impossível de ser implementado, haja vista que o S.O. não tem como prever o comportamento futuro das aplicações. • É utilizado apenas como estratégia de comparação para os demais algoritmos 27 Aleatório • Como o nome sugere, não utiliza critério algum de seleção. • Todas as páginas alocadas na M.P. têm a mesma chance de serem selecionadas, inclusive os frames que são frequentemente referenciados. • Apesar de consumir poucos recursos do sistema é raramente implementada, pois é pouco eficiente 28 FIFO • A página que primeiro foi utilizada será a primeira a ser escolhida, ou seja, o algoritmo seleciona a página que está há mais tempo na memória principal. • O algoritmo pode ser implementado associando-se a cada página o momento em que foi carregada para a memória ou utilizando-se uma estrutura de fila.
  • 8. 8 29 LFU (Least-Frequently Used) • O algoritmo LFU seleciona a página menos referenciada, ou seja, o frame menos utilizado. Para isso, é mantido um contador com o número de referências para cada página na M.P. • A página que possuir o contador com o menor número de referências será escolhida, ou seja, o algoritmo evita selecionar páginas que são bastante utilizadas. 30 LRU (Least-Recently-Used) • O algoritmo LRU seleciona a página na M.P. que está há mais tempo sem ser referenciada. • Se considerarmos o princípio da localidade, é provável que uma página que não foi utilizada recentemente não seja referenciada novamente em um futuro próximo. 31 NRU (Not-Recently-Used) • O algoritmo NRU é bastante semelhante ao LRU, porém com menor sofisticação. • Para a implementação deste agoritmo é necessário um bit adicional, conhecido como bit de referência (BR). • O bit indica se a página foi utilizada recentemente e está presente em cada entrada da tabela de páginas. • Quando uma página é carregada para a M.P., o bit de referência é alterado pelo hardware, indicando que a página foi referenciada e, periodicamente, o S.O. altera o BR para zero, e à medida que as páginas são utilizadas, o bit retorna para 1. FIFO com buffer de páginas • O algoritmo FIFO é de fácil implementação e baixo overhead, porém apresenta séria limitação quando páginas antigas são constantemente referenciadas. • O algoritmo FIFO com buffer de páginas combina uma lista de páginas alocadas (LPA) com uma lista de páginas livres (LPL). A LPA organiza todas as páginas que estão sendo utilizadas na MP, podendo ser implementada como uma lista única para todos os processos ou uma lista individual para cada processo. 32
  • 9. 9 FIFO com buffer de páginas FIFO circular (clock) 33 Lista de páginas livres início fim (a) (c) (b) fim início Lista de páginas alocadas • O algoritmo FIFO circular utiliza como base o FIFO, porém as páginas alocadas na memória estão em uma estrutura circular, semelhante a um relógio. Normalmente este mecanismo está presente em sistemas Unix. 34 P1 P2 P3 P5 P4 Pn BR= 1 BR= 1 BR= 0 página mais antiga (a) P1 P2 P3 P5 P4 Pn BR= 0 BR= 0 BR= 0 página selecionada (b) 35 Tamanho da Página • A definição do tamanho da página é um fator importante no projeto de sistemas que implementam memória virtual por paginação. O tamanho da página está associado à arquitetura do hardware e varia de acordo com o processador, mas normalmente está entre 512 e 16 M endereços. • Algumas arquiteturas permitem a configuração do tamanho da página, oferecendo assim maior flexibilidade. • O tamanho da página tem impacto direto sobre o número de entradas na tabela de páginas e, consequentemente, no tamanho da tabela e no espaço ocupado na memória principal. • Por exemplo, uma arquitetura de 32 bits para endereçamento e páginas de 4 k endereços, teríamos tabelas de páginas de até 220 entradas. • Se cada entrada ocupasse 4 bytes, poderíamos ter tabelas de páginas de 4 Mb por processo. 36
  • 10. 10 • Apesar de páginas grandes tornarem menor o tamanho das tabelas de páginas, ocorre o problema da fragmentação interna. • O principal argumento a favor do uso de páginas pequenas é a melhor utilização da memória principal. A partir do princípio da localidade, com páginas pequenas teríamos na memória apenas as partes dos programas com maiores chances de serem executados. • Quanto maior o tamanho da página, maiores as chances de ter na memória código pouco referenciado, ocupando espaço desnecessariamente. 37 38 Página 0 Página 1 Página 2 Página 3 Página 4 PROGRAM Frag; VAR PROCEDURE A; END; BEGIN END. Fragmentação Fragmentação Interna 39 Paginação em múltiplos níveis • Em sistemas que implementam apenas um nível de paginação, o tamanho das tabelas de páginas pode ser um problema. • Como já demonstrado, uma arquitetura de 32 bits e páginas com 4 k, onde cada entrada na tabela ocupe 4 bytes, poderia gerar uma tabela de páginas com mais de um milhão de entradas. • Imaginando vários processos residentes na memória principal, manter tabelas desse tamanho para cada processo certamente seria de difícil gerenciamento. • Uma boa solução para contornar o problema apresentado é a utilização de tabelas de páginas em múltiplos níveis. A idéia é que o princípio da localidade seja aplicado também às tabelas de mapeamento – apenas as informações sobre páginas realmente necessárias aos processos estariam residentes na M.P. 40 0 1 2 (2 -1) 20 Tabela de páginas Endereço Virtual NPV Desloc. 20 bits 12 bits 32 bits 4 Mb
  • 11. 11 41 Translation Lookaside Buffer • A gerência de memória virtual utiliza a técnica de mapeamento para traduzir endereços virtuais em endereços reais, porém o mapeamento implica pelo menos dois acessos à memória principal: o primeiro à tabela de páginas e o outro à própria página. • Sempre que um endereço virtual precisar ser traduzido, a tabela de mapeamento deve ser consultada para se obter o endereço do frame e, posteriormente, acessar o dado na memória principal. • Como a maioria das aplicações referencia um número reduzido de frames, somente uma pequena fração da tabela de mapeamento é realmente necessária. Translation lookaside buffer (TLB) 42 Memória principal Endereço Virtual NPV Desloc. Translation Lookaside Buffer (TLB) BV Tag End. Físico 0 1 0 1 0 1 Tabela de mapeamento BV End. Físico 1 1 1 0 1 0 1 Memória secundária • Com base neste princípio, foi introduzida uma memória especial chamada de translation lookaside buffer (TLB), com o intuito de mapear endereços virtuais em endereços físicos sem a necessidade do acesso à tabela de páginas. • O TLB funciona como uma memória cache, mantendo apenas as traduções dos endereços virtuais das páginas mais recentemente referenciadas. Em geral, o TLB utiliza o esquema de mapeamento associativo, que permite verificar simultaneamente em todas as suas entradas a presença do endereço virtual. 43 44 Campos da TLB Campo Descrição Tag Endereço virtual sem o deslocamento Modificação Bit que indica se a página foi alterada Referência Bit que indica se a página foi recentemente referenciada, sendo utilizada para a realocação de entradas na TLB Proteção Define a permissão de acesso à página Endereço físico Posição do frame na memória principal
  • 12. 12 45 Proteção de Memória • Em qualquer sistema multiprogramável, onde diversas aplicações compartilham a M.P., devem existir mecanismos para preservar as áreas de memória do S.O. e dos diversos processos dos usuários. • O S.O. deve impedir que um processo tenha acesso ou modifique uma página do sistema sem autorização. • Caso uma página do S.O. seja indevidamente alterada, é possível que haja uma instabilidade no funcionamento do sistema ou sua parada completa. • Até mesmo páginas dos processos dos usuários precisam ser protegidas contra alteração, como no caso de frames contendo código executável. • Um primeiro nível de proteção é inerente ao próprio mecanismo de memória virtual por paginação. Neste esquema, cada processo tem sua própria tabela de mapeamento e a tradução dos endereços é realizada pelo sistema. Desta forma, não é possível a um processo acessar áreas de memória de outros processos, a menos que haja compartilhamento explícito de páginas entre processos. • A proteção de acesso é realizada individualmente em cada página da M.P., utilizando-se as entradas das tabelas de mapeamento, onde alguns bits especificam os acessos permitidos. 46 47 L G Endereço da página/ segmento Proteção para páginas Bits de proteção LG Descrição 00 Sem acesso 10 Acesso de leitura 11 Acesso para leitura/gravação 48 Compartilhamento de Memória • Em sistemas que implementam memória virtual, é bastante simples a implementação da reentrância, possibilitando o compartilhamento de código entre os diversos processos. • Para isso, basta que as entradas das tabelas de mapeamento dos processos apontem para os mesmos frames na M.P., evitando, assim, várias cópias de um mesmo programa na memória. • Apesar dos processos compartilharem as mesmas páginas de código, cada um possui sua própria área de dados em páginas independentes.
  • 13. 13 Compartilhamento de memória 49 Espaço de endereçamento virtual de A Endereço virtual 1 . . . Processo A Tabela de mapeamento de A Espaço de endereçamento virtual de B Endereço virtual 1 . . . Tabela de mapeamento de B Processo B Memória Principal Página 50 Memória Virtual por Segmentação • Memória virtual por segmentação é a técnica de gerência de memória onde o espaço de endereçamento virtual é dividido em blocos de tamanhos diferentes chamados segmentos. • Na técnica de segmentação, um programa é dividido logicamente em subrotinas e estruturas de dados, que são alocados em segmentos na M.P. • Enquanto na técnica de paginação o programa é dividido em páginas de tamanho fixo, sem qualquer ligação com sua estrutura, na segmentação existe uma relação entre a lógica do programa e sua alocação na M.P. Segmentação 51 PROGRAM Segmento; VAR A: ARRAY... C: ... PROCEDURE X; END; FUNCTION Y; END; BEGIN END. Procedimento X Programa Principal Função Y Array A Variável C . . . 52 Memória Virtual por Segmentação com Paginação • Memória virtual por segmentação com paginação é a técnica de gerência de memória na qual o espaço de endereçamento é dividido em segmentos e, por sua vez, cada segmento dividido em páginas. Esse esquema de gerência de memória tem o objetivo de oferecer as vantagens tanto da técnica de paginação quando da técnica de segmentação. • Nessa técnica, um endereço virtual é formado pelo número do segmento virtual (NSV), um número de página virtual (NPV) e um deslocamento.
  • 14. 14 53 Memória Virtual por Segmentação com Paginação Deslocamento Endereço virtual Desloc. Tabela de segmentos End. do segmento ETS Desloc. Segmento na memória principal Deslocamento Endereço físico Segmento virtual 54 Swapping em Memória Virtual • A técnica de swapping também pode ser aplicada em sistemas com memória virtual, permitindo aumentar o número de processos que compartilham a memória principal e, consequentemente, o grau de multiprogramação do sistema. • Quando existem novos processos para serem executados e não há M.P. livre suficiente para alocação, o sistema utiliza o swapping, selecionando um ou mais processos para saírem da memória e oferecer espaço para novos processos. Swapping em memória virtual 55 Memória Principal Processo A Processo B Processo E Processo D Processo F Processo C Memória Principal Processo A Processo F Processo B Processo D Processo C Processo B Arquivo de swapping Swap out Swap in Segmentação com paginação Segmento virtual Endereço virtual Deslocamento Num. segmento Num. página Tabela de segmentos ETS End. da tabela de páginas Tabela de páginas ETP Endereço do frame Endereço do frame Deslocamento 56 Endereço físico
  • 15. 15 57 Thrashing • Trashing pode ser definido como sendo a excessiva transferência de páginas/segmentos entre a memória principal e a memória secundária. Esse problema está presente em sistemas que implementam tanto paginação como segmentação. • O thrashing no sistema ocorre quando existem mais processos competindo por memória principal que espaço disponível. Prof. André Luís Belini E-mail: andre.belini@aedu.com Blog: http://profandreluisbelini.wordpress.com/