Please enable JavaScript.
Coggle requires JavaScript to display documents.
Cap 15 : Uso da memória - Coggle Diagram
Cap 15 : Uso da memória
-
A memória de um processo
-
-
-
-
-
Sistemas modernos implementam a técnica ASLR (Address Space Layout Randomization) que varia aleatoriamente a posição das áreas cada vez quem um processo é iniciado, aumentando a segurança
Alocação de variáveis
Alocação estática
-
O espaço correspondente em RAM é reservado no início da execução do processo e mantido até o encerramento
-
Alocação Automática
Por default as variáveis definidas dentro de uma função (variáveis locais e parâmetros) são alocadas automaticamente na seção STACK
O espaço usado para armazená-las é alocado quando a função é invocada e liberado quando a função termina
Se uma função for chamada recursivamente as variáveis locais e parâmetros serão novamente alocados na pilha, em áreas distintas para cada nível de recursão
Alocação Dinâmica
O processo requisita explicitamente blocos de memória para armazenar dados. Esse blocos são armazenados no HEAP
A requisição de blocos é feita através de funções específicas que retornam um ponteiro para o bloco alocado
-
A memória alocada dinamicamente é automaticamente liberado quando o processo encerra, porém em execuções longas é bom liberar explicitamente para não consumir toda a memória
Atribuição de endereços
É necessário converter cada referência a uma variável, procedimento ou função em um endereço
-
-