Paginação OperaSistema (SO): O que é, Vantagens, Exemplo
⚡ Resumo Inteligente
A paginação é uma técnica de gerenciamento de memória que armazena processos em páginas de tamanho fixo e os carrega em quadros de memória física de tamanho igual, permitindo que o sistema operacional use memória não contígua, evite a fragmentação externa e acesse os dados mais rapidamente.
O que é paginação no sistema operacional?
Paging A paginação é um mecanismo de armazenamento que permite ao sistema operacional recuperar processos do armazenamento secundário para a memória principal na forma de páginas. No método de paginação, a memória principal é dividida em pequenos blocos de memória física de tamanho fixo, chamados de frames. O tamanho de um frame é mantido igual ao de uma página para maximizar a utilização da memória principal e evitar a fragmentação externa. A paginação é usada para acesso mais rápido aos dados e é um conceito lógico.
Exemplo de paginação no sistema operacional
Para entender como as páginas são mapeadas para os frames, considere um exemplo simples. Se o tamanho da memória principal for de 16 KB e o tamanho do frame for de 1 KB, então a memória principal será dividida em uma coleção de 16 frames de 1 KB cada.
Existem 4 processos separados no sistema, denominados A1, A2, A3 e A4, cada um com 4 KB. Aqui, todos os processos são divididos em páginas de 1 KB cada, de forma que o sistema operacional possa armazenar uma página em um único quadro.
No início do processo, todos os frames permanecem vazios, portanto todas as páginas dos processos são armazenadas de forma contígua.
Neste exemplo, você pode ver que A2 e A4 são movidos para o estado de espera após algum tempo. Portanto, oito quadros ficam vazios e outras páginas podem ser carregadas nesses blocos vazios. O processo A5, de tamanho 8 páginas (8 KB), está aguardando na fila de prontos.
Agora, há oito quadros não contíguos disponíveis na memória, e a paginação oferece a flexibilidade de armazenar o processo em locais diferentes. Isso permite que o sistema operacional carregue as páginas do processo A5 no lugar de A2 e A4.
O que é proteção de paginação?
O processo de paginação é protegido pela inserção de um bit adicional chamado bit de validade/invalidade. A proteção de memória na paginação é obtida associando bits de proteção a cada página. Esses bits são associados a cada entrada da tabela de páginas e especificam a proteção permitida na página correspondente.
Vantagens da paginação
Eis as vantagens de usar o método de paginação:
- É um fácil de usar gerenciamento de memória algoritmo.
- Não há necessidade de fragmentação externa.
- Swapping É fácil alternar entre páginas e molduras de página de tamanho igual.
Desvantagens da paginação
Aqui estão as desvantagens e os pontos negativos da paginação:
- Pode causar fragmentação interna.
- As tabelas de páginas consomem memória adicional.
- A paginação multinível pode causar sobrecarga de referência de memória.
O que é segmentação?
A segmentação funciona de maneira muito semelhante à paginação. A única diferença entre as duas é que os segmentos têm comprimento variável, enquanto no método de paginação as páginas têm sempre um tamanho fixo.
Um segmento de programa inclui a função principal do programa, estruturas de dados, funções utilitárias e assim por diante. O sistema operacional mantém uma tabela de mapeamento de segmentos para todos os processos. Ela também inclui uma lista de blocos de memória livres, juntamente com seus tamanhos, números de segmento e endereços de memória na memória principal ou memória virtual.
Vantagens da segmentação
Aqui estão as vantagens e os benefícios da segmentação:
- Oferece proteção dentro dos segmentos.
- É possível obter compartilhamento fazendo com que os segmentos referenciem vários processos.
- Não causa fragmentação interna.
- As tabelas de segmentos usam menos memória do que a paginação.
Desvantagens da segmentação
Aqui estão as desvantagens e os inconvenientes da segmentação:
- No método de segmentação, os processos são carregados e removidos da memória principal. Portanto, o espaço de memória livre é dividido em pequenos fragmentos, o que pode gerar um problema de fragmentação externa.
- É um algoritmo de gerenciamento de memória dispendioso.



