Possivelmente, mas provavelmente não, e depende dos seus requisitos.
"Realtime" refere-se a um conceito de baixa latência - isto é, em teoria, significa "sem latência", mas, na prática, alcançar a latência de não é impossível de alcançar; afinal de contas, sempre há algum processamento a ser feito antes que uma entrada possa gerar algum tipo de saída, e assim sempre haverá uma latência alguma , mesmo que seja apenas um ciclo de clock.
No entanto, há latência e latência, e são sete coisas diferentes; -)
É possível reduzir a latência em um sistema Linux, alterando a prioridade de um processo ou sua fila de agendamento, e / ou alternando para uma biblioteca C de baixa latência, e isso já atenderá aos requisitos de algumas formas de configuração "em tempo real". Se isso é tudo o que você precisa fazer, então, usar um contêiner permitirá separar as partes de baixa latência do seu sistema do restante (desde que você permita que os processos desse contêiner modifiquem sua prioridade de agendamento), e você não deve vejo muita diferença.
Pode ser que você precise fazer mais, no entanto. Existem mais maneiras de modificar sua latência. Em ordem de "menos trabalho" para "mais trabalho", eu sei de:
- Existem algumas opções de inicialização na maioria dos kernels de distribuição padrão que você pode definir, que alteram a maneira como o agendador funciona para que a latência seja reduzida (embora a média desempenho possa sofrer)
- Há várias opções de tempo de compilação que você pode definir também (embora muitas tenham sido alteradas para as opções de tempo de inicialização, ainda restam algumas delas)
- Há (ou pelo menos, costumava ser na última vez que eu verifiquei) vários patches de baixa latência flutuando que permitem que os requisitos em tempo real ainda mais drásticos sejam atendidos.
Se você precisar de um desses, um contêiner não irá ajudá-lo, já que um contêiner ainda usa o mesmo kernel que o resto do seu sistema.
Tendo dito tudo isso, embora seja possível, em algumas circunstâncias, executar um aplicativo em tempo real em um contêiner junto com outras coisas no mesmo sistema, eu recomendaria não fazê-lo. Executar várias coisas no mesmo sistema provavelmente será a latência dos aplicativos em execução no sistema; Portanto, mesmo que você permita que um contêiner faça o que precisa ser feito, talvez o sistema não consiga acompanhá-lo.