Fila
Uma fila é uma lista de tarefas aguardando para serem processadas. Depois que novas tarefas entram em uma fila, elas esperam sua vez enquanto o sistema processa outras tarefas que estavam lá primeiro ou têm uma prioridade mais alta. Aplicativos de hardware e software usam filas para saber quais dados processar ou transmitir em seguida, depois de concluir a tarefa anterior.
A maioria das filas de trabalhos executa as tarefas na mesma ordem em que foram adicionadas, conhecida como First In, First Out (FIFO). No entanto, algumas tarefas se beneficiam de outros métodos de ordenação. O método Last In, First Out (LIFO) prioriza a tarefa adicionada mais recentemente, em vez da mais antiga. O escalonamento por prioridade atribui a cada tarefa um nível de prioridade usando critérios predefinidos — por exemplo, a tarefa com o prazo mais próximo ou a tarefa que exige menos tempo de processamento — e processa primeiro o trabalho com a prioridade mais alta.
Todo sistema operacional inclui um componente de software conhecido como agendador de tarefas, que cria uma fila de processos quando vários programas estão sendo executados simultaneamente. O agendador de tarefas dá tempo de CPU ao processo no início da fila para executar suas instruções; quando uma tarefa termina, ela é removida da fila para que a próxima da linha tenha sua vez. Alguns aplicativos criam suas próprias filas de tarefas para tarefas que exigem muito do processador, o que pode permitir que o usuário personalize a ordem em que alguns trabalhos são realizados. Por exemplo, aplicativos de codificação de vídeo, como o HandBrake, permitem criar uma fila de processamento em lote que codifica um vídeo por vez e inicia automaticamente o vídeo seguinte depois que o trabalho de codificação anterior termina.
Além dos computadores, outros dispositivos também usam filas para gerenciar dados. Dispositivos de rede, como switches e roteadores, criam filas ao encaminhar pacotes de dados por uma rede, garantindo que os pacotes cheguem ao destino na mesma ordem em que foram transmitidos. As impressoras também usam filas para gerenciar vários trabalhos de impressão, imprimindo-os na ordem em que foram recebidos. A maioria das impressoras inclui um software que permite aos usuários ordenar, cancelar e adicionar trabalhos manualmente à fila.
Teste seus conhecimentos