Logo nl.androidermagazine.com
Logo nl.androidermagazine.com

'Bit rot' legde uit: waarom je telefoon langzamer is dan toen hij nieuw was

Inhoudsopgave:

Anonim

Computers lijken op mensen - naarmate ze ouder worden, worden ze meestal wat langzamer en zijn gebreken gemakkelijker te zien.

Onze telefoons zijn computers die zijn gekrompen tot zakformaat en gemakkelijk mee te nemen zijn. En dat betekent dat naarmate de tijd verstrijkt, dingen niet zo snel meer gebeuren als vroeger of dingen een beetje buggy kunnen krijgen. Dit is universeel; het gebeurt met Galaxy-telefoons en LG-telefoons en Pixel-telefoons en iPhones en elke andere telefoon die meer doet dan bellen en sms'en. Sommige mensen zeggen dat ze het niet zien gebeuren, en dat is de reden waarom het gebeurt en de manier waarop software is geschreven voor alle verschillende telefoons in het wild. Maar het gebeurt nu nog steeds op je telefoon en zal dat altijd blijven.

Laten we eens kijken naar wat algemeen bekend staat als "Bit Rot" en kijken of we dingen niet een beetje beter kunnen begrijpen.

Wat is Bit Rot precies?

Het is een term die veel wordt gebruikt door mensen die met computers bezig zijn, en het betekent in feite dat de software "oud" is en langzamer is geworden dan vroeger. Er zijn drie dingen die spelen, en ze zijn goed gedocumenteerd, zelfs als ze niet erg gemakkelijk te begrijpen zijn: Software-erosie, Software-entropie en Software-bloat.

Eerst enkele uitbijters

Soms kunnen er ook andere factoren zijn. Gegevensverslechtering en kruipende functies kunnen ervoor zorgen dat programma's en apps langzamer werken, maar ze zijn gemakkelijker uit te leggen en verschillen enigszins van wat we Bit Rot noemen. Gegevensdegradatie is een fraai woord dat betekent dat uw geheugen - of het RAM, de opslag of beide - oud wordt. RAM- en Solid State-media vereisen een elektrische lading en kunnen na verloop van tijd meer verspreiden dan waarvoor het is ontworpen. Dit betekent dat sommige van de opgeslagen bits (softwarebits) kunnen worden gewijzigd. Wanneer een paar bits verkeerd zijn, kunnen veel programma's dit compenseren, maar dat kost tijd en de programma's zijn iets langzamer. Wanneer veel bits fout zijn, werken de dingen vrijwel niet meer zoals bedoeld.

Gegevensverlies en kruipen van functies kunnen uw telefoon ook langzamer maken, maar verschillen van Bit Rot.

Feep Creep is gemakkelijk te begrijpen. Uw telefoon is gebouwd met een specifieke set software in gedachten. Wanneer u een update krijgt die meer functies toevoegt, moet de hardware harder werken en wordt het langzamer. Online forums zijn gevuld met mensen die een recente update op hun Galaxy-telefoon haatten en mensen met oudere iPhones die een hekel hebben aan de nieuwste versie van iOS. Dat komt omdat de software is geschreven met nieuwere en meer capabele hardware in gedachten, net als de software waarmee je telefoon oorspronkelijk werd geleverd. We houden allemaal van nieuwe functies en updates, maar het oude gezegde "wees voorzichtig met wat je wenst" klopt hier.

Deze problemen kunnen zeker een effect hebben, maar ze verschillen van Bit Rot en dragen waarschijnlijk niet veel bij aan traagheid op onze telefoons omdat we ze niet lang genoeg houden om het in actie te zien.

Software-erosie

Software-erosie is de langzame maar gestage achteruitgang van de prestaties die elke software kan overkomen, of het nu iets is dat we veel of weinig gebruiken. Of zelfs nooit. Dit gebeurt omdat we de software gebruiken en alle applicaties veranderen wanneer ze worden gebruikt - we voegen gebruikersgegevens toe aan de basis zodat de software doet wat we willen. Merk op dat dit anders is dan software die traag of buggy wordt terwijl we het veel gebruiken, maar met een herstart weer normaal wordt. Dat komt meestal door kleine fouten die zich in de loop van de tijd ophopen of een geheugenlek. U kunt Software-erosie niet repareren door een app te sluiten en opnieuw te openen of uw telefoon opnieuw te starten.

Alle software bevat bugs en alle software heeft regelmatig onderhoud nodig.

Er zijn twee verschillende soorten software-erosie, inactief en actief. Sluimerende software-erosie treedt op wanneer een programma of delen van een programma dat u niet gebruikt, niet meer goed werken omdat andere dingen zijn veranderd en actieve erosie gebeurt door wijzigingen terwijl u het gebruikt. Beide soorten gebeuren om een ​​paar verschillende redenen.

  • Ongebruikte of overgebleven code kan (en vaak ook) bugs bevatten die niet worden gepakt.

Alle software bevat bugs, ongeacht wat een ontwikkelaar of gebruiker zegt. Wanneer een bedrijf bepaalde code wijzigt, is de kans groot dat een deel van de oorspronkelijke code nooit zal worden gebruikt, maar nog steeds in het eindproduct is ingebouwd. Bugs hier zullen niet zo snel worden betrapt en kunnen een onmiddellijk effect hebben of het duurt een tijdje om te verschijnen.

  • Veranderingen omdat de software niet gebruiksvriendelijk is, gebeuren veel.

Een ontwikkelaar bouwt software met een specifiek idee van hoe we het zullen gebruiken, maar als het eenmaal in onze handen komt, gebruiken we het vaak niet op die manier! Soms is dit niet onze schuld en software heeft een slecht geïmplementeerde interface, dus we doen dingen die een ontwikkelaar nooit had gedacht dat we zouden doen. Andere keren is het onze schuld en doen we dingen zoals meerdere accounts maken of meerdere exemplaren van een app of functie uitvoeren die niet op die manier is ontworpen. Hierdoor kunnen gebruikersgegevens of gegevens in het cachegeheugen achterblijven die een app moeilijker kan verwerken.

  • Gebrek aan updates en onderhoud zijn slecht.

Elke ontwikkelaar zal u vertellen dat de taak niet is voltooid zodra het programma is gepubliceerd en dat de software moet worden onderhouden. Dit betekent het oplossen van fouten die gebruikers vinden, maar ook frequente updates om goed te werken met andere software. Gebrek aan regelmatig onderhoud over de hele linie is de grootste oorzaak van software-erosie.

De 'Android' die op uw telefoon wordt uitgevoerd, is eigenlijk een grote groep onafhankelijk draaiende programma's en services die constant met elkaar moeten communiceren. Een voorbeeld: Facebook brengt nog een wijziging aan op hun servers en werkt vervolgens de app bij in Google Play. Je app Contacten wordt gekoppeld aan Facebook, dus er is mogelijk een update nodig. Of je camera krijgt een update, maar de daaraan gekoppelde galerij-applicatie niet. Alle delen van het systeem moeten met alle andere delen werken, en dat betekent regelmatig onderhoud.

Het goede nieuws hier is dat veel problemen met Software Erosion worden opgelost met een fabrieksreset waarbij alle gebruikersgegevens worden gewist. Het slechte nieuws is dat het uiteindelijk allemaal terugkomt.

Software entropie

Alle software die we niet kunnen wijzigen, bevat bugs en ongebruikte code (zie hierboven). Deze bugs zullen waarschijnlijk in de loop van de tijd ongewijzigd blijven, maar kunnen erger worden naarmate de complexiteit van software die we kunnen veranderen toeneemt. Dit wordt software-entropie genoemd.

De software die u wijzigt, is van invloed op de software die u niet kunt wijzigen, omdat het systeem zelf complexer wordt.

De meeste software op uw telefoon bevindt zich in een gesloten systeem. Mogelijk kunt u de toetsenbord- of camera-app bijwerken vanuit de Play Store, maar het grootste deel van het besturingssysteem is in de fabriek geïnstalleerd en alleen gewijzigd met een volledige systeemupdate. Dit is heel anders dan alle apps, zowel in de fabriek geïnstalleerde gebruikersapps als apps die u zelf hebt geïnstalleerd. De software die u kunt wijzigen, wordt in de loop van de tijd complexer en de software die u niet kunt veranderen, moet ermee omgaan.

De mensen die de software op je telefoon hebben geschreven, zijn behoorlijk slim als het gaat om dit alles. Maar niemand kan weten wat we zullen doen, wat nieuwe apps kunnen doen en hoe apps die zijn ontworpen voor één set API's (applicatie-programmeerinterfaces), bijvoorbeeld de API's van Samsung uit hun softwareontwikkelingskit, met apps werken ontworpen voor een andere set API's, zoals die van Google die deel uitmaken van Android. De ontwikkelaars moeten hun best doen om de software te raden en te maken op een manier die niet breekt en er het beste van hoopt.

Er zijn twee manieren om Software Entropy te bestrijden: regelmatig softwareonderhoud door tijdige updates of het terugzetten van de gebruikerssoftware naar de fabrieksstatus.

Software bloat

Dit is niet wat de naam doet vermoeden, hoewel extra bloatware-apps dingen langzamer kunnen doen lopen. Software Bloat wanneer het over Bit Rot gaat, betekent software die is gevuld met extra of ongebruikte functies.

Hoe meer functies aan een programma worden toegevoegd, hoe complexer het wordt. Complexiteit maakt applicaties langzamer.

"Extra" functies zijn onmogelijk te definiëren. Apps of delen van apps die ik niet gebruik zijn vreemd voor mij, maar u kunt ze wel gebruiken en ervan houden. Vanuit het oogpunt van een computer is de enige goede applicatie er een die slechts één ding doet en zichzelf sluit zodra hij klaar is. Dit is onpraktisch vanuit het oogpunt van de gebruiker; stel je een toetsenbord-app voor die werd gesloten nadat elke letter was getypt. De bedrijven die de telefoons maken waar we van houden, moeten een gelukkig medium vinden tussen functies en prestaties door de juiste hardware te gebruiken of te bezuinigen op functies in apps. Dat kan betekenen dat u meer RAM toevoegt en een snellere processor gebruikt of functies van een app of beide bijsnijdt.

Een ander onderdeel van de "extra" functies is software die meerdere (en vaak concurrerende) standaarden moet kunnen hanteren. Uw e-mailtoepassingen zijn hier een goed voorbeeld van. Als u Gmail gebruikt en de Gmail-app gebruikt, zijn de zaken veel gestroomlijnder dan wanneer u de andere e-mailapp met een Gmail-account of een Exchange-account of zoiets als een Yahoo! POP3-account. De e-mail-app moet dingen kunnen doen die de Gmail-app niet kan en moet kunnen omgaan met de verschillende soorten gegevens die we maken. Dit kost tijd om te verwerken en naarmate we meer gegevens toevoegen, kost het meer tijd.

Misschien is het beste voorbeeld van 'extra' functies en hoe deze de prestaties beïnvloeden, het vergelijken van Evernote en Google Keep. Als je alleen de app gebruikt om notities te maken, betekenen alle extra's in Evernote dat het veel meer tijd kost om ze toe te voegen of te lezen. Als je van die extra functies houdt, zul je snel merken dat Google Keep de meeste ervan gewoon niet kan. Er is hier geen goed of fout, maar dit heeft wel een grote impact op de prestaties.

Ongebruikte "overgebleven" functies kunnen nog steeds worden uitgevoerd en problemen veroorzaken, en onze telefoons zijn ermee gevuld.

Ongebruikte functies zijn meer frustrerend omdat we niet weten dat ze er zijn en we niets kunnen doen om dingen te veranderen als we dat deden. Wanneer een bedrijf als LG (we kiezen ze hier, maar dit is van toepassing op elk bedrijf dat telefoons maakt, zelfs Google) een telefoon maakt met hun eigen apps die duplicaten zijn van 'stock'-Android-apps zoals de telefoonkiezer of de kalender, er is veel overgebleven code die niet wordt gebruikt. Een deel van de code wordt ook nog steeds uitgevoerd wanneer u uw telefoon start. We hebben het gehad over hoe dit betekent dat bugs moeilijker te vinden zijn in dat deel van de code, maar het kan ook een grote invloed hebben op de prestaties. En wanneer Software Entropy wordt meegenomen, zien we hoe die bugs in de loop van de tijd erger en erger kunnen worden.

Wanneer je dwaze argumenten ziet in opmerkingen over hoe een telefoon als de Moto G5 sneller is dan een Galaxy S8 met de helft van de hardwaremacht, is Software Bloat de reden.

Dus wat betekent dit allemaal en wat kan ik eraan doen?

Dat is een gemakkelijke vraag - het betekent dat sommige telefoons langzamer zijn dan andere en sommige telefoons in de loop van de tijd merkbaar langzamer worden, terwijl andere minder worden beïnvloed. En we kunnen er eigenlijk niets aan doen.

Meer functies betekenen langzamere software en meer kans voor Bit Rot. Het is een vak dat velen graag maken.

Echt gepraat - een telefoon zoals de Note 8 is merkbaar langzamer (en toont deze bij bevestiging aan tools die de prestaties bewaken) dan een Pixel 2. De Note 8 wordt na zes maanden nog langzamer. Maar de Pixel 2 zal nooit in staat zijn om een ​​aantal dingen te doen die een Note 8 doet, ongeacht hoeveel apps we installeren of hoe we de rotzooi eruit hacken. Ik kan een screenshot annoteren met de S Pen onmiddellijk nadat ik het heb vastgelegd op de Note 8, maar op de Pixel 2 moet ik het screenshot delen met een ander apparaat om het te annoteren met hetzelfde niveau van functies en details.

Net als het argument Evernote versus Google Keep hierboven, is wat beter is grotendeels een kwestie van functies die je leuk vindt. De Note 8 heeft alle functies. Dit betekent dat het alle bugs en software-opgeblazenheid heeft die Bit Rot meer opvallen. Dit kan een probleem voor u zijn, maar voor anderen is het niet omdat er geen andere manier is om de functieset te krijgen. Daarom zijn er meer Android-telefoons dan alleen een Pixel en Pixel Plus en wat iedereen bedoelt als ze zeggen dat Android je een keuze geeft.

En wanneer Bit Rot ooit genoeg wordt van een probleem dat u er iets aan moet doen, reset u gewoon uw telefoon en neemt u een paar uur de tijd om alles terug te zetten.

Vragen?

Geluid uit in de reacties hieronder!