Centrala Androida

„Bit Rot” wyjaśnił: Dlaczego Twój telefon jest wolniejszy niż wtedy, gdy był nowy

protection click fraud

Komputery są trochę jak ludzie — z wiekiem stają się nieco wolniejsze, a wady są łatwiejsze do zauważenia.

Nasze telefony to komputery pomniejszone do rozmiarów kieszonkowych i łatwe do noszenia. A to oznacza, że ​​w miarę upływu czasu rzeczy nie dzieją się tak szybko, jak kiedyś lub mogą się trochę zabujać. To jest uniwersalne; zdarza się telefony Galaxy I telefony LG i telefony Pixel i iPhone'y i każdy inny telefon, który nie tylko dzwoni i wysyła SMS-y. Niektórzy twierdzą, że nie Widzieć to się dzieje, a to z powodu Dlaczego to się dzieje i sposób, w jaki oprogramowanie jest pisane dla wszystkich różnych telefonów w środowisku naturalnym. Ale nadal dzieje się to na twoim telefonie i zawsze będzie.

Rzućmy okiem na to, co jest powszechnie znane jako „Bit Rot” i zobaczmy, czy nie możemy trochę lepiej zrozumieć.

Czym dokładnie jest Bit Rot?

Jest to termin często używany przez ludzi zajmujących się komputerami i zasadniczo oznacza, że ​​oprogramowanie jest „stare” i stało się wolniejsze niż kiedyś. W grę wchodzą trzy rzeczy, które są dobrze udokumentowane, nawet jeśli nie są łatwe do zrozumienia:

Erozja oprogramowania, Entropia oprogramowania, I Wzdęcie oprogramowania.

Najpierw kilka wyjątków

Czasami mogą być też inne czynniki. Degradacja danych I Pełzanie funkcji może powodować spowolnienie programów i aplikacji, ale są one łatwiejsze do wyjaśnienia i różnią się nieco od tego, co nazywamy Bit Rot. Degradacja danych to wymyślne słowo, które oznacza, że ​​twoja pamięć — pamięć RAM, pamięć masowa lub jedno i drugie — starzeje się. Pamięć RAM i nośniki półprzewodnikowe wymagają ładunku elektrycznego iz czasem mogą rozproszyć więcej, niż zostały zaprojektowane. Oznacza to, że niektóre zapisane bity (bity programowe) można zmienić. Gdy kilka bitów jest błędnych, wiele programów może to skompensować, ale wymaga to czasu, a programy działają nieco wolniej. Kiedy wiele bitów jest niepoprawnych, rzeczy prawie przestają działać zgodnie z przeznaczeniem.

Degradacja danych i pełzanie funkcji mogą również spowolnić Twój telefon, ale różnią się od Bit Rot.

Funkcja pełzania jest łatwa do zrozumienia. Twój telefon został zbudowany z myślą o określonym zestawie oprogramowania. Gdy otrzymasz aktualizację, która dodaje więcej funkcji, sprzęt musi pracować ciężej, a działanie staje się wolniejsze. Fora internetowe są pełne ludzi, którym nie podobała się ostatnia aktualizacja ich telefonu Galaxy, oraz osób ze starszymi iPhone'ami, które nienawidzą najnowszej wersji iOS. Wynika to z faktu, że oprogramowanie zostało napisane z myślą o nowszym i bardziej wydajnym sprzęcie, podobnie jak oprogramowanie, z którym telefon został oryginalnie dostarczony. Wszyscy uwielbiamy nowe funkcje i aktualizacje, ale stare przysłowie „uważaj, czego sobie życzysz” jest tutaj jak najbardziej uzasadnione.

Te problemy z pewnością mogą mieć wpływ, ale różnią się od Bit Rot i prawdopodobnie nie są przyczyniając się znacznie do spowolnienia naszych telefonów, ponieważ nie trzymamy ich wystarczająco długo, aby to zobaczyć działanie.

Erozja oprogramowania

Erozja oprogramowania to powolne, ale stałe pogarszanie się wydajności, które może wystąpić w przypadku każdego oprogramowania, niezależnie od tego, czy jest to coś, czego używamy dużo, czy tylko trochę. Lub nawet nigdy. Dzieje się tak, ponieważ my używać oprogramowanie i wszystkie aplikacje zmieniają się, gdy są używane — do bazy dodajemy dane użytkownika, aby oprogramowanie robiło to, co chcemy. Zwróć uwagę, że różni się to od oprogramowania, które działa wolno lub zawiera błędy, gdy często go używamy, ale wraca do normy po ponownym uruchomieniu. Zwykle jest to spowodowane drobnymi błędami gromadzącymi się w czasie lub wyciekiem pamięci. Nie można naprawić erozji oprogramowania, zamykając i ponownie otwierając aplikację lub ponownie uruchamiając telefon.

Każde oprogramowanie ma błędy i każde oprogramowanie wymaga regularnej konserwacji, której nigdy nie otrzymuje.

Istnieją dwa różne rodzaje erozji oprogramowania, uśpione i aktywne. Uśpiona erozja oprogramowania ma miejsce, gdy program lub części programu, których nie używasz, przestają działać dobrze, ponieważ zmieniły się inne rzeczy, a aktywna erozja ma miejsce z powodu zmian podczas korzystania z niego. Oba typy występują z kilku różnych powodów.

  • Niewykorzystany lub pozostały kod może (i często tak jest) zawierać błędy, których nie można wykryć.

Każde oprogramowanie ma błędy, bez względu na to, co mówi programista lub użytkownik. Kiedy firma zmienia jakiś kod, istnieje bardzo duża szansa, że ​​część oryginalnego kodu nigdy nie zostanie użyta, ale nadal jest wbudowana w produkt końcowy. Błędy tutaj nie są tak podatne na złapanie i mogą mieć natychmiastowy efekt lub taki, który zajmuje trochę czasu, zanim się pojawi.

  • Zmiany, ponieważ oprogramowanie nie jest przyjazne dla użytkownika, zdarzają się często.

Deweloper tworzy oprogramowanie z konkretnym pomysłem na to, jak będziemy go używać, ale kiedy już dostanie się w nasze ręce, często nie używamy go w ten sposób! Czasami to nie jest nasza wina, a oprogramowanie ma źle zaimplementowany interfejs, więc robimy rzeczy, których programista nigdy by się nie spodziewał. Innym razem jest to nasza wina i robimy takie rzeczy, jak tworzenie wielu kont lub uruchamianie wielu instancji aplikacji lub funkcji, które nie zostały zaprojektowane do działania w ten sposób. Może to spowodować pozostawienie danych użytkownika lub danych w pamięci podręcznej, które będą trudniejsze do przetworzenia przez aplikację.

  • Brak aktualizacji i konserwacji jest zły.

Każdy programista powie ci, że praca nie jest zakończona po opublikowaniu programu i że oprogramowanie wymaga konserwacji. Oznacza to naprawianie błędów znalezionych przez użytkowników, ale także częste aktualizacje, aby działały dobrze z innym oprogramowaniem. Brak regularnej konserwacji we wszystkich obszarach jest największą przyczyną erozji oprogramowania.

„Android”, który działa na twoim telefonie, to w rzeczywistości duża grupa niezależnie działających programów i usług, które muszą stale się ze sobą komunikować. Przykład: Facebook wprowadza kolejną zmianę na swoich serwerach, a następnie aktualizuje aplikację w Google Play. Twoja aplikacja Kontakty jest powiązana z Facebookiem, więc może wymagać aktualizacji. Lub Twój aparat otrzymuje aktualizację, ale powiązana z nią aplikacja galerii nie. Wszystkie części systemu muszą współpracować ze wszystkimi innymi częściami, a to oznacza regularną konserwację.

Dobrą wiadomością jest to, że wiele problemów związanych z erozją oprogramowania jest naprawianych przez przywrócenie ustawień fabrycznych, w którym wszystkie dane użytkownika są usuwane. Zła wiadomość jest taka, że ​​wszystko w końcu wraca.

Entropia oprogramowania

Całe oprogramowanie, które my żargon zmiana zawiera błędy i nieużywany kod (patrz wyżej). Te błędy prawdopodobnie pozostaną niezmienione w miarę upływu czasu, ale mogą się pogorszyć wraz ze złożonością oprogramowania Móc zmiana wzrasta. Nazywa się to entropią oprogramowania.

Oprogramowanie, które zmieniasz, wpływa na oprogramowanie, którego nie możesz zmienić, ponieważ sam system staje się bardziej złożony.

Większość oprogramowania w telefonie znajduje się w systemie zamkniętym. Możesz być w stanie zaktualizować aplikację klawiatury lub aparatu z poziomu Sklep Play, ale większość systemu operacyjnego jest instalowana fabrycznie i zmieniana tylko podczas pełnej aktualizacji systemu. Różni się to bardzo od wszystkich aplikacji, zarówno fabrycznie zainstalowanych aplikacji użytkownika, jak i tych, które sam zainstalowałeś. Oprogramowanie ty Móc zmiana staje się z czasem bardziej złożona, a oprogramowanie, którego nie można zmienić, musi sobie z tym poradzić.

Ludzie, którzy napisali oprogramowanie na twoim telefonie, są cholernie sprytni, jeśli chodzi o to wszystko. Ale nikt nie może wiedzieć, co będziemy robić, jakie nowe aplikacje będą w stanie robić i jak aplikacje zaprojektowane dla jednego zestawu API (interfejsów programowania aplikacji), dla na przykład interfejsy API firmy Samsung z ich zestawu do tworzenia oprogramowania będą działać z aplikacjami zaprojektowanymi dla innego zestawu interfejsów API, takich jak te firmy Google, które są częścią Android. Twórcy muszą dołożyć wszelkich starań, aby odgadnąć i stworzyć oprogramowanie w sposób, który się nie zepsuje i ma nadzieję na najlepsze.

Istnieją dwa sposoby walki z entropią oprogramowania — regularna konserwacja oprogramowania poprzez terminowe aktualizacje lub resetowanie oprogramowania użytkownika do stanu fabrycznego.

Wzdęcie oprogramowania

To nie jest to, co sugeruje nazwa, chociaż dodatkowe aplikacje typu bloatware mogą powodować i powodują wolniejsze działanie. Software Bloat, gdy mówimy o Bit Rot, oznacza oprogramowanie wypełnione dodatkowymi lub nieużywanymi funkcjami.

Im więcej funkcji zostanie dodanych do dowolnego programu, tym bardziej będzie on złożony. Złożoność powoduje, że aplikacje działają wolniej.

„Dodatkowe” funkcje są niemożliwe do zdefiniowania. Aplikacje lub części aplikacji, których nie używam, są mi obce, ale możesz je używać i pokochać. Z punktu widzenia komputera, jedyna dobra aplikacja to taka, która robi tylko jedną rzecz, a po zakończeniu zamyka się sama. Jest to niepraktyczne z punktu widzenia użytkownika; wyobraź sobie aplikację klawiatury, która zamykała się po wpisaniu każdej litery. Firmy produkujące telefony, które kochamy, muszą znaleźć złoty środek między funkcjami a wydajnością, używając odpowiedniego sprzętu lub ograniczając funkcje w aplikacjach. Może to oznaczać dodanie większej ilości pamięci RAM i użycie szybszego procesora lub funkcji przycinania z aplikacji lub obu.

Kolejną częścią „dodatkowych” funkcji jest oprogramowanie, które musi obsługiwać wiele (i często konkurujących ze sobą) standardów. Twoje aplikacje poczty e-mail są tego doskonałym przykładem. Jeśli korzystasz z Gmaila i korzystasz z aplikacji Gmail, wszystko jest o wiele prostsze niż w przypadku korzystania z Inny aplikacja e-mail z kontem Gmail, kontem Exchange lub czymś w rodzaju Yahoo! konto POP3. Aplikacja E-mail musi mieć możliwość robienia rzeczy, których aplikacja Gmail nie może, i musi obsługiwać różne typy danych, które tworzymy. Przetwarzanie tego zajmuje trochę czasu, a ponieważ dodajemy więcej danych, zajmuje to więcej czasu.

Być może najlepszym przykładem „dodatkowych” funkcji i ich wpływu na wydajność byłoby porównanie Evernote i Google Keep. Jeśli używasz aplikacji tylko do robienia notatek, wszystkie dodatki w Evernote oznaczają, że dodanie lub przeczytanie ich zajmuje dużo więcej czasu. Jeśli podobają Ci się te dodatkowe funkcje, szybko przekonasz się, że większość z nich nie jest dostępna w Google Keep. Nie ma tu dobra ani zła, ale ma to duży wpływ na wydajność.

Niewykorzystane „resztki” funkcji mogą nadal działać i powodować problemy, a nasze telefony są nimi wypełnione.

Nieużywane funkcje są bardziej frustrujące, ponieważ nie wiemy, że tam są, a gdybyśmy to robili, nie moglibyśmy nic zrobić, aby coś zmienić. Kiedy firma taka jak LG (będziemy się tutaj czepiać, ale dotyczy to każdej firmy produkującej telefony, nawet Google) tworzy telefon z własnym aplikacji, które są duplikatami „standardowych” aplikacji na Androida, takich jak dialer telefonu lub kalendarz, jest dużo resztek kodu, który nie jest używany. Część kodu nadal działa również po uruchomieniu telefonu. Mówiliśmy o tym, że oznacza to, że trudniej będzie znaleźć błędy w tej części kodu, ale może to mieć również duży wpływ na wydajność. A kiedy uwzględnimy entropię oprogramowania, zobaczymy, jak te błędy mogą się pogarszać z czasem.

Kiedy widzisz głupie argumenty w komentarzach o tym, że telefon taki jak Moto G5 jest szybszy niż Galaxy S8 z połową mocy sprzętowej, Software Bloat jest powodem.

Co to wszystko oznacza i co mogę z tym zrobić?

To proste pytanie — oznacza to, że niektóre telefony są wolniejsze od innych, a niektóre telefony stają się zauważalnie wolniejsze z czasem, podczas gdy inne są mniej podatne. I tak naprawdę nic nie możemy z tym zrobić.

Więcej funkcji oznacza wolniejsze oprogramowanie i więcej możliwości dla Bit Rot. Jest to wymiana, którą wielu chętnie zawiera.

Prawdziwa rozmowa — telefon taki jak Note 8 jest zauważalnie wolniejszy (i pokazuje to po podłączeniu do narzędzi monitorujących wydajność) niż Pixel 2. Note 8 będzie jeszcze wolniejszy mniej więcej za sześć miesięcy. Ale Pixel 2 będzie nigdy być w stanie zrobić niektóre rzeczy, które robi Note 8, bez względu na to, ile aplikacji zainstalujemy lub jak zhakujemy to gówno. Mogę dodać adnotację do zrzutu ekranu rysikiem S Pen natychmiast po zrobieniu go na Note 8, ale na Pixelu 2, muszę udostępnić zrzut ekranu innemu urządzeniu, aby dodać do niego adnotację z tym samym poziomem funkcji i Szczegół.

Podobnie jak Evernote vs. Argument Google Keep powyżej, co jest lepsze, to w dużej mierze kwestia funkcji, które lubisz. Note 8 ma Wszystko cechy. Oznacza to, że zawiera wszystkie błędy i oprogramowanie, które sprawiają, że Bit Rot jest bardziej zauważalny. Może to stanowić problem dla ciebie, ale dla innych nie dlatego, że nie ma innego sposobu na uzyskanie zestawu funkcji. Właśnie dlatego jest więcej telefonów z Androidem niż tylko Pixel i Pixel Plus i co wszyscy mają na myśli, gdy mówią, że Android daje ci wybór.

A kiedy Bit Rot kiedykolwiek stanie się na tyle problemem, że musisz coś z tym zrobić, po prostu przywróć telefon do ustawień fabrycznych i poświęć kilka godzin na przywrócenie wszystkiego.

Pytania?

Odezwij się w komentarzach poniżej!

instagram story viewer