Skocz do zawartości
Daniel.

tutorial Zmieniamy system plików z ext4 na f2fs w LG G2. [INFO] Jak? Dlaczego? I z czym to się wiąże?

    Rekomendowane odpowiedzi

    Daniel.

    Chciałbym Wam, drodzy użytkownicy G2 przedstawić sposób na zmianę systemu plików w naszym telefonie oraz informację z czym to się wiąże i jakie korzyści można z tego dobrodziejstwa czerpać z androidem Lollipop.

    Na początek chciałbym jednak zwrócić uwagę iż ta opcja jest skierowana w stronę bardziej zaawansowanych właścicieli G2
    ( oczywiście każdy może wykonać zmianę systemu plików ) ponieważ wiąże się z nią pewna odpowiedzialność o której wspomnę poniżej dlatego cały zabieg wykonujemy na własną odpowiedzialność.

    Może na początek parę przydatnych informacji a mianowicie czym jest system plików ext4 oraz f2fs w skrócie. 

    - Ext4 jest to popularny system plików stosowany w systemie Linux na którym opiera się Android w naszych smartfonach.
    - F2fs został stworzony dla dysków opartych na pamięci NAND czyli dyski SSD, karty pamięci SD oraz MMC.

    Uwaga! Zmiany spowodują utratę danych oraz sformatowanie pamięci wewnętrznej dlatego zalecam skopiowanie cennych plików/danych na pamięć komputera lub zewnętrzną.

    Do zmiany systemu potrzebujemy oczywiście telefon LG G2, TWRP w wersji 2.8.7.3 oraz kernela w pełni obsługującego f2fs Dorimanx ( zalecam najnowszy 8.3 ) dla stock oraz dla kernela AOSP który posiada wsparcie f2fs.
    Jeżeli posiadamy sprawny zainstalowany system i wszystkie potrzebne opcje możemy zacząć zmiany.

    Zmieniamy system plików:


    Zalecana instalacja dla kernela Dorimanx:

    - Dla partycji /data

    Wykonujemy backup partycji data. Kopiujemy kopie zapasową na komputer i zmieniamy w tym backup'ie nazwy plików w których jest wpis " ext4 " na " f2fs " np: 
    data.ext4.win000 na data.f2fs.win000
    4data.ext4.win000.md5 na data.f2fs.win000.md5
    i tak dalej edytujemy nazwy.
    Dalej przechodzimy do telefonu i postępujemy i wykonujemy poniższe kroki:
    Wchodzimy do recovery klikamy następnie > wipe > advanced wipe > zaznaczamy /data > klikamy repair or change file system > klikamy change file system > wybieramy f2fs > akceptujemy zmianę.
    Wracamy do opcji reboot i klikamy reboot do recovery.
    Upewniamy się czy partycja /data jest w systemie plików f2fs i kopiujemy masz backup do pamięci telefonu po czym go przywracamy w opcji restore.


    Dla partycji /cache

    Opcja backupu nie jest konieczna dla cache.
     Podążamy tym samym sposobem czyli wracamy do opcji wipe > advanced wipe > zaznaczamy /cache > klikamy repair or change file system > klikamy change file system > wybieramy f2fs > akceptujemy zmianę.


    Gdy zakończymy zmianę wracamy do opcji reboot i klikamy reboot do recovery pod żadnym pozorem nie klikamy opcji reboot do systemu. Dopiero gdy wykonamy restart do recovery możemy kliknąć restart do systemu!
    Instalujemy np Diskinfo z GP i sprawdzamy czy partycja /data jak i /cache jest w systemie f2fs.

    Instalacja skrócona:

    Dla partycji /data klikamy opcje wipe > advanced wipe > zaznaczamy /data > klikamy repair or change file system > klikamy change file system > wybieramy f2fs > akceptujemy zmianę.

    Dla partycji /cache podążamy tym samym sposobem czyli wracamy do opcji wipe > advanced wipe > zaznaczamy /cache > klikamy repair or change file system > klikamy change file system > wybieramy f2fs > akceptujemy zmianę.

    Teraz będziemy posiadać system który mieliśmy wraz z systemem plików f2fs dla partycji /data /cache.

    Dlaczego f2fs?

    Z biegiem czasu narastało wiele mitów co do wydajności telefonu z tym systemem. Niektórzy widzą różnicę inni nie oczywiście jak długi i szeroki świat tyle opinii. Dlatego zamieszczę tutaj test który wykonał @somboons na xda i który mam nadzieję bardziej nakreśli Wam całokształt tej zmiany i po którym się zastanowicie czy warto ingerować w system plików.

    Biała G2 ext4 - Czarna G2 f2fs Video:

     


     

    Topic XDA:
    http://forum.xda-developers.com/lg-g2/general/lgg2-benchmark-file-performance-f2fs-vs-t3283018

    Osobiście używam tej opcji dla partycji /data /cache już dłuższy czas lecz następnym krokiem będzie zmiana partycji system'u na f2fs co oczywiście wiąże się z utratą całego systemu i instalacją go na nowo z poziomu TWRP. Po reboocie do recovery w tym przypadku będziemy mieli " goły " telefon tylko z TWRP na pokładzie.

    Wracając do odpowiedzialności. Musimy pamiętać aby przy zmianie systemu np z Google Edition na Cloudy ( taki przykład ) zmienić wcześniej system plików w partycjach z powrotem na ext4 ( takim samym sposobem którym zmienialiśmy na f2fs. )
    kiedy będziemy wgrywać czysty rom. Jeżeli zaś po instalacji rom'u będziemy wgrywać kernel z obsługą f2fs wtedy nie musimy powracać do ext4.
    Nie zalecam przywracania backup'u zrobionego w ext4 na f2fs i odwrotnie. 

    Całość jako f2fs jest oczywiście stabilna i nie wpływa negatywnie na użytkowanie smartfona a jedynie może poprawić jego wydajność.


     

    Edytowane przez Nekser
    • Lubię to! 12

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Zaraz się biorę za robotę, tylko dodam, że podobno f2fs zabiera więcej pamięci.

    Edytowane przez Lipson47

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    pepe444

    Ćwiczenie ciekawe, ale sugeruję najpierw chwilę się zastanowić jaki ma być efekt. Jeśli tylko sama gimnastyka, to nie widzę problemu, ale jeśli ktoś się spodziewa, że od tego będzie mu lepiej działał telefon, to może się rozczarować. Pomyślcie na początek ile danych w ciągu np. całego dnia telefon odczytuje/zapisuje ze swojego "dysku". Pomijając skrajne przypadki, gdy ktoś non-stop bawi się telefonem, puszcza jakieś "benchmarki" i inne "antuty", to normalnie co się robi, uruchamia się kilka aplikacji, zrobi parę zdjęć, ilość tych odczytanych i zapisanych danych to będzie może kilkadziesiąt, może kilkaset MB. Ile trwa odczytanie z pamięci flash kilkudziesięciu MB? 3 sekundy? Zapis może parę sekund więcej. Czyli łączny czas tych operacji dyskowych to będzie kilkanaście, kilkadziesiąt sekund dziennie. I teraz zabieracie się za "optymalizację" tych sekund! A przecież ten f2fs też nie działa z prędkością światła, czyli w najlepszym wypadku zyskacie jakiś ułamek z tych sekund. W skali całego dnia. A jak do tego dodać, że większość tych operacji i tak idzie przez cache w pamięci RAM i w zasadzie są niewidoczne dla użytkownika, tzn. nie spowalniąją telefonu. np. robisz zdjęcie i nie czekasz, aż się zapisze te 5MB, tylko telefon normalnie działa dalej, to już w ogóle nie widzę sensu takich "optymalizacji". Kupa roboty, zero efektu, i jeszcze ryzyko uwalenia telefonu, albo przynajmniej ponownej instalacji systemu.

     

    Mam tablet Samsunga, który ma doskonałe "niezależne" wsparcie (o G2 w tej dziedzinie to szkoda mówić), oczywiście w swoim czasie było modne przechodzenie na f2fs, NIKT nie zauważył poprawy w działaniu tabletu, poza testami zapisu i odczytu z dysku, gdzie tę poprawę widać tylko w cyferkach.

     

    Na załączonym filmiku facet chaotycznie włącza i wyłącza jakieś aplikacje, raz na jednym raz na drugim telefonie. Widać nie znalazł niczego, co ewidentnie działałoby szybciej na f2fs i mógłby jednocześnie puścić jakiś programik, który na jednym telefonie zrobi coś piorunem, a na drugim będzie się ślimaczył. A on tylko pokazuje jakieś "benczmarki", puszcza jakieś dema grafiki, które z operacjami na filesystemie nie mają nic wspólnego. Ja na jego miejscu zrobiłbym np. jakąś konwersję wideo, albo przeskalowanie dużej ilości zdjęć na raz i pokazał "o, zobaczcie, tu trwało minutę, tu pół minuty". Ale jak to zrobić gdy wychodzi, że na jednym trwa minutę, a na drugim też minutę, albo może 59 sekund, ale też nie za każdym razem :)

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    Daniel.

    Zaraz się biorę za robotę, tylko dodam, że podobno f2fs zabiera więcej pamięci.

    Pamięci RAM ? Względem ext4 nie zaobserwowałem żadnych drastycznych różnic czyli w ogóle.

    @@pepe444 nigdy w życiu i w żadnym telefonie lub urządzeniu z androidem nie zaobserwujesz zmian strasznie wzbogacajacych system. Co do samej zmiany systemu to w świetle oczekiwań i ludzkiego oka takiego jak Twojego może i nie dać to wiele, być może i w ogóle. Użytkownicy zaawansowani którzy wypunktują każdą nieprawidłowość stwierdzą czy jest w tym korzyść.

    Edytowane przez Danielf85

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    pepe444

    Ja tylko podpowiadam nieświadomym co tak naprawdę może im poprawić zmiana filesystemu. Ewentualny zysk to pojedyncze sekundy na dobę, bo cała "optymalizacja" dotyczy tylko operacji na plikach, które w sumie, zebrane do kupy w ciągu jednej doby, szacuję na kilkanaście, może kilkadziesiąt sekund. Operacje, które i tak są buforowane w cache w pamięci RAM, co doskonale ukrywa szybkość (czy powolność) prawdziwego filesystemu pod spodem.

     

    Tu ktoś zrobił niezłe porównanie ext4 i f2fs (wyniki z Androbech to pic na wodę, można pominąć):

     

    http://forum.xda-developers.com/showthread.php?t=2697069

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    arhu

    @@Danielf85

     

    Wszystko okej, ale zanim następnym razem wrzucisz "dowód" iż f2fs daje tak sporą różnicę w stosunku do ext4 to zwróć uwagę na 2:22 w filmiku ;)

    A dokładniej jaka częstotliwość cpu jest ustawiona na jednym telefonie, a jak na drugim.

     

    Pozdrawiam serdecznie

    Edytowane przez bartekc00
    unikamy cytowania niepotrzebnie tak długich postów. Zaśmieca to forum.

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Czy jest jakiś sens konwertować "internal storage" / "kartę sd" czy jak kolwiek jest to nazywane? Czy tylko filesystemy sytemowe?

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    Daniel.

    Nie. Zmieniamy system plików w tych partycjach w których ma znaczenie prędkość zapisu danych oraz odczytu poprzez aplikacje. 
    Nie będziemy mieć w tym przypadku żadnych zmian w partycji /system, a partycja internal storage funkcjonuje tu jako pamięć masowa/sprzętowa.

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

    Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

    Zarejestruj nowe konto

    Załóż nowe konto. To bardzo proste!

    Zarejestruj się

    Zaloguj się

    Posiadasz już konto? Zaloguj się poniżej.

    Zaloguj się

    • Ostatnio przeglądający   0 użytkowników

      Brak zarejestrowanych użytkowników przeglądających tę stronę.

    x