Qual é a diferença entre memória, buffer e stack? [duplicado]

Esta pergunta já tem uma resposta:
  • O que e onde estão as pilhas? 25 respostas

enquanto se aprende a programação c Só se menciona o memory. Mas na prática parece que há mais; as palavras buffer e stack estão quase lá.

Qual é a diferença entre estes Termos? porque são tão ... interessante?

Por favor, preciso de uma resposta detalhada. Respostas curtas não servem. Também alguns recursos podem ser úteis.

tanques para avançar.

Author: rullof, 2013-12-21

2 answers

Um buffer armazena temporariamente dados enquanto os dados são o processo de passar de um lugar para outro, ou seja, o dispositivo de entrada para o dispositivo de saída. Pode dizer-se que o amortecedor faz parte da memória. Você pode dizer que um buffer é uma área pré-alocada da memória onde você pode armazenar seus dados enquanto você está processando-o.

Aqui.:

O buffer, por outro lado, é encontrado principalmente na RAM e age como uma área onde a CPU pode armazenar dados temporariamente. Esta área é usada principalmente quando o computador e os outros dispositivos têm diferentes velocidade. Normalmente, os dados são armazenados em um buffer como ele é retrieved from an input device (such as a mouse) or just before it is enviado para um dispositivo de saída (como altifalantes). Contudo, a reserva de fundos próprios pode também ser usado ao mover dados entre processos dentro de um computador.

Então, o computador escreve os dados num buffer, de onde o dispositivo pode acessar os dados, como a própria velocidade. Isto permite ao computador para ser capaz de se concentrar em outros assuntos depois de escrever os dados em o buffer; como oposição a focalizar constantemente nos dados, até que o o dispositivo está pronto.

Os tampões de choque podem ser implementados num local de memória fixa em hardware ou usando um buffer de dados virtual em software, que aponta para um dado buffer são armazenados em um meio de armazenamento físico. A maioria dos buffers são utilizados no software. Estes tampões normalmente usam o RAM mais rápido para armazenar dados temporários, uma vez que a RAM tem um acesso muito mais rápido tempo do que Discos Rígidos. Um buffer ajusta muitas vezes o tempo implementando uma fila ou algoritmo FIFO em memória. Por conseguinte, é frequente escrever dados na fila a uma taxa e lê-los a outra taxa.

Stack é uma coleção de itens em que os dados são inseridos e remover de uma extremidade chamada o topo da pilha.

Na ciência da computação, uma pilha é um tipo particular de dados abstratos. tipo ou colecção em que o responsável principal (ou apenas) opera na a coleção é a adição de uma entidade à coleção, conhecida como empurrar e remover uma entidade, conhecida como pop
 7
Author: Rahul Tripathi, 2013-12-20 21:01:23

A memória é um espaço de armazenamento onde as instruções e os dados relativos aos programas são armazenados. Buffer e stack ambos são a pequena seção da memória.

Buffer armazena dados temporariamente durante a execução do programa.

Conceitos de sistemas operativos (8. a ED)):

Um buffer é uma área de memória que armazena dados a serem transferidos entre dois dispositivos ou entre um dispositivo e uma aplicação.

Por outro lado, uma pilha é um recipiente de objetos que são inseridos e removidos de acordo com o princípio do último in first-out (LIFO). Nas pilhas de flexão só são permitidas duas operações: empurrar o item para a pilha, e pop o item para fora da pilha. Uma pilha é uma estrutura de dados de acesso limitado-elementos podem ser adicionados e removidos da pilha apenas no topo. push adiciona um item ao topo da pilha, pop remove o item do topo.
 3
Author: haccks, 2013-12-20 21:13:14