Tempo real significa ocorrer imediatamente. É o tempo real durante o qual algo acontece. Este termo é normalmente usado como um adjetivo para descrever um nível de capacidade de resposta do computador que é imediato no sentido humano de tempo. Como a execução segue o comando, o tempo real verdadeiro é inatingível, pois o atraso ainda está lá, mesmo que seja de microssegundos. Quase em tempo real é um termo comumente usado para expressar isso. Os programas em tempo real devem garantir a resposta dentro de restrições de tempo específicas conhecidas como prazos. Exemplos de sistemas de tempo real incluem:
- Os sistemas operacionais: Um sistema em tempo real que responde à entrada imediatamente. Ele atende a aplicativos em tempo real que processam os dados conforme eles chegam, sem atrasos no buffer.
- Multiplayer jogos de vídeo: Todos os jogadores podem jogar um videogame simultaneamente. Quando um jogador executa uma ação, os outros jogadores são informados das consequências da ação dentro de um prazo operacional.
- Software: O software em tempo real executa os deveres e funções atribuídos assim que são atribuídos, não após a execução do programa. O usuário considera o desempenho imediato.
- Gráficos animação: um programa em tempo real exibiria objetos se movendo pela tela na mesma velocidade que eles realmente se moveriam.
Tipos de sistemas de tempo real
Existem dois tipos de sistemas de tempo real baseados em restrições de tempo.
Difícil em tempo real
Um sistema de tempo real difícil nunca pode perder seu prazo. Se a função não for concluída dentro das restrições de tempo alocadas, o aplicativo será considerado como tendo falhado. Isso pode causar grandes perdas se o sistema em questão afetar o ambiente físico ou vidas humanas. Exemplos de sistemas de tempo real hard incluem:
- Um sistema de controle do motor de um carro. Um sinal atrasado pode causar danos ou falha no motor.
- Um marcapasso cardíaco. Por causa do risco à vida humana, um marca-passo requer computação em tempo real para garantir que o marca-passo não falhe.
- Máquinas em uma linha de montagem. Se a máquina atrasar, isso pode levar à parada de toda a linha de montagem.
- Certos tipos de impressoras, como jato de tinta, impressora a laser e impressoras de linha. Falhas nesses tipos de impressoras podem causar perda de saída ou saída desalinhada.
Soft real time
Um sistema de tempo real flexível pode perder seu prazo e, desde que as tarefas sejam executadas em tempo hábil, os resultados têm valor. Os sistemas soft real time são usados para resolver problemas de acesso simultâneo e a necessidade de manter uma série de sistemas atualizados em situações de evolução. Perder o prazo não tem consequências desastrosas. Exemplos de sistemas soft real time incluem:
- Software de companhias aéreas comerciais. Os planos de vôo exigem atualizações constantes à medida que mudam, mas alguns segundos ou minutos de latência ainda podem ser operados.
- Sistemas de áudio e vídeo ao vivo. Um quadro de áudio reproduzido posteriormente pode resultar em uma breve falha, o sistema ainda pode continuar a operar.
- Videogames: Como a próxima imagem não pode ser calculada antecipadamente, um videogame, mas depende das entradas do jogador. Portanto, apenas um curto período de tempo está disponível para realizar a computação necessária para gerar um quadro. Se o prazo for perdido, o jogo ainda pode continuar em uma taxa de quadros inferior.