A segmentação é uma técnica de gerência de memória, onde os
processos são divididos logicamente em sub-rotinas e estruturas
de dados, e colocados em blocos de informações na memória.
Cada processo é dividido em um número de segmentos de tamanho desigual (limitado pelo tamanho máximo). Um processo é carregado na memória, todos os seus segmentos são carregados dentro de partições dinâmicas que não necessitam ser continuas.
| Exemplo de Segmentação Fonte da Imagem:Sistemas Operacionais - Gerenciamento de Memória Virtual Cap.7 |
A grande diferença entre a paginação e a segmentação é que,
enquanto a primeira divide a memória em partes de tamanho fixos,
sem qualquer ligação com a estrutura do processo, a segmentação
permite uma relação entre a lógica do processo e sua divisão na
memória.
Prós - Não tem fragmentação externa
Contras - Tem uma pequena quantidade de fragmentação externa e é um processo muito complexo.
Como o S.O. controla os segmentos alocados?
O S.O. mantém uma tabela com áreas livres e ocupadas da
memória.Quando um novo processo é carregado para a memória, o sistema localiza um espaço livre que o acomode.
As estratégias para escolha da área livre podem ser as mesmas
utilizadas na Alocação Particionada Dinâmica, ou seja, best fit,
worst fit ou first fit(para saber mais sobre isso clique aqui).
| Tabela de Segmento Fonte da Imagem:Sistemas Operacionais - Gerenciamento de Memória Virtual Cap.7 |
Os segmentos são mapeados através de tabelas de mapeamento
de segmentos (TMS).Os endereços são compostos pelo número do segmento e um deslocamento dentro do segmento.
O número do segmento identifica unicamente uma entrada na
tabela de segmentos (ETS), onde estão as informações sobre o
segmento na memória real.
Fonte:<Sistemas Operacionais - Gerenciamento de Memória Virtual Cap.7{Luciana Sêda Cardoso}>
<Memória Virtual - FATEC Americana { prof. Dr. José Luis Zem
prof. Dr. Renato Kraide Soffner
prof. Ms. Rossano Pablo Pinto }>
Adaptado: Arroyo, Gabriel.


Nenhum comentário:
Postar um comentário