Gerencia de memoria

1.947 visualizações

Publicada em

Gerência de memória

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.947
No SlideShare
0
A partir de incorporações
0
Número de incorporações
114
Ações
Compartilhamentos
0
Downloads
101
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Gerencia de memoria

  1. 1. GERÊNCIA DE MEMÓRIAA gerência de memória do Sistema Operacional tema função de fazer com que os processoscompartilhem da memória de forma segura eeficiente.
  2. 2. MEMÓRIA LÓGICA• É aquela que o processo é capaz de endereçar e acessar usando as suas instruções.
  3. 3. MEMÓRIA FÍSICA• É usada para endereçar os circuitos integrados de memória, ou seja, implementado pelos circuitos de memória.
  4. 4. • O espaço de endereçamento lógico de um processo é formado por todos os endereços lógicos que este processo pode gerar;• O espaço de endereçamento físico é formado por todos os endereços aceitos pelos circuitos de memória;• O endereço lógico é transformado através da gerência de memória em endereço físico.
  5. 5. Processador Endereço Lógico MMU Endereço Físico MemóriaUnidade de gerência de memória – MemoryManagement Unit, MMU- é o componente dohardware responsável por prover os mecanismosbásicos que serão usados pelo sistemaoperacional para gerenciar a memória.A MMU é que irá mapear os endereços lógicosgerados pelos processos nos correspondentesendereços físicos que serão enviados para amemória.
  6. 6. PARTIÇÕES FIXAS• As partições fixas é a forma mais simples degerência de memória para a multiprogramação.
  7. 7. • Há desvantagens com este tipo de gerência dememória, que são:- Fragmentação interna- acontece quando oprograma é carregado em uma partição maior queo necessário;- Fragmentação externa- acontece quando temosduas partições livres, uma de 25 e 100 kbytes,então, estaremos executando um programa de 110Kbytes, a memória total livre é de 125 Kbytes. Masela não é contígua.
  8. 8. PARTIÇÕES VARIÁVEIS• Os sistemas operacionais implementam, basicamente, quatro estratégias para determinar em qual partição livre um programa será carregado para execução.Essas estratégias tentam evitar, ou diminuir, o problema da fragmentação antes que ela ocorra.
  9. 9. Memória Principal Sistema Operacional Área livre 1 4 kbÁreas Livres Tamanho Programa C1 1 Kb2 5 Kb Área livre 2 5 kb Programa A3 3 Kb Área livre 3 3 kb
  10. 10. • Quando empregamos a técnica de partições variáveis, o tamanho das partições é ajustado automaticamente as necessidades apresentadas pelo programa;• A lista de lacunas, que é espaços livres na memória física, quando usada em um processo ele percorre a lista, será usado um tamanho de lacuna maior ou igual ao programa.
  11. 11. Há quatro maneiras de percorrer a lista até encontrar um lacuna de tamanho eficiente, que são:• BEST FIT Esse mecanismo escolhe a melhor partição (bestfit), ou seja, aquela em que o processo deixa o menor espaço sem utilização;• WORST FIT Esse mecanismo escolhe a pior partição (worstfit), ou seja, aquela em que o processo deixa o maior espaço sem utilização;
  12. 12. • FIRST FIT Esse mecanismo escolhe a primeira partição (firstfit) livre, de tamanho suficiente para carregar o processo;• CIRCULAR FIT Inicia a procura por lacunas após a última sobra.
  13. 13. • Alguns sistemas organizam a memória em blocos de 32 bytes, os blocos são chamados de parágrafos e a unidade de alocação passa a ser ele;• O processo vai então possuir um número fixo de parágrafos, ou seja, um múltiplo de 32 bytes.
  14. 14. SWAPPING• Resolver o problema de insuficiência de memória para todos os usuários;• O swapping é uma técnica aplicada à gerência de memória, para processos que esperam por memória livre para serem processadas. O sistema escolhe um processo residente que é levado da memória para o disco (swapped out), retornando posteriormente para a memória principal (swapped in), como se nada tivesse ocorrido.
  15. 15. Memória Principal Memória PrincipalSistema Operacional Sistema OperacionalPrograma A B Swapping out Programa APrograma B Programa HPrograma E Programa EPrograma G Área livre Swapping B
  16. 16. • Seu maior problema é o custo das operações de entrada e saída.• Vantagens: - Maior compartilhamento da memória - Maior troughput - Eficiente• Desvantagens: - Elevados custos das operações de entrada e saída.
  17. 17. PAGINAÇÃO A paginação permite que o programa possa ser espalhado por áreas não contíguas de memória.• O espaço de endereçamento lógico de um processo é dividido em páginas lógicas de tamanho fixo;• Memória física é dividida em páginas com tamanho fixo, com tamanho igual ao da página lógica;• Um programa é carregado página por página, a página lógica do processo ocupa uma página física da memória física.
  18. 18. • Tabela de páginas é montada durante o processo, sua função é informar para cada pagina lógica sua pagina física correspondente;• Não existe fragmentação externa, pois cada pagina lógica pode ser carregada em qualquer página física livre.
  19. 19. O endereço lógico de Y2 – 001 01 passa pelatabela de páginas e cria-se seu endereço físico-101 01.
  20. 20. • Existe fragmentação interna (se um programa de 500Kb é carregado na memória e as páginas são de tamanho 7Kb, ele será alocado em 71 páginas sobrando 3Kb de fragmentação);• Quando usamos páginas grandes significa que o processo terá menos páginas, tabela de páginas será menor, a leitura de disco será mais eficiente.
  21. 21. • O tamanho das páginas é fixado pelo hardware que suporta a gerencia de memória, ou seja, a MMU;• A gerência de memória deve controlar as áreas livres da memória, as áreas são representadas através de um mapa de bits , onde 0 representa um página livre e 1 uma pagina ocupada.
  22. 22. Carregar/Remover Página:• O maior problema do gerenciamento de memória não é decidir que página carregar, mas sim, qual página deve ser removida da memória.
  23. 23. Estratégias para realocação de páginas:1 – ALEATÓRIA: não utiliza nenhum critério de seleção, todas as páginas possuem a mesma chance;2 – FIFO: a página que entrar primeiro vai ser a primeira a sair;3 – LRU: seleciona a página que está a mais tempo sem ser referenciada;4 – LFU: seleciona a página menos freqüentemente usada.
  24. 24. Tamanho da página:• A fragmentação é conseqüência do tamanho da página, páginas pequenas diminuem a fragmentação, mas aumenta o acesso a memória secundária.
  25. 25. SEGMENTAÇÃO• O conceito de página, fundamental para a paginação, é uma criação do sistema operacional para facilitar a gerência de memória;• Programadores e compiladores não enxergam a memória lógica dividida em páginas, mas sim em segmentos.
  26. 26. • Um programa dividi-se em quatro segmentos: – código; – dados alocados estaticamente; – dados alocados dinamicamente; – pilha de execução.
  27. 27. SEGMENTAÇÃO PAGINADA• Segmentos grandes podem não caber na Memória;• Espaço lógico é formado por segmentos;• Cada segmento é dividido em páginas lógicas;• Cada segmento possui uma tabela de página: usada para mapear o endereço de página lógica do segmento em endereço de página física;
  28. 28. Obtém na tabelade segmentoso endereço da Da tabela detabela de páginas páginas obtémpara aquele o endereçosegmento; físico.

×