sexta-feira, 1 de dezembro de 2017

MEMÓRIA CACHE

É uma memória construída com circuitos estáticos denominada SRAM (Static Random Access Memory) que são bem mais rápidos que os circuitos utilizados para construir as memórias DRAM, e por este motivo, elas passaram a ser implementadas nos processadores e nas placa-mães para melhorar o desempenho final do micro.
Surgem dois tipos de memória cache: a memória cache L1 (Level 1 - Nível 1) e L2 (Level 2 - Nível 2) , no qual a memória cache L1 está fisicamente dentro do próprio processador e a memória cache L2 está fisicamente na placa-mãe.
A memória cache L1 é controlada por um "controlador de cache" existente no próprio processador e a memória cache L2 é controlada por um "controlador de cache", presente no chipset da placa-mãe.
Os controladores tem como função ler os dados contidos na memória RAM e copiá-los para  a memória cache, sendo assim, quando o processador precisar buscar algum dado, primeiramente ele o buscará na memória cache, o que é bem mais rápido, caso o dado não esteja na memória cache, ele buscará na memória RAM, contudo, isso é bem difícil de ocorrer,
pois 75% das vezes que o processador acessa algum dado, ele está na memória cache, e não na memória principal (RAM), ou seja, ele acessa mais a  memoria cache que a 
memória principal (RAM).

Mas por que surgiu a memória cache?
Como a velocidade dos processadores a partir do processador 80386, ultrapassou a frequência de operações das memórias convencionais, houve a necessidade de utilizar o wait states (estado de espera).
O wait states era utilizado porque a memória RAM ficava muito lenta em relação ao processador, pois o mesmo não conseguia enviar dois dados simultaneamente para serem armazenados na memória RAM, sendo assim, quando o segundo dado for enviado pelo processador para a memória RAM armazenar, ela ainda estava armazenando o primeiro dado, e com isso, ela não estará pronta para receber o segundo dado, fazendo com que o processador fique esperando ela ficar pronta para receber o segundo dado, o que chamamos de wait states (tempo de espera ou estado de espera). Esta espera impede o processador de realizar outras tarefas, e isso afeta diretamente o desempenho final do micro.
É por isso que surge a memória cache, que como dito anteriormente, seus circuitos são mais rápidos do que os das memórias convencionais, por exemplo a memória RAM.
Como o processador constantemente está acessando a memória RAM, ele sempre estará usando o wait states e como sabemos, a utilização constantes de wait states diminui o desempenho final do micro. Isso impede o processador de realizar outras tarefas até que a memória esteja pronta para receber o segundo dado.
Tanto a  memória cache L1 quanto a L2 passou a ser utilizada a partir do processador 486.



"DMA - Direct Memory Access - Acesso Direto a Memória "

Geralmente, o único componente que acessa a memória RAM é o processador.
Sendo assim, qualquer tipo de transferência de dados antes passavam pelo processador, ou seja, ele controlava e monitorava todo fluxo de dados.
Isso aumentava o tempo de resposta que consequentemente afetava o desempenho final do micro.
Para resolver este problema, cria-se então a tecnologia DMA. Esta tecnologia permite que outros dispositivos e/ou componentes acessem a memória RAM diretamente sem depender do processador"o que aumenta o desempenho na transferência de grande quantidade de dados" de acordo com Gabriel Torres (Fundador do clube do Hardware, maior site de Hardware da América Latina).
Como dito anteriormente, apenas o processador tinha acesso direto aos dados na memória RAM, sendo assim, se outro componente precisasse acessar um dado que estava na memória RAM, teria que fazer este acesso por meio do processador, isso deixava o processador mais ocupado.
Com o surgimento do recurso de DMA este problema foi extinto, pois ela deixa o processador mais livre para realizar outras operações, permitindo que o os componentes que utilizam interface IDE ou SATA realizam este acesso direto à memória RAM.
A partir do Windows XP, este recurso já vem ativado pelo próprio sistema operacional, (notamos que a própria Microsoft se preocupa com o desempenho final do micro de seus usuários), porém, nas versões anteriores este procedimento deve ser realizado manualmente.
Quando este recurso não está ativo, a transferência de dados é realizada em modo PIO (Programmed I/O), no qual o processador que faz a transferência de dados entre o HD e a memória RAM.
Concluindo, a tecnologia DMA influenciou diretamente no desempenho final do micro uma vez que o processador fica mais livre, realizando outras operações ao invés de ficar auxiliando outros componentes na transferência de dados com a memória RAM.


Nenhum comentário:

Postar um comentário

IMAGENS