Arquitetura
Seminário: Arquitetura. Pesquise 862.000+ trabalhos acadêmicosPor: hjjuliana • 3/12/2013 • Seminário • 554 Palavras (3 Páginas) • 327 Visualizações
6.1 Pilha
O uso dessa estrutura de dados em nível de hardware é fundamental
para que a UCP tenha controle de para onde retornar após executar uma
sub-rotina.
Cada programa executado tem seus valores de registradores para
cada momento de sua execução. Quando uma rotina é chamada fora da
sequência do programa, deve haver um local para salvar todos os valores
de UCP naquele momento. Esse local fica na memória RAM e a estrutura
usada pelo hardware para saber aonde retornar quando a sub-rotina
acabar é a pilha.
Todo programa em execução tem também sua pilha própria, que não
deve ser confundida com a pilha geral mantida pelo hardware. Essa pilha
própria é mostrada na figura a seguir.
Observe que um dado programa em execução conta com uma fatia
de memória para executar. Nessa fatia tem uma área reservada para as
linhas de código de um programa e suas variáveis estáticas. Em sentido
contrário, cresce a pilha e demais estruturas dinâmicas criadas na área
conhecida como heap.
As instruções de assembly que fazem uso da pilha são push e pop,
que servem respectivamente para desempilhar e empilhar um dado nesta.
Outras instruções são usadas em pilha, tais como: call – empilha o
endereço de retorno e muda o fluxo de controle de um programa, usada
para chamar uma subrotina; Ret – recupera o endereço de retorno,
executada ao final de uma sub-rotina para fazer o retorno para o ponto
onde o programa estava quando esta foi iniciada.
6.2 Gerenciamento de Memória
A memória pode ser classificada do ponto de vista entre a arquitetura
e o sistema operacional, de três maneiras distintas:
• Leitura e escrita: variáveis;
• Leitura apenas: constante, Ex: hello world;
• Execução: código objeto.
Para evitar problemas durante a execução de diversos programas
com diversos tipos de memória ativos, deve haver um mecanismo de
segurança de execução conhecido como mecanismo de proteção. Um
dispositivo de hardware deve fazer uma verificação do endereço de
...