Logotipo do Site Inovação Tecnológica





Informática

Atualização de software funciona sem parar o programa

Com informações da New Scientist - 18/06/2013

Atualização de software livre de bugs e sem parar o programa
As versões rodando em diferentes núcleos do processador são comparadas dinamicamente, interrompendo rotinas que introduzam erros e que possam travar o programa.
[Imagem: Petr Hosek/Cristian Cadar]

Atualizar os softwares pode não ser um evento tão dramático em seu computador doméstico, mas é uma verdadeira dor de cabeça para os técnicos que precisam manter servidores rodando 24 horas por dia, sete dias por semana.

Uma dor de cabeça tão forte que muitos deles não se arriscam a adotar todas as atualizações, sobretudo pelo medo de mexer em time que está ganhando, inserindo novos bugs que "vez ou outra" vêm com as novas versões.

O lado ruim é que as empresas, sites e usuários ficam expostos a ataques, rodando versões menos seguras e com vulnerabilidades cuja existência se espalha rapidamente.

Aplicação multiversão

Talvez isso possa mudar, com a eliminação das duas maiores objeções à instalação de atualizações - o fato de que você tem que parar o software para atualizá-lo, deixando o servidor inoperante, e o medo de que uma atualização introduza erros.

A ideia genial foi apresentada por Petr Hosek e Cristian Cadar, do Imperial College de Londres.

Os dois cientistas da computação descobriram como usar os núcleos não utilizados dos microprocessadores "multicore" para tornar o processo de atualização de software invisível para o usuário - onde invisível significa que o software não vai parar de rodar durante a atualização.

Sempre que uma atualização estiver disponível, o truque é deixar a versão antiga do software rodando em um núcleo - assim você pode continuar a usar o programa - durante a execução da atualização em paralelo, que roda em um outro núcleo do processador.

Quando a atualização acaba, o sistema sincroniza a execução dos dois programas, de tal forma que somente as rotinas mais confiáveis dos dois programas sejam executadas - uma ideia que limita os danos causados por novos bugs, introduzidos pela atualização.

"Você fica com o que chamamos de uma aplicação multiversão," explicou Cadar. "Elas rodam em paralelo e o seu comportamento é combinado de uma forma tal que aumenta a confiabilidade e a segurança geral. Mas ela vai se parecer e se comportar exatamente da mesma forma para os usuários," conclui.

Medo da atualização de versões

Os dois pesquisadores contam que desenvolveram o sistema depois de descobrir que até mesmo aqueles que deveriam mais se preocupar com o assunto frequentemente ignoram as atualizações de software.

Uma pesquisa suíça mostrou que 70% de uma amostra de 50 administradores de sistemas admitiu que nem sempre atualiza os softwares dos servidores por medo do tempo de inatividade que isso pode causar.

Outro dado revelado pelo estudo é que, segundo os administradores de sistema, 25% das atualizações de software introduzem novos bugs.

Bibliografia:

Artigo: Safe Software Updates via Multi-version Execution
Autores: Petr Hosek, Cristian Cadar
Revista: International Conference on Software Engineering (ICSE 2013) Proceedings
Seguir Site Inovação Tecnológica no Google Notícias





Outras notícias sobre:
  • Software e Programação
  • Segurança da Informação
  • Processadores
  • Criptografia

Mais tópicos