Fragmentação (computação)
Este artigo não cita fontes confiáveis. (Setembro de 2013) |
Em computação, fragmentação é o desperdício de espaço disponível em memória. Existem dois tipos de fragmentação, a fragmentação interna e a fragmentação externa.
Fragmentação interna
[editar | editar código-fonte]A fragmentação interna é a perda de espaço dentro de uma área de tamanho fixo. Numa memória secundária, ela ocorre quando um arquivo ou fragmento de arquivo não ocupa completamente o espaço da unidade de alocação destinado a ele, causando desperdício de espaço. Cada unidade de alocação não pode comportar fragmentos de arquivos diferentes. Na memória principal, o esquema de particionamento pode ser dinâmico ou fixo. No particionamento dinâmico, cada processo submetido à execução recebe o tamanho necessário para se comportar por completo na memória. Assim, a memória principal é subdividida em segmentos de tamanho variado. No particionamento fixo, a memória é subdividida em blocos de tamanho fixo (iguais ou não) chamados em páginas, blocos ou frames. Quando o processo é submetido à execução, ele é alocado em uma ou mais páginas caso seja maior do que o tamanho de uma página. O sistema operacional deve manter uma estrutura que compreenda quais páginas pertencem à um determinado processo. Portanto, fragmentação interna acontece quando um processo consegue ser de tamanho menor do tamanho de uma página, causando desperdício de espaço. Normalmente o tamanho da página é de 4 KiB.
Fragmentação externa
[editar | editar código-fonte]A fragmentação externa ocorre no particionamento dinâmico. Este tipo de fragmentação começa a acontecer quando os programas forem terminando e deixando espaços cada vez menores na memória, não permitindo o ingresso de novos programas. Para contornar o problema, há algoritmos que movem os segmentos para próximos uns dos outros (compactação), deixando espaço de memória contíguo, não-fragmentado disponível. Há também algoritmos de escolha de espaços vazios para alocar processos como o first-fit(primeiro que couber), best-fit(melhor que couber) e o worst-fit(pior que couber).