Suponha que "B" também tenha sido substituído no sistema de arquivos. Agora "A" precisa ler "B" novamente por algum motivo. A questão é: é possível que "A" possa encontrar uma versão incompatível de "B" e travar ou apresentar mau funcionamento de alguma outra maneira?
Isso é possível, mas improvável na maioria dos casos. Se "B" for uma biblioteca de códigos, a versão original normalmente não será fechada. "A" continuaria usando a versão original de "B". Se você executar "A" após a atualização, a nova versão do "B" será usada. Durante a atualização, há algum risco de que versões incompatíveis possam ser carregadas. No entanto, devido à maneira como as bibliotecas de código são carregadas, isso só deve ser um problema se "A" precisar de funcionalidade não presente nas versões de "B" que ele carregou.
Boas práticas de codificação mantêm a interface para funções iguais. Como resultado, não importa muito qual versão é carregada, exceto se houve bugs corrigidos na versão mais recente.
Os arquivos de configuração são um pouco diferentes, mas geralmente são lidos durante a inicialização. Nesse caso, "A" não leria "B" a menos que uma recarga da configuração fosse alterada. Novamente, seria uma prática ruim de codificação alterar o formato ou o significado do arquivo de configuração. Uma versão incompatível do arquivo de configuração deve ter um nome diferente, para não causar problemas.
Por que ninguém atualiza seus sistemas reiniciando com um CD ao vivo ou algum procedimento semelhante?
Desligar e reiniciar a partir de uma versão diferente levaria a uma interrupção do serviço. Para servidores, isso geralmente não é desejado. De qualquer forma, o gerenciador de pacotes no sistema em execução está ciente do software e das versões instaladas. Os CDs ao vivo têm uma lista própria de software instalado, possivelmente com versões diferentes. Isso dificulta a atualização confiável do sistema em execução a partir do CD ao vivo.
Às vezes, os CDs ao vivo são usados quando uma nova versão do sistema operacional está sendo instalada. Nesse caso, a instalação limpa do sistema operacional é geralmente feita. Isso pode limitar a quantidade de arquivos não utilizados da versão anterior que está sendo mantida. Pode ser mais esforço do que atualizar o sistema ativo. No entanto, se diferentes partições raiz forem usadas, isso poderá limitar o risco de travamento com um sistema parcialmente inicializável não inicializável.