gerência de memória -...
TRANSCRIPT
![Page 2: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/2.jpg)
Sistemas [email protected]
Gerência de Memória
● A memória principal (RAM) é um recurso importante, e deve ser gerenciado com cuidado● Nossos computadores pessoais possuem memória
milhares de vezes maior que a dos maiores supercomputadores da década de 60
● Contudo os programas continuam a ficar maiores, e mais “famintos” por memória
Como o SO realiza este gerenciamento ?
![Page 3: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/3.jpg)
Sistemas [email protected]
Gerência de Memória
● Introdução● Para todo programador o
computador ideal possui memória totalmente disponível aos seus programas, infinitamente grande e rápida, e que não perca nenhum dado, caso ocorra algum bug ou o computador seja acidentalmente desligado
![Page 4: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/4.jpg)
Sistemas [email protected]
Gerência de Memória
● Introdução● Além dos requisitos
anteriores, porque não torna-la barata, ou quase gratuita…
● O fato é que tal memória não existe (mantemos a esperança de que alguém aqui vai descobrir como fabricá-la)…
![Page 5: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/5.jpg)
Sistemas [email protected]
Gerência de Memória
● Introdução● A alternativa realística, ao longo dos anos, tem sido
criar uma hierarquia de memória com– Poucos megabytes de memória extremamente rápida,
muito cara e volátil. (Cache)– Poucos gigabytes de memória com velocidade e preços
médios, mas ainda volátil. (RAM)– Poucos terabytes (ou muitos gigabytes) de memória
lenta, barata e não volátil. (Discos Rígidos)
![Page 6: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/6.jpg)
Sistemas [email protected]
Gerência de Memória
● Introdução● É trabalho do sistema operacional abstrair esta
hierarquia, tornando o uso das diferentes memórias “transparentes” para o usuário
● Duas funções principais do SO estão ligados ao gerenciamento desta hierarquia – Gerenciamento de memória (que estudaremos agora)– Sistemas de arquivos (que estudaremos em breve)
![Page 7: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/7.jpg)
Sistemas [email protected]
Gerência de Memória
● Introdução● O gerenciamento de
memória deve– Manter o controle de quais
partes, de quais memórias, estão livres e ocupadas
– Alocar memória a processos, quando eles necessitarem
– Desalocar a memória, quando eles não precisarem mais
![Page 8: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/8.jpg)
Sistemas [email protected]
Gerência de Memória
● Sistemas sem abstração (ou gerência) de memória● Computadores da década de 60, 70 e o IBM-PC,
com sistema operacional MS-DOS realizavam pouca, ou nenhuma gerência de memória– Cada programa “avistava” todos os registradores, cache
(se houvesse) e memória RAM– Normalmente estes sistemas executavam um programa
por vez, que podia utilizar toda a memória RAM
![Page 9: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/9.jpg)
Sistemas [email protected]
Gerência de Memória
● Sistemas sem abstração (ou gerência) de memória● Atualmente voltamos a ter sistemas com esta
abordagem em tocadores de mídia, eletrodomésticos, celulares simples etc
![Page 10: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/10.jpg)
Sistemas [email protected]
Gerência de Memória
● Espaços de endereçamento● Expor a memória física aos processos possui
algumas desvantagens– Cada processo pode utilizar toda a memória, ocupando
até mesmo a utilizada pelo próprio SO (o que irá resultar em um “travamento”)
– Fica complicado, ou impossível, implementar multiprogramação, essencial nos computadores desktop, servidores, computadores de grande porte etc
![Page 11: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/11.jpg)
Sistemas [email protected]
Gerência de Memória
● Espaços de endereçamento● Para permitir a multiprogramação, dois problemas
devem ser resolvidos– Proteção: garante que processos não irão interferir na
memória utilizada por outros, ou pelo próprio SO– Relocação: permite que um programa possa ser
“carregado” em qualquer local da memória física
![Page 12: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/12.jpg)
Sistemas [email protected]
Gerência de Memória
● Espaços de endereçamento● Criam uma espécie de memória abstrata (ou virtual)
para os processos– São representados por um conjunto de endereços
(virtuais) que cada processo pode utilizar para acessar a sua memória (real)
– Cada processo possui seu próprio espaço de endereçamento, independente do pertencente aos outros processos
![Page 13: Gerência de Memória - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/...media=user:1379492:sistemas_operacionais:7... · Sistemas Operacionais carlos.rocha@ifrn.edu.br Gerência de Memória](https://reader035.vdocuments.pub/reader035/viewer/2022062306/5c0d0c5409d3f217548cfe1e/html5/thumbnails/13.jpg)
Sistemas [email protected]
Gerência de Memória
● Swap● O total de memória RAM necessária para todos os
processos é frequentemente maior que a RAM– A estratégia atual utilizada por sistemas operacionais
como Windows, Linux, Mac OS X, permite que parte de cada processo esteja na memória RAM, e outra em uma partição ou arquivo especial do disco rígido
– A escolha de quais partes de quais processos serão mantidas no disco é de grande importância para o desempenho da máquina
– Esta técnica é conceitualmente chamada de memória virtual, e popularmente de swap