Tradução de um endereço de memória real para um virtual / Evolução dos CPU's
Depois de ser fornecido um endereço virtual (Logical Address) é que podemos acessar determinado segmento de um sistema. Todos os segmentos de um sistema estão contidos no Espaço de Endereço Linear (Linear Address Space).
O endereço virtual é formado pelo seletor e pelo deslocamento (offset). O seletor aponta para um descritor de segmento na Tabela de Descritores Global (GDT). Já o descritor de segmento aponta para a base do segmento, no Espaço de Endereço Linear. A base mais o deslocamento (offset) nos mostra em qual posição está o endereço linear desejado. O endereço linear é composto por três partes: DIR, TABLE e OFFSET.
O DIR aponta para uma posição no diretório de páginas. Na posição indicada temos um apontador para uma entrada na tabela de páginas.
O campo TABLE, no endereço linear, tem o endereço da página, que está no espaço de endereço real.
Já o campo OFFSET é somado com a entrada da página indicando a posição na página que encontramos o endereço real desejado.
O artigo fala sobre a evolução dos CPUs e a preocupação que ronda na hora de melhorar o desempenho, já que não se trata apenas de desempenho mas também de design subjacentes, eficiência de energia e preocupações de software quanto a aplicação da carga da trabalho.
Com o avanço dos chips, que a cada evolução aumenta seu desempenho em pelo menos o dobro do anterior, os projetos ficam cada vez mais complexos. Levando em consideração as barreiras que precisam ser estudadas na hora de criar CPUs mais potentes. Os projetos de multithread e multicore suportam multitarefas através de programas paralelos ou executando vários aplicativos simultaneamente.
CPUs multicore alcançam um nível superior utilizando menos o núcleo e visando sempre a possibilidade de através