Memória estática - hardware
A Alocação de memória diz respeito a como ela é reservada em um programa, pois ela tem a vantagem de manter os dados organizados na memória, dispostos um ao lado dos outros de forma linear e sequencial.
Isto facilita a sua localização e manipulação, em contrapartida, precisamos estabelecer previamente a quantidade máxima necessária de memória para armazenar uma determinada estrutura de dados.
Estimativas podem ser feitas, porém há o risco de sub ou superestimar;
Assim, muitas vezes é necessário que um programa possa ir ajustando a memória a ser usada durante sua execução, e este é um ponto negativo na utilização deste tipo de memória.
Por exemplo, se quisermos construir um cadastro usando uma lista linear sequencial, precisamos primeiramente definir o seu tamanho máximo (tamanho do array).
Portanto, podemos afirmar que quando trabalhamos com matrizes focando a utilização de memória estática, obtêm se maior desempenho num programa, já que o mesmo não se expandirá, podendo se manipular melhor os dados de forma que não afetará outros processos do sistema, nos permitindo um planejamento eficaz, no entanto a utilização deste tipo de memória nos deixa muito restrito a mudanças num sistema, já que a quantidade de memória já foi definida previamente.
Abaixo segue um exemplo de matrizes onde seu tamanho é previamente definido, pois neste caso temos uma matriz A com 3 linhas (i) e 3 colunas (j) e uma matriz B com 3 linhas e 3 colunas.
Abaixo segue uma imagem mais clara de linhas e colunas das matrizes:
Podemos aplicar o conceito de memória estático, por exemplo, em nossos micros, com suas placas de memória RAM.
Esse tipo de memória chamada memória estática e geralmente abreviada para SRAM (Static RAM) — utiliza, em vez de capacitores, circuitos digitais chamados flip-flops para o armazenamento de cada “0” ou “1”. Esses circuitos armazenam os dados sem a necessidade de nenhum ciclo de refresh.
No lugar de um capacitor, a