Memória - Gerenciador de alocação de dados
Todos os dados e programas que são executados ou referenciados pelo processador estão na memória principal. A organização da memória principal se faz necessária porque todo processo que vai ser executado e está na memória secundária precisa ser carregada na memória principal.
Memória principal - Tipos básicos
DRAM - Dynamic random acess memory
SRAM - Static random acess memory chips (não-voláteis)
EPROM - Erasable programmable read-only memory
PROM - Apenas escritas 1x
FLASH - Memory chips offer extremely fast acess times, low power consumption, do not need a constant power supply
Alocação contígua e a alocação particionada
nos primeiros sistemas operacionais criados foi implantada a alocação contígua simples e hoje em dia é chamada em sistemas mono-programáveis. Na alocação simples, a memória principal é dividida em uma parte para i sistema operacional e outra para o programa do usuário.
Alocação contígua
Na alocação contígua simples a memória principal pode ser controlada pelo usuário, podendo acessar qualquer parte dela. O sistema operacional é protegido por meio de um registrado que limita as áreas que o usuário pode acessar, senão o usuário pode até destruir o sistema operacional achando que está fazendo algo correto, mas com consequências terríveis.
Na alocação contígua simples o processador e a memória principal não são usados com muita eficiência e ainda existe um vazio na parte que um programa não consegue preencher dessa memória.
Anteriormente, os primeiros programas eram limitados de acordo com o tamanho da memória principal disponível. Isso limitava os programas, e para solucionar esse problema começaram a ser divididos em partes, chamados de módulos. Cada parte podia ser executada independentemente da outra e usando a mesma memória.
Alocação particionada
Vamos entender um pouco de como funciona a alocação particionada. Na multiprogramação, enquanto um processo aguarda outros processos podem ser executados pela CPU. A memória principal é organizada de maneira que atenda a todos os programas que estão carregados ao mesmo tempo.
Nos primeiros sistemas multi-programáveis desenvolvidos essa memória principal era dividida em partições de tamanho fixo.
Nas primeiras utilizações dessas partições os programas eram executados em uma delas mesmas que existissem outras disponíveis.
Com o passar do tempo e a evolução da tecnologia, os programas passaram a ser carregados em qualquer partição. Essa nova maneira de divisão dos programas foi chamada de alocação particionada estática recalcável.
O próximo passo foi dar ao sistema operacional controle da utilização das partições, para isso os sistemas operacionais começara a usar tabelas delimitando as partições, seus tamanhos e qual está sendo usada ou não.
Na alocação dinâmica há mais compartilhamento que fragmentação. Nessa alocação as partições não possuem tamanho fixo e os programas usam o espaço necessário para sua execuções na memória principal.
Na alocação dinâmica, a fragmentação mesmo sendo em menor ocorrência ainda acontecer. A fragmentação se faz necessária nessa alocação quando os processos estão quase terminando suas execuções e os espaços na memória principal ficam cada vez menores não permitindo o carregamento de outros processos.
0 comentários:
Postar um comentário
Deixe Seu Comentário.