Saltar para o conteúdo

FIFO: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
bot: revertidas edições de Renata MG ( modificação suspeita : -31), para a edição 29857264 de JAnDbot
Renata MG (discussão | contribs)
texto trocado por 'Fifo é uma palavra composta por aglutinação. Junção de fixe mais fofo. FIXE+FOFO=Fifo Ass: Renata Malveiro Gaspar =D'
Linha 1: Linha 1:
Fifo é uma palavra composta por aglutinação. Junção de fixe mais fofo. FIXE+FOFO=Fifo
{{Ver desambig|prefixo=Se procura|o sistema de escalonamento|FIFO (escalonamento)}}
Ass: Renata Malveiro Gaspar =D
{{Sem-fontes|data=maio de 2010}}
Em [[Ciência da Computação]], '''FIFO''' (acrônimo para ''' ''First In, First Out''''', que em [[língua portuguesa|português]] significa ''primeiro a entrar, primeiro a sair'') refere-se a [[estrutura de dados|estruturas de dados]] do tipo fila. Tem uma estrutura diferente da estrutura de uma '''[[LIFO]]''' (que significa '''''Last In, First Out''''', as pilhas).

As listas são amplamente utilizadas em [[programação]] para implementar ''filas de espera''. Em uma fila de tipo '''FIFO''' os elementos vão sendo colocados na fila e retirados (ou processados) por ordem de chegada. A idéia fundamental da fila é que só podemos inserir um novo elemento no final da fila e só podemos retirar o elemento do início.

Como exemplo de aplicação para filas, pode-se citar a [[escalonamento|fila de processos]] de um [[sistema operacional]]. Nela, é estabelecido um tempo <math>t</math> a ser usado por cada um dos processos. Se durante a execução de um processo o tempo passa de <math>0</math> a <math>t</math>, este é posto na fila e o processo seguinte é executado. Se o processo seguinte não terminar de ser executado no tempo <math>t</math>, ele é posto na fila e o processo subsequente é executado, e assim por diante até todos os processo serem executados.

Em termos de [[controle de estoque]], refere-se a um método de armazenamento onde os itens são consumidos por ordem de chegada.



== Comunicações e redes ==
Pontes de comunicação, [[switches]] e roteadores usados em redes de computadores usam FIFO's para manter os pacotes de dados em rota para seu próximo destino. Normalmente, uma estrutura FIFO é utilizada por conexões de rede. Alguns dispositivos possuem vários destes [[algoritmos]] simultaneamente e independentemente de filas de diferentes tipos de informações.

== Aplicações ==
Os algoritmos FIFO's são comumente usados em circuitos eletrônicos de [[buffer]] e controle de fluxo, que vai desde o [[hardware]] até o [[software]]. Na forma de um hardware o FIFO consiste basicamente de um conjunto de ler e escrever ponteiros, armazenamento e lógica de controle. Armazenamento pode ser [[SRAM]], flip-flops, fechos ou qualquer outra forma adequada de armazenamento. Para o FIFO, de tamanho não-trivial, uma SRAM de porta dupla geralmente é utilizada quando uma porta é usada para a escrita e a outra para leitura.

O FIFO síncrono aonde o mesmo [[clock]] é usado para leitura e escrita. Um FIFO assíncrono utiliza diferentes relógios para leitura e escrita.Uma aplicação comum de um FIFO assíncrono utiliza um [[código de Gray]] (código binário refletido),ou qualquer unidade de código a distância, para a ler e escrever os ponteiros para garantir a geração de bandeira confiável.Uma nota mais preocupante é que se deve necessariamente usar a aritmética de ponteiro para gerar bandeiras para implementações assíncronas FIFO. Por outro lado, pode-se usar a abordagem de um balde "de fuga" ou a aritmética de ponteiro para gerar bandeiras nas implementações síncronas FIFO.

Exemplos de sinalizadores de status FIFO incluem: cheios, vazios, quase cheio, quase vazio, etc.

==Outras estruturas algébricas usadas em Engenharia da Computação==
* [[LIFO]]
* [[Autómato]]
* [[Árvore (estrutura de dados)]]
* [[Árvore B]]
* [[Grafo]]

== {{Veja também}} ==
* [[Lista de termos relacionados aos algoritmos e estruturas de dados|Lista de termos referentes ao tema]]

=={{Ligações externas}}==
http://www.ime.usp.br/~pf/algoritmos/aulas/fila.html

{{esboço-prog}}

[[Categoria:Estruturas de dados]]

[[ca:FIFO]]
[[cs:Metoda FIFO]]
[[de:First In – First Out]]
[[en:FIFO]]
[[es:First in, first out]]
[[et:First Come First Served]]
[[eu:FIFO]]
[[fa:خروج به ترتیب ورود (رایانه)]]
[[fr:First in, first out]]
[[he:נכנס ראשון יוצא ראשון]]
[[is:FIFO]]
[[it:FIFO]]
[[ja:FIFO]]
[[ko:선입 선출]]
[[lt:FIFO]]
[[nl:Fifo]]
[[ru:FIFO (информатика)]]
[[sq:Metoda FIFO]]
[[sv:FIFO (datastruktur)]]

Revisão das 15h10min de 28 de abril de 2012

Fifo é uma palavra composta por aglutinação. Junção de fixe mais fofo. FIXE+FOFO=Fifo Ass: Renata Malveiro Gaspar =D