Postagem em destaque

WSL: Backup e Restauração

Imagem
Às vezes você tem um drive mais rápido (SSD) que o outro (HD). É o meu caso: meu drive C, é um SSD de 256 GB e meu drive D, é um HD de 512 GB. Um é pequeno e rápido; outro é grande e lento.  Meu drive C, por ser pequeno, acabou ficando sem espaço. Então fui pesquisar por grandes arquivos (usei o excelente TreeSize Free para isso) e descobri um tal de ext4.vhdx que tinha 29 GB. Esse arquivo é a imagem do disco do WSL no Windows e é normal ficar grande. O problema é que mesmo você apagando arquivos ele não diminui. E quando você usa o Docker, a situação se agrava rapidamente. Então, descobri uma maneira de compactar esse arquivo/disco. É um comentário da KarolineWss numa issue do WSL. Funciona maravilhosamente bem. Tanto que consegui diminuir praticamente pela metade o arquivo.  Mas para fazer isso, claro, pesquisei como fazer backup (e restauração). Esse artigo é sobre isso. E com um bônus, esse o arquivo fica numa localização meio complicada para humanos, mas fazendo um bac...

Erros, falhas e bugs

Lembro que no início dos nos 1990 eu trabalhava com Clipper, que na época era a linguagem da moda. Era uma linguagem muito boa de se trabalhar - tinha uma curva de aprendizagem muito rápida.

Mas quando a empresa adquiriu uma nova versão, uma rotina do sistema de gestão empresarial, mais precisamente, o módulo de cálculo de preço de venda, começou a apresentar problemas. Ele trazia um resultado totalmente errado mas não abortava o sistema.

Demorou alguns dias até percebermos o erro, pois ele ocorria ao executar uma divisão de duas variáveis, algo como 879 / 68. O resultado é 12,92, mas retornava uma resultado totalmente diferente, como 1,5. E antes que alguém pergunte: não tinha nada a ver com o Pentium FDIV Bug.

A primeira vista pode parecer que não, mas nem todos os erros são iguais. Por exemplo, o erro acima, só ocorria em ocasiões muito especiais, e por isso foi (é) difícil de detectar. Agora imagine se ao invés de 12,92 o resultado errado fosse 12,91. Talvez nunca fosse descoberto.

Outro ponto que diferencia os erros é quando a falha interrompe ou não o programa. Quer um exemplo famoso? Veja esse vídeo, quando Bill Gates se deparou com uma BSOD aka Blue Screen Of Death.
O usuário não gosta nem um pouco disso, mas para o analista/programador que recebe essa informação é mais fácil, na maior parte dos casos, resolver o problema do que aquele que o usuário fala: "Quando eu clico no botão enviar, às vezes dá um erro - mas não consegui pegar a mensagem.".

Conforme falei no post Curiosity e suas 2,5 milhões de linhas de código, existem algumas técnicas de programação que podem ser utilizadas para minimizar os problemas, mas infelizmente não existem programas sem bugs. O jeito é aprender a conviver com eles.

Veja também:
Bug no Zoner AntiVirus?
Qualidade dos softwares e SOs
Artigo 6 - Bug do ano 2000


Comentários

Postagens mais visitadas deste blog

Netflix não mostra ícone de streaming

Google Hacking

Radar no KM 175 da BR101