Android Central

'Bit Rot' explicou: por que seu telefone está mais lento do que quando era novo

protection click fraud

Os computadores são como as pessoas - à medida que envelhecem, tendem a ficar um pouco mais lentos e as falhas são mais fáceis de ver.

Nossos telefones são computadores reduzidos para caber no bolso e serem fáceis de carregar. E isso significa que, com o passar do tempo, as coisas não estão acontecendo tão rapidamente quanto costumavam ou as coisas podem ficar um pouco complicadas. Isso é universal; acontece com telefones Galaxy e telefones LG e telefones Pixel e iPhones e todos os outros telefones que fazem mais do que fazer chamadas e enviar textos. Algumas pessoas dizem que não ver está acontecendo, e isso é por causa de por que isso acontece e a maneira como o software é escrito para todos os diferentes telefones disponíveis. Mas ainda está acontecendo no seu telefone agora e sempre estará.

Vamos dar uma olhada no que é comumente conhecido como "Bit Rot" e ver se não conseguimos entender as coisas um pouco melhor.

O que é Bit Rot, exatamente?

É um termo muito usado por pessoas que gostam de computadores e basicamente significa que o software é "antigo" e se tornou mais lento do que costumava ser. Existem três coisas em jogo e estão bem documentadas, mesmo que não sejam muito fáceis de entender:

Erosão de software, Entropia de software, e Inchaço de software.

Primeiro, alguns outliers

Às vezes, pode haver outros fatores também. Degradação de dados e Desvio de recursos podem fazer com que programas e aplicativos fiquem lentos, mas são mais fáceis de explicar e são um pouco diferentes do que chamamos de Bit Rot. Degradação de dados é uma palavra chique que significa que sua memória - RAM, armazenamento ou ambos - está envelhecendo. A RAM e a mídia de estado sólido requerem uma carga elétrica e, com o tempo, podem se dispersar mais do que foram projetados para fazer. Isso significa que alguns dos bits armazenados (bits de software) podem ser alterados. Quando alguns bits estão errados, muitos programas podem compensar, mas isso leva tempo e os programas são um pouco mais lentos. Quando muitos bits estão errados, as coisas praticamente param de funcionar como pretendido.

A degradação de dados e o aumento de recursos também podem tornar seu telefone mais lento, mas são diferentes do Bit Rot.

Recurso Creep é fácil de entender. Seu telefone foi construído com um conjunto específico de software em mente. Quando você obtém uma atualização que adiciona mais recursos, o hardware precisa trabalhar mais e as coisas ficam mais lentas. Os fóruns online estão cheios de pessoas que odiaram uma atualização recente em seu telefone Galaxy e pessoas com iPhones mais antigos que odeiam a versão mais recente do iOS. Isso ocorre porque o software foi escrito tendo em mente um hardware mais novo e mais capaz, assim como o software com o qual seu telefone foi enviado originalmente. Todos nós adoramos novos recursos e atualizações, mas o velho ditado "tenha cuidado com o que você deseja" está certo aqui.

Esses problemas certamente podem ter um efeito, mas são diferentes do Bit Rot e provavelmente não são contribuindo muito para qualquer lentidão em nossos telefones porque não os mantemos tempo suficiente para vê-lo em Ação.

Erosão de software

A Erosão de Software é a deterioração lenta, mas constante, do desempenho que pode acontecer com qualquer software, seja algo que usamos muito ou pouco. Ou mesmo nunca. Isso acontece porque nós usar o software e todos os aplicativos mudam quando são usados ​​— adicionamos dados do usuário à base para que o software faça o que queremos que ele faça. Observe que isso é diferente do software que fica lento ou com erros enquanto o usamos muito, mas volta ao normal com uma reinicialização. Isso geralmente ocorre devido a pequenos erros acumulados ao longo do tempo ou a um vazamento de memória. Você não pode corrigir a erosão de software fechando e reabrindo um aplicativo ou reiniciando o telefone.

Todo software tem bugs e todo software precisa de manutenção regular que nunca recebe.

Existem dois tipos diferentes de Erosão de Software, dormente e ativa. A erosão inativa do software ocorre quando um programa ou partes de um programa que você não usa param de funcionar bem porque outras coisas mudaram, e a erosão ativa ocorre devido a alterações durante o uso. Ambos os tipos acontecem por causa de alguns motivos diferentes.

  • O código não utilizado ou restante pode (e geralmente contém) conter bugs que não são detectados.

Todo software tem bugs, não importa o que um desenvolvedor ou usuário diga. Quando uma empresa altera algum código, há uma chance muito boa de que parte do código original nunca seja usado, mas ainda seja incorporado ao produto final. Bugs aqui não são tão prováveis ​​de serem pegos e podem ter um efeito imediato ou que demora um pouco para aparecer.

  • Mudanças porque o software não é amigável acontecem muito.

Um desenvolvedor constrói um software com uma ideia específica de como vamos usá-lo, mas uma vez que chega em nossas mãos, muitas vezes não o usamos dessa forma! Às vezes, isso não é culpa nossa e o software tem uma interface mal implementada, então fazemos coisas que um desenvolvedor nunca pensou que faríamos. Outras vezes, a culpa é nossa e fazemos coisas como criar várias contas ou executar várias instâncias de um aplicativo ou função que não foi projetada para ser executada dessa maneira. Isso pode deixar dados do usuário ou dados em cache que são mais difíceis de processar por um aplicativo.

  • Falta de atualizações e manutenção são ruins.

Qualquer desenvolvedor dirá a você que o trabalho não está concluído depois que o programa é publicado e o software precisa ser mantido. Isso significa corrigir bugs que os usuários encontram, mas também atualizações frequentes para funcionar bem com outro software. A falta de manutenção regular é a maior causa de erosão de software.

O "Android" que roda em seu telefone é, na verdade, um grande grupo de programas e serviços executados independentemente que precisam se comunicar constantemente. Um exemplo: o Facebook faz outra alteração em seus servidores e atualiza o aplicativo no Google Play. Seu aplicativo de contatos está vinculado ao Facebook, portanto, pode precisar de uma atualização. Ou sua câmera recebe uma atualização, mas o aplicativo de galeria vinculado a ela não. Todas as partes do sistema precisam funcionar com todas as outras partes, e isso significa manutenção regular.

A boa notícia aqui é que muitos problemas de erosão de software são corrigidos com uma redefinição de fábrica em que todos os dados do usuário são apagados. A má notícia é que tudo volta eventualmente.

Entropia de software

Todos os softwares que nós não pode change tem bugs e código não utilizado (veja acima). Esses bugs provavelmente permanecerão inalterados com o tempo, mas podem piorar conforme a complexidade do software que pode mudança aumenta. Isso é chamado de entropia de software.

O software que você altera afeta o software que você não pode alterar porque o próprio sistema fica mais complexo.

A maior parte do software do seu telefone está em um sistema fechado. Você pode atualizar o aplicativo de teclado ou câmera a partir do Loja de jogos, mas a maior parte do sistema operacional é instalada na fábrica e alterada apenas com uma atualização completa do sistema. Isso é muito diferente de todos os aplicativos, tanto aplicativos de usuário instalados de fábrica quanto aqueles que você mesmo instalou. O software que você pode a mudança fica mais complexa com o tempo e o software que você não pode mudar tem que lidar com isso.

As pessoas que escreveram o software em seu telefone são muito espertas quando se trata de tudo isso. Mas ninguém pode saber o que faremos, o que novos aplicativos serão capazes de fazer e como os aplicativos projetados para um conjunto de APIs (interfaces de programação de aplicativos), para exemplo, as APIs da Samsung de seu kit de desenvolvimento de software funcionarão com aplicativos projetados para outro conjunto de APIs, como as do Google que fazem parte do Android. Os desenvolvedores precisam fazer o possível para adivinhar e criar o software de uma maneira que não quebre e esperar o melhor.

Há duas maneiras de combater a entropia de software — manutenção regular do software por meio de atualizações oportunas ou redefinir o software do usuário de volta ao estado de fábrica.

Inchaço de software

Isso não é o que o nome sugere, embora aplicativos extras de bloatware possam fazer com que as coisas funcionem mais lentamente. Software Bloat quando se fala em Bit Rot significa software cheio de recursos extras ou não utilizados.

Quanto mais recursos adicionados a qualquer programa, mais complexo ele será. A complexidade torna os aplicativos mais lentos.

Recursos "extras" são impossíveis de definir. Aplicativos ou partes de aplicativos que eu não uso são estranhos para mim, mas você pode usá-los e amá-los. Do ponto de vista de um computador, o único aplicativo bom é aquele que faz apenas uma coisa e fecha sozinho depois de concluído. Isso é impraticável do ponto de vista do usuário; imagine um aplicativo de teclado que fechava depois que cada letra era digitada. As empresas que fabricam os telefones que amamos precisam encontrar um meio termo entre recursos e desempenho, usando o hardware certo ou reduzindo os recursos dos aplicativos. Isso pode significar adicionar mais RAM e usar um processador mais rápido ou reduzir os recursos de um aplicativo, ou ambos.

Outra parte dos recursos "extras" é o software que deve ser capaz de lidar com vários padrões (e frequentemente concorrentes). Seus aplicativos de e-mail são um ótimo exemplo disso. Se você usa o Gmail e usa o aplicativo Gmail, as coisas são muito mais simplificadas do que seriam se você estivesse usando o outro aplicativo de e-mail com uma conta do Gmail, ou uma conta do Exchange, ou algo como um Yahoo! conta POP3. O aplicativo de e-mail deve ser capaz de fazer coisas que o aplicativo do Gmail não pode e deve ser capaz de lidar com os diferentes tipos de dados que criamos. Isso leva tempo para processar e, à medida que adicionamos mais dados, leva mais tempo.

Talvez o melhor exemplo de recursos "extras" e como eles afetam o desempenho seria comparar o Evernote e o Google Keep. Se você usar o aplicativo apenas para fazer anotações, todos os extras do Evernote significam que leva muito mais tempo para adicioná-los ou lê-los. Se você gosta desses recursos extras, descobrirá rapidamente que o Google Keep simplesmente não pode fazer a maioria deles. Não há certo ou errado aqui, mas isso tem um grande impacto no desempenho.

Recursos "sobras" não utilizados ainda podem ser executados e causar problemas, e nossos telefones estão cheios deles.

Recursos não utilizados são mais frustrantes porque não sabemos que eles estão lá e não poderíamos fazer nada para mudar as coisas se o fizéssemos. Quando uma empresa como a LG (vamos escolher aqui, mas isso se aplica a todas as empresas que fabricam telefones, até mesmo o Google) fabrica um telefone com seus próprios aplicativos que são duplicatas de aplicativos Android "estoque", como o discador do telefone ou o calendário, há muito código restante que não está sendo usado. Parte do código ainda é executado quando você inicia o telefone também. Já falamos sobre como isso significa que os bugs serão mais difíceis de encontrar nessa parte do código, mas também pode ter um grande impacto no desempenho. E quando a entropia de software é considerada, vemos como esses bugs podem piorar cada vez mais com o tempo.

Quando você vê argumentos bobos em comentários sobre como um telefone como o Moto G5 é mais rápido que um Galaxy S8 com metade da potência do hardware, o Software Bloat é o motivo.

Então, o que tudo isso significa e o que posso fazer a respeito?

Essa é uma pergunta fácil - significa que alguns telefones são mais lentos do que outros e alguns telefones ficam visivelmente mais lentos com o tempo, enquanto outros são menos afetados. E não há realmente nada que possamos fazer sobre isso.

Mais recursos significam software mais lento e mais oportunidades para o Bit Rot acontecer. É uma troca que muitos fazem com prazer.

Conversa real - um telefone como o Note 8 é visivelmente mais lento (e mostra isso quando conectado a ferramentas que monitoram o desempenho) do que um Pixel 2. O Note 8 ficará ainda mais lento daqui a seis meses. Mas o Pixel 2 vai nunca ser capaz de fazer algumas das coisas que um Note 8 faz, não importa quantos aplicativos instalemos ou como o hackeamos. Posso anotar uma captura de tela com a S Pen imediatamente após capturá-la no Note 8, mas no Pixel 2, tenho que compartilhar a captura de tela com outro dispositivo para anotá-la com o mesmo nível de recursos e detalhe.

Como o Evernote vs. O argumento do Google Keep acima, o que é melhor é em grande parte uma questão de recursos que você gosta. A nota 8 tem todos as características. Isso significa que ele tem todos os bugs e inchaço de software que tornam o Bit Rot mais perceptível. Isso pode ser um problema para você, mas para outros, não é porque não há outra maneira de obter o conjunto de recursos. É por isso que existem mais telefones Android do que apenas um Pixel e Pixel Plus e o que todos querem dizer quando dizem que o Android oferece uma escolha.

E quando o Bit Rot se tornar um problema suficiente para que você precise fazer algo a respeito, basta redefinir o telefone de fábrica e levar algumas horas para configurar tudo de volta.

Questões?

Som desligado nos comentários abaixo!

instagram story viewer