Paginação em Sistema Operacional (SO): O que é, Vantagens, Exemplo

O que é paginação no sistema operacional?

Paging é 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 Paging, a memória principal é dividida em pequenos blocos de memória física de tamanho fixo, chamados de frames. O tamanho de um quadro deve ser mantido igual ao de uma página para aproveitar ao máximo a memória principal e evitar 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

Por exemplo, se o tamanho da memória principal for 16 KB e o tamanho do quadro for 1 KB. Aqui, a memória principal será dividida no conjunto de 16 frames de 1 KB cada.

Existem 4 processos separados no sistema: A1, A2, A3 e A4 de 4 KB cada. Aqui, todos os processos são divididos em páginas de 1 KB cada para que o sistema operacional possa armazenar uma página em um quadro.

No início do processo, todos os frames permanecem vazios para que todas as páginas dos processos sejam armazenadas de forma contígua.

Exemplo de paginação no sistema operacional

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.

Exemplo de paginação no sistema operacional

Neste exemplo, você pode ver que existem oito quadros não contíguos disponíveis na memória, e a paginação oferece a flexibilidade de armazenar o processo em diferentes locais. Isso nos permite carregar as páginas do processo A5 em vez de A2 e A4.

O que é proteção de paginação?

O processo de paginação deve ser protegido utilizando o conceito de inserção de um bit adicional denominado bit Válido/Inválido. Paginação A proteção da memória na paginação é obtida associando bits de proteção a cada página. Esses bits estão associados a cada entrada da tabela de páginas e especificam a proteção na página correspondente.

Vantagens da paginação

Aqui estão as vantagens de usar o método Paging:

  • Fácil de usar gerenciamento de memória algoritmo
  • Não há necessidade de fragmentação externa
  • A troca é fácil entre páginas e molduras de páginas de tamanhos iguais.

Desvantagens da paginação

Aqui estão as desvantagens/contras 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?

O método de segmentação funciona quase de forma semelhante à paginação, a única diferença entre os dois é que os segmentos têm comprimento variável, enquanto no método de paginação as páginas são sempre de tamanho fixo.

Um segmento de programa inclui a função principal do programa, estruturas de dados, funções utilitárias, etc. O sistema operacional mantém uma tabela de mapa de segmentos para todos os processos. Também inclui uma lista de blocos de memória livres junto com seu tamanho, números de segmento e locais de memória na memória principal ou memória virtual.

Vantagens da segmentação

Aqui estão os prós/benefícios da segmentação

  • Ofereça proteção dentro dos segmentos
  • Você pode conseguir o compartilhamento por segmentos que fazem referência a vários processos.
  • Não oferece fragmentação interna
  • As tabelas de segmentos usam menos memória que a paginação

Desvantagens da segmentação

Aqui estão os contras/desvantagens da segmentação

  • No método de segmentação, os processos são carregados/removidos da memória principal. Portanto, o espaço de memória livre é separado em pequenos pedaços o que pode criar um problema de fragmentação externa
  • Algoritmo caro de gerenciamento de memória

Resumo

  • A paginação é um mecanismo de armazenamento que permite OS para recuperar processos do armazenamento secundário para a memória principal na forma de páginas.
  • O processo de paginação deve ser protegido utilizando o conceito de inserção de um bit adicional denominado bit Válido/Inválido.
  • A maior vantagem da paginação é que é fácil usar o algoritmo de gerenciamento de memória
  • A paginação pode causar fragmentação interna
  • O método de segmentação funciona quase de forma semelhante à paginação, a única diferença entre os dois é que os segmentos têm comprimento variável, enquanto no método de paginação as páginas são sempre de tamanho fixo.
  • Você pode conseguir o compartilhamento por segmentos que fazem referência a vários processos.
  • Segmentação é um algoritmo de gerenciamento de memória caro