Descreva e ilustre o que é uma alocação de memória estática
Tese: Descreva e ilustre o que é uma alocação de memória estática. Pesquise 862.000+ trabalhos acadêmicosPor: charliene • 3/12/2014 • Tese • 369 Palavras (2 Páginas) • 371 Visualizações
1 - Descrever e exemplificar o que é alocação estática de memória
A cada dia que passa os programadores necessitam de mais memória e mais programas rodando simultaneamente para poderem tratar cada vez mais informações. O tratamento necessário da memória utilizada não é uma tarefa fácil de ser implementada. Existem vários requisitos que devem ser observados para o correto funcionamento, tais como, segurança, isolamento, performance, entre outros. Para isto a função de gerenciar a memória passa a ser do sistema operacional e não mais do aplicativo.
Para que uma memória funcione de maneira correta, é necessário que se tome cuidado com vários elementos como segurança e isolamento, e para isso é utilizado o gerenciamento de memória. Este desenvolve sua função a partir de duas tarefas, a Alocação de Memória e a Fragmentação:
• A Alocação pode ser tanto estática, feita quando o programa é compilado, e a dinâmica, adiada até a execução.
• A Fragmentação, desperdício de memória, por sua vez pode ser interna, sobra na memória reservada ao programa, e externa que acontece quando após o termino dos programas são deixadas pequenas lacunas entre as páginas.
Estratégia de alocação de memória na qual toda a memória que um tipo de dados pode vir a necessitar (como especificado pelo usuário) é alocada toda de uma vez sem considerar a quantidade que seria realmente necessária na execução do programa.
O máximo de alocação possível é ditado pelo hardware (tamanho da memória “endereçável”).
Todo programa precisa utilizar memória para ser executado. Quando um programa inicia sua execução, ele começa a solicitar memória a o sistema operacional, ou seja, faz alocação de memória necessária para a sua execução e nem sempre a memória alocada na iniciação do programa é suficiente, então o programa também precisa alocar memória durante a sua execução.
Na alocação estática, o espaço de memória que as variáveis irão utilizar durante a execução do programa, é definido no processo de compilação. Não sendo possível alterar o tamanho desse espaço durante a execução do programa.
Exemplos:
/*Espaço reservado para um valor do tipo char. O char ocupa 1 byte na memória.*/ /Espaço reservado para dez valores do tipo int.
O int ocupa 4 bytes na memória .portanto 4*10=40
#include
#include
Int main ();
Struct aviao {
char modelo [15];
char fabricante [20];
int passageiros[100];
float alt;
float veloc;
float motor;
};
...