Atps De So
Ensaios: Atps De So. Pesquise 862.000+ trabalhos acadêmicosPor: wellsp • 8/6/2014 • 3.612 Palavras (15 Páginas) • 371 Visualizações
Relatório 03: Gerenciamento de Memória
Gerenciamento de Memória Linux
Técnicas de gerenciamento de Memória
O Linux é um sistema multiprocessos e multiusuários. Então devemos ter um controle rígido sobre a memória para que um processo não sobreponha os recursos (memória) utilizados pelo outro.
Sistema de gerenciamento de memória física. Ele cuida da alocação e liberação de blocos de memória. O administrador de memória física principal no Linux é o alocador de páginas. Esse processo é responsável por alocar e liberar páginas físicas, sendo capaz de alocar grupos de páginas contíguas. O alocador de páginas usa um algoritmo de alocação de regiões vizinhas, que combina unidades de alocação adjacentes em uma única unidade. Cada região de memória que pode ser alocada possui uma região adjacente correspondente, ou vizinha. Sempre que duas regiões vizinhas são liberadas, elas são combinadas para formar uma região maior. Essa região maior também tem uma vizinha, com a qual pode ser combinada para formar uma região livre ainda maior. Como alternativa, quando não existir uma região de memória disponível pequena para satisfazer a uma requisição de uma pequena porção de memória, uma região maior de memória é subdividida em duas vizinhas. O sistema utiliza listas ligadas para áreas disponíveis de cada tamanho permitido. No Linux, o menor tamanho de área que pode ser alocada usando esse mecanismo corresponde ao de uma única página física. As alocações de memória no núcleo do Linux ocorrem estaticamente, por rotinas de controle que reservam uma área contígua de memória no momento da carga do sistema, ou dinamicamente, pelo controlador de páginas. Entretanto, as funções do núcleo não precisam usar o alocador de páginas para reservar memória. Existem vários outros subsistemas de gerenciamento de memória especializados, que usam o controlador de páginas subjacente para gerenciar seu próprio espaço de memória.
Técnicas de gerenciamento de memória virtual
Gerenciamento de memória virtual. Este tem o papel de "enganar" os processos dizendo que há memória suficiente quando não há. Esta técnica pode melhorar o desempenho do sistema operacional. Linux tem uma forma bastante interessante de gerenciar a memória. O sistema não necessita de muita memória para suas operações e conforme os programas vão sendo Executada, mais memória vão sendo alocada de forma mais eficiente. O sistema lida bem em casos de sobras de memória, utilizando os Espaços livres dos módulos como cachê de disco. Cachê de disco são porções podem da memória RAM usadas por arquivos e bibliotecas lidos do HD que têm uma maior probabilidade de ser acessado Mais Rapidamente o que melhora o desempenho do sistema. É fácil comprovar a eficiência o cachê de disco: abra um programa como o Firefox ou o Libreoffice ou qualquer tipo de aplicação seja carregado na memória primeiro carregamento é demorado, certo? Agora feche o programa e abra-o novamente: levou muito menos tempo Esse recurso está presente também no Windows ele foi melhorado. Entrada, de modo que, efetivamente, a entrada do diretório global é quem escolhe a tabela de página a usar. Característica mais comum Não necessita de memória suficiente para executar tais Programas um esquema que mistura paginação e segmentação é utilizado para construir o Linux utiliza segmentação de forma extremamente limitada. Linux prefere paginação à segmentação por motivos de portabilidade e para tornar o gerenciamento de memória mais simples. No Linux, a memória funciona com prioridade para processos que estão em execução. Quando um processo termina, havendo espaço na memória, o sistema mantém resíduos desse processo na memória para que uma possível volta a processo seja mais rápida.
O sistema de memória virtual do Linux é responsável pelo uso do espaço de endereçamento de cada processo. Esse sistema aloca espaço de memória virtual sob demanda e gerencia a transferência de páginas entre o disco e a memória, quando necessário. No Linux, o administrador de memória virtual usa duas visões do espaço de endereçamento de um processo: como um conjunto de regiões separadas e como um conjunto de páginas.
A primeira dessas visões do espaço de endereçamento é a visão lógica, que descreve as instruções recebidas pelo sistema de memória virtual relativa á organização do espaço de endereçamento. Nessa visão, o espaço de endereçamento consiste em regiões separadas, cada qual consistindo em um espaço contíguo de páginas. Essa região é descrita, internamente, por uma única estrutura vrn_area_struct, que define as propriedades dessa região, incluindo os direitos de acesso do processo para realizar operações de leitura, escrita e execução nessa região, assim como dados relativos aos arquivos associados á região. As regiões de cada espaço de endereçamento são organizadas em uma árvore binária balanceada, para possibilitar uma pesquisa eficiente por uma região correspondente a um endereço virtual.
O núcleo usa uma segunda visão de cada espaço de endereçamento. Essa visão é armazenada nas tabelas de páginas do processo. As entradas nessa tabela de páginas determinam a posição atual de cada página da memória virtual, esteja ela em disco ou na memória física. Essa visão do espaço físico é gerenciada por um conjunto de rotinas, chamadas por tratadores de interrupções de software do núcleo do sistema, sempre que um processo usa uma página que não está presente na tabela de páginas. Cada vrn_area_struct contém um apontador para uma tabela de rotinas que implementam as operações fundamentais de gerenciamento de páginas. Todas as requisições de leitura ou escrita de páginas não disponíveis são eventualmente tratadas por uma rotina apropriada, contida na tabela vrn_area_struct, de forma que as rotinas centrais de gerenciamento de memória não precisam lidar com detalhes específicos de cada tipo de região de memória.
Sistema de comandos de Gerenciamento no Linux
# free –m Lista a memora livre total e Utilizada
ps -aux
Para Gerenciamento de Memória Temos Monitor do sistema no Gnome como programas gráficos de monitoramento dos recursos do sistema. Via terminal temos O Top e o Free. O Top detalha os processos em execução além de outras informações como o estado dos processos, memória
...