XDA интервюира Стан Дмитриев от Tuxera, финландска компания, специализирана във файлови системи. Стан обсъжда файловите системи и бъдещето на F2FS.
Файловите системи не се обсъждат твърде често в XDA или друг форум. Темата включва много разработка на ниско ниво, така че разработчиците предпочитат да се фокусират върху приложения, ROM или ядра. Въпреки това файловата система е жизненоважна част от всяко хранилище. Това е технологията, която очертава как данните в хранилището на вашето устройство се съхраняват и извличат. Има много различни видове файлови системи - всяка със своите предимства и недостатъци - и избирането на една над друга може да направи огромна разлика в стабилността и производителността. И така, как OEM производителите правят този избор? Имах удоволствието да говоря с Стан Димитриев, мениджър PR и комуникации в Туксера, финландска компания, която предоставя решения за файлова система на много големи OEM производители.
Въпрос: Можете ли да представите себе си и Tuxera?
A: Аз съм Стан Дмитриев. Откакто получих първия си телефон с Android (HTC EVO 3D), станах активен фен на XDA общността. Да кажем, че инсталирах персонализиран ROM и анулирах гаранцията си в първия ден ( Стан. Дмитриев е член на форума на XDA). Преди няколко години съосновах стартиращ проект, наречен Corgi for Feedly, по това време общността на XDA ни помогна много с дефинирането и разработването на приложението.
В момента съм PR & Communications Manager в Tuxera, която е водещата компания за вграден софтуер за съхранение, файлови системи, за да бъдем точни, на пазара. Нашият софтуер захранва повече от един милиард устройства и може да бъде намерен в най-новите водещи телефони, автомобили, рутери, дронове и камери. Историята на компанията започна с NTFS-3G, когато нашият президент и технически директор Szabolcs “Szaka” Szakactics направи NTFS да работи с Linux устройства. В момента разработваме наши собствени файлови системи и реализации както за външно, така и за вградено хранилище и работим с повечето автомобилни компании, както и с много компании за смартфони.
Тук, в Tuxera, ние доста често посещаваме форумите на XDA, особено когато отстраняваме неизправности на блокирано устройство или намираме персонализиран ROM / ядро, с което да играем. Много от моите колеги често посещават XDA, за да прочетат за най-новите дълбоки технологични новини около Android и Linux екосистемите.
Въпрос: Файловите системи са неразделна част от нашите устройства, но много малко хора знаят за тяхната роля, подобрения, силни и слаби страни. Какъв е дарът от това и защо повече хора трябва да се интересуват от файловите системи, съхраняващи заедно техните данни?
О: Файловите системи са жизненоважен елемент от ядрото на Linux, който е отговорен за всички взаимодействия между устройството и неговото хранилище. Всеки път, когато правите снимка, отваряте приложение или гледате видео – файловата система играе основна роля за достъпа и съхраняването на всички файлове на операционната система. Файловите системи не бяха толкова вълнуващи от известно време, основната причина е, че затруднението в производителността идваше от хранилището.
Но тъй като скоростите на светкавицата стават изключително високи, особено с въвеждането на UFS, сега софтуерът трябва да бъде модернизиран, за да бъде в крак с производителността на светкавицата. Файловата система не само може да повлияе на скоростта на съхранение, но също така играе важна роля за поддържане на производителността на телефона в дългосрочен план. Ако се направи погрешно, паметта ще стане фрагментирана, феномен, при който неефективното използване на паметта може да намали производителността на устройството. Намаляването на такава възможност до минимум е важна характеристика на файловата система.
Въпрос: Какво е F2FS (праймер) и защо започна да си проправя път към Android? Кои производители на оригинално оборудване бяха водещи?
О: F2FS е файлова система с отворен код, като основното е, че е проектирана за архитектура за флаш съхранение. NAND съхранение (флаш) се използва във всички настоящи телефони с Android обикновено като eMMC или UFS решения. Проектът първоначално беше разработен от Samsung и предизвика силен интерес от страна на някои от мобилните OEM производители. Нямаме данни кои OEM производители са започнали тази промяна. Но от това, което знам лично, Motorola беше първата, като много други OEM производители като OnePlus и Huawei последваха тази промяна скоро.
В: Какви бяха предимствата, които предоставя? OEM производителите цитират по-бързи операции за съхранение и производителност на потребителския интерфейс, но има ли други предимства?
О: The стъпка беше доста проста, F2FS носи по-висока производителност на флаш базираното хранилище. Вашата система ще стартира по-бързо (по-бързи скорости на четене), скоростите на запис ще бъдат по-високи, позволявайки запис на тежки 4K, по-висока честота на кадрите на забавен каданс и 360-градусови видеоклипове. Освен това, латентността между системата и хранилището ще бъде изключително ниска, което означава, че анимацията и отварянето на приложения ще се чувстват много по-бързи.
Въпрос: Проблемите, по-конкретно, изглежда са съсредоточени около влошаващата се производителност. Бихте ли обяснили това по-задълбочено? каква е причината
О: Идеята за F2FS беше наистина страхотна, за постигане на възможно най-бързата производителност за флаш устройства. Но също така е важно да се съсредоточите върху представянето в дългосрочен план. Хардуерът винаги може да бъде бърз извън кутията, но поддържането на тези скорости непрекъснато е много по-трудно предизвикателство. За случай на използване на Android съхранението на устройството е почти пълно през повечето време и има хиляди операции за четене и запис, които се случват понякога дори за секунда. Много от популярните приложения изпълняват услуги във фонов режим, което означава, че приложението извършва някои операции за четене/запис, дори когато не го отваряте. Ако се направят погрешно, операциите за запис могат драстично да увеличат фрагментацията на хранилището, правейки всяка следваща операция за четене/запис още по-бавна.
Виждаме фрагментацията на хранилището като една от причините за влошаване на производителността на устройства с Android. Сега това, което трябва да се определи, е дали проблемите са причинени от хардуерна съвместимост и как работи файловата система съхранение от различни производители на оригинално оборудване или дали архитектурата F2FS се фокусира върху началните скорости и това засяга дългосрочната производителност. Проблемите могат да бъдат причинени и от грешки, тъй като файловата система все още е в процес на разработка.
Въпрос: Има ли други проблеми с производителността или надеждността, които са по-малко известни?
О: Едно интересно нещо, което открихме, е, че F2FS има неочаквани режийни разходи, поне няколко стотици MB от вашето хранилище за кеширане и поддръжка на хранилището. Това определено има смисъл, ако имате 64 GB място за съхранение или повече, но на бюджетни телефони с размери 8 GB, 16 GB ROM това може да е проблем.
Основната констатация е, че настоящата реализация на F2FS е страхотна за среди само за четене, когато искате да постигнете по-високи скорости. F2FS трябва да се съсредоточи върху подобряването на своята дългосрочна производителност при съхранение при високо взаимодействие с малки файлове, тъй като това се случва в средата на Android.
Това в известен смисъл е битка на теории. Можете или да си представите, че производителността на хардуера е толкова бърза, че влошаването няма да е проблем. Или го гледате от обратната страна, където хардуерът е толкова бърз, че малко по-бавната производителност, която може да се поддържа в дългосрочен план, е това, което трябва да се постигне. F2FS избра първия подход и тук няма грешни опции, това е важен експеримент, който трябва да се направи, и крива на обучение за цялата индустрия. Като се има предвид това, това, което виждаме в момента, е, че дългосрочното представяне трябва да бъде основният фокус в момента.
Въпрос: Някои OEM производители се отказаха от използването на F2FS, докато други като Huawei все още поддържат F2FS на скорошни устройства. Мислите ли, че има тенденция и в двата случая? (Бавно приемане или пълно изоставяне)
О: Има множество сценарии, поради които OEM производителите ще продължат да използват F2FS.
OEM може да има собствено внедряване на F2FS, което носи някои корекции на известните проблеми.
OEM може да има много добри връзки с производителя на флаш памет, тъй като има достъп до FTL слоя на NAND и настройка файловата система да работи добре с хардуера може да доведе до значителни подобрения, включително фрагментирането на флаш съхранение.
OEM може да предпочете да се съсредоточи върху първоначалната производителност на телефона, тъй като средният жизнен цикъл на един смартфон е около 2 години и тъй като телефонът се забавя, те вече ще купуват нов.
OEM също може да има работеща услуга за дефрагментиране, това може частично да реши проблемите на F2FS.
Това са някои от възможните сценарии, като в същото време виждаме, че някои OEM производители вече са връщане към използване на Ext4, например OnePlus 3T използваше F2FS, но всички по-нови модели OnePlus използват Ext4.
Въпрос: В момента F2FS се нуждае от някакво решение за дефрагментиране в движение, което може да реши проблема, който в момента се появява с F2FS.
О: Инструментите за дефрагментиране съществуват от известно време, основното предимство е, че те могат да преразпределят/пренапишат блоковете памет, за да намалят фрагментацията на паметта. Но проблемът с този подход е, че презаписвате клетките на флаш паметта, което намалява живота на паметта. Най-добрият сценарий би бил данните да се записват интелигентно на първо място. Контролирането на щетите не е най-доброто решение.
Мислете за това като да направите бъркотия в една стая, като изхвърлите много неща навсякъде и след това започнете да ги подреждате в чекмеджетата. Защо не го направите веднага?
Въпрос: Успели ли са производителите на оригинално оборудване да противодействат или да се справят с някои от проблемите, които спират F2FS? Например, Huawei отхвърля влошаващата се производителност и рекламира по-бърз UX с течение на времето, отчасти благодарение на техния „AI“.
О: Добре, ако AI може да анализира поведението на съхранение и да пренапише файловата система, за да работи за конкретно флаш устройство, това вероятно може да реши проблемите с фрагментацията. AI може също така да анализира кои приложения или функции лицето използва най-често и да ги зареди/съхрани предварително съответно – правейки функциите на телефона да се чувстват по-бързи, това няма да реши проблема с фрагментацията все пак. Основното ми предположение е, че повечето от оптимизациите са свързани с потребителското пространство, а не с някакви дълбокотехнологични оптимизации на файловата система.
Въпрос: Кои са някои други вълнуващи разработки на файловата система, за които трябва да знаем? Как биха повлияли на потребителското изживяване, дори и на фино или ниско ниво?
О: F2FS и Ext4 все още са много жизненоважни и са файловите системи с отворен код. Ext4 е по-зрял и надежден, но може да ограничи производителността на флаш; F2FS е по-бърз, но и по-експериментален. Цялата ситуация, в която софтуерът се превръща в пречка, е това, което прави файловите системи отново вълнуващи. Преминаваме от среди с отчитане на всяка секунда към всяка милисекунда и файловите системи ще играят важна роля в това повишаване на производителността. Най-вълнуващото развитие за файловите системи би било създаването на наистина оптимизирано за флаш решение, което може да поддържа производителността на флаш.
В Tuxera ние разработваме Tuxera Flash File System, където правим неща като специфичен за хардуера софтуер оптимизации, гарантиращи, че файловата система е оптимизирана за конкретно устройство, случай на употреба и флаш памет. Имайки присъствие в автомобилостроенето, ние се фокусираме основно върху дългосрочната производителност и влошаване на качеството на флаш паметта. Това е по-скоро хардуерна и софтуерна оптимизация, за която Стив Джобс говори. Прилагането на машинно обучение за създаване на такива „драйвери“ е нещо, което смятаме, че може да бъде наистина вълнуващо за цялата индустрия за съхранение.
Въпрос: Нашето физическо флаш хранилище продължава да става все по-бързо, как виждате този факт, който се отразява както на изживяването на крайния потребител, така и на бъдещето на файловите системи?
О: Тъй като хардуерът става по-бърз, софтуерът трябва да гарантира, че може да се справи с тези усъвършенствани хардуерни архитектури, това е основното предизвикателство, което файловите системи трябва да решат в момента. Можете да имате невероятни характеристики на скоростта на четене и запис на устройството, но ако софтуерният стек внесе допълнително забавяне - потребителското изживяване няма да се почувства толкова бързо. Това е вълнуващо време за разработка на файлова система, тъй като има ясна нужда от по-бърза, по-бърза и същевременно по-надеждна технология за мобилни устройства.
Но тъй като светкавицата става по-бърза, основният въпрос става каква е скоростта, при която производителността става без значение? Мислете за това като за разделителната способност на Retina екрана, където по-високата плътност на пикселите всъщност не прави изображението по-отчетливо за човешкото око.
Въпрос: Благодаря ви за отделеното време.
A: Благодаря!