Lar Desenvolvimento O que é um quadro de pilha? - o que é techopedia

O que é um quadro de pilha? - o que é techopedia

Índice:

Anonim

Definição - O que significa Stack Frame?

Um quadro de pilha é uma técnica de gerenciamento de memória usada em algumas linguagens de programação para gerar e eliminar variáveis ​​temporárias. Em outras palavras, pode ser considerada a coleta de todas as informações na pilha pertencentes a uma chamada de subprograma. Quadros de pilha existem apenas durante o processo de tempo de execução. Os quadros de pilha ajudam as linguagens de programação no suporte à funcionalidade recursiva para sub-rotinas.

Um quadro de pilha também conhecido como quadro de ativação ou registro de ativação.

Techopedia explica Stack Frame

Um quadro de pilha é composto por:

  • Variáveis ​​locais
  • Cópias salvas de registros modificadas por subprogramas que podem precisar de restauração
  • Parâmetros de argumento
  • Endereço de devolução

Um quadro de pilha individual possui espaço para parâmetros reais, locais temporários, variáveis ​​locais e informações de sub-rotina de chamada. Quando as rotinas específicas que chamam esses parâmetros, locais ou variáveis ​​concluíram a execução, o quadro de pilha relevante é eliminado da pilha. A ordem das informações de embalagem na estrutura da pilha, na maioria dos casos, é independente das especificações da linguagem de programação.

Um dos recursos mais destacados do quadro de pilha é que, para um subprograma específico, o tamanho do quadro de pilha é fixo. Para que uma linguagem de programação use um quadro de pilha, um contador de programa e um encadeamento devem estar disponíveis com dois ponteiros: o ponteiro base e o ponteiro da pilha. O ponteiro base sempre aponta para o topo do quadro, enquanto o ponteiro da pilha aponta para o topo da pilha. O contador do programa ajuda a apontar para a próxima instrução executável. Um quadro de pilha para um determinado procedimento possui todas as informações relevantes para salvar e restaurar o estado do procedimento específico.

O que é um quadro de pilha? - o que é techopedia