F2FS の歩みとファイル システムが重要な理由: Tuxera の Stan Dmitriev 氏へのインタビュー

XDA は、ファイル システムを専門とするフィンランドの企業 Tuxera の Stan Dmitriev にインタビューしました。 Stan がファイル システムと F2FS の将来について語ります。

ファイル システムについては、XDA や他のフォーラムではあまり議論されません。 このトピックには低レベルの開発が多く含まれるため、開発者はアプリケーション、ROM、またはカーネルに重点を置くことを好みます。 それにもかかわらず、ファイル システムはあらゆるストレージの重要な部分です。 これは、デバイスのストレージ内のデータがどのように保存および取得されるかを概説するテクノロジーです。 ファイル システムにはさまざまな種類があり、それぞれに長所と短所があり、どれを選択するかによって、安定性とパフォーマンスに大きな違いが生じる可能性があります。 では、OEM はどのようにしてその選択を行うのでしょうか? お話できて嬉しかったです スタン・ディミトリエフ、PR & コミュニケーション マネージャー タクセラは、多くの大手 OEM にファイル システム ソリューションを提供するフィンランドの企業です。

Q: 自己紹介と Tuxera を紹介していただけますか?

A: 私はスタン・ドミトリエフです。 初めて Android スマートフォン (HTC EVO 3D) を手に入れて以来、私は XDA コミュニティの積極的なファンになりました。 カスタム ROM をインストールし、初日に保証を無効にしたとしましょう (スタン。 ドミトリエフ XDA のフォーラム メンバーです)。 数年前、私は Corgi for Feedly というスタートアップ プロジェクトを共同設立しました。その時、XDA コミュニティはアプリケーションの定義と開発で大いに助けてくれました。

現在、私は Tuxera の PR およびコミュニケーション マネージャーを務めています。Tuxera は組み込みストレージ ソフトウェア (正確にはファイル システム) 市場の大手企業です。 当社のソフトウェアは 10 億を超えるデバイスに搭載されており、最新の主力電話、自動車、ルーター、ドローン、カメラに搭載されています。 当社の歴史は、当社の社長兼 CTO である Szabolcs "S坂" Szactics が Linux デバイスで動作するように NTFS を作成した NTFS-3G から始まりました。 現在、当社は外部ストレージと組み込みストレージの両方向けに独自のファイル システムと実装を開発し、多くのスマートフォン会社だけでなく、ほとんどの自動車会社と協力しています。

Tuxera では、特にブリックされたデバイスのトラブルシューティングを行う場合や、使用するカスタム ROM/カーネルを見つける場合に、XDA フォーラムを頻繁に訪問します。 私の同僚の多くは、Android や Linux エコシステムに関する最新のディープ テクノロジー ニュースを読むために XDA を頻繁に訪れます。

Q: ファイル システムはデバイスに不可欠な部分ですが、その役割、改善点、長所、短所について知っている人はほとんどいません。 その賜物は何でしょうか? また、なぜより多くの人がデータをまとめて保持するファイル システムに関心を持つ必要があるのでしょうか?

A: ファイル システムは、デバイスとそのストレージ間のすべてのやり取りを担当する Linux カーネルの重要な要素です。 写真を撮ったり、アプリを開いたり、ビデオを視聴したりするたびに、ファイル システムは OS がすべてのファイルにアクセスして保存するための中核的な役割を果たします。 ファイル システムはしばらくの間、それほど魅力的ではありませんでした。主な理由は、パフォーマンスのボトルネックがストレージにあったことです。

しかし、特に UFS の導入によりフラッシュ速度が非常に速くなっているため、フラッシュのパフォーマンスに追いつくためにソフトウェアを最新化する必要があります。 ファイル システムはストレージ速度に影響を与えるだけでなく、電話のパフォーマンスを長期的に維持する上でも重要な役割を果たします。 間違ったやり方をすると、ストレージが断片化してしまい、ストレージの非効率な使用によりデバイスのパフォーマンスが低下する現象が発生します。 このような可能性を最小限に抑えることは、ファイル システムの重要な特性です。

Q: F2FS (入門書) とは何ですか? なぜ Android に導入され始めたのですか? どの OEM が先頭に立っていましたか?

A: F2FS はオープン ソース ファイル システムであり、フラッシュ ストレージ アーキテクチャ向けに設計されていることが主な特徴です。 NAND ストレージ (フラッシュ) は、通常、eMMC または UFS ソリューションとして、現在のすべての Android スマートフォンで使用されています。 このプロジェクトは当初 Samsung によって開発され、一部のモバイル OEM から強い関心を集めました。 OEM がどのような移行を開始したかに関するデータはありません。 しかし、私が個人的に知っている限りでは、Motorola が最初であり、OnePlus や Huawei などの他の多くの OEM もすぐにこの変化に追随しました。

Q: それによって得られた利点は何ですか? OEM はストレージ操作の高速化と UI パフォーマンスを挙げていますが、他に利点はあるのでしょうか?

A: ピッチ F2FS はフラッシュ ベースのストレージに高いパフォーマンスをもたらします。 システムの起動が速くなり (読み取り速度が速くなり)、書き込み速度が速くなり、重量のある 4K、高フレーム レートのスローモーション、および 360 度ビデオを録画できるようになります。 さらに、システムとストレージ間のレイテンシーが非常に低くなり、アニメーションやアプリを開く動作がよりきびきびと感じられるようになります。

Q: 問題は、特にパフォーマンスの低下に集中しているようです。 それについてもっと詳しく説明してもらえますか? 原因は何ですか?

A: フラッシュ デバイスで可能な限り最速のパフォーマンスを実現するという F2FS のアイデアは確かに素晴らしかったです。 しかし、長期的なパフォーマンスに焦点を当てることも重要です。 ハードウェアはすぐに使用しても常に高速ですが、これらの速度を継続的に維持することは非常に困難な課題です。 Android の使用例では、ほとんどの場合、デバイスのストレージはほぼ満杯であり、場合によっては 1 秒間にでも数千回の読み取り書き込み操作が発生します。 人気のあるアプリの多くはバックグラウンドでサービスを実行しています。これは、アプリを開いていないときでも、アプリが何らかの読み取り/書き込み操作を行っていることを意味します。 書き込み操作を誤ると、ストレージの断片化が大幅に増加し、次の読み取り/書き込み操作がさらに遅くなる可能性があります。

Android デバイスのパフォーマンス低下の原因の 1 つはストレージの断片化であると考えられます。 ここで判断しなければならないのは、問題がハードウェアの互換性によって引き起こされているかどうか、およびファイル システムがどのように動作するかということです。 さまざまな OEM のストレージ、または F2FS アーキテクチャが初期速度に重点を置いているかどうか、これが長期的な影響を与えるかどうか パフォーマンス。 ファイル システムはまだ開発中であるため、問題はバグによって引き起こされる可能性もあります。

Q: あまり知られていないパフォーマンスや信頼性の問題は他にもありますか?

A: 私たちが発見した興味深い点の 1 つは、F2FS には予期せぬオーバーヘッドがあり、キャッシュとストレージのメンテナンスのためにストレージに少なくとも数百 MB がかかることです。 64 GB 以上のストレージがある場合、これは確かに理にかなっていますが、ROM サイズが 8 GB、16 GB の低価格携帯電話では、これが問題になる可能性があります。

主な発見は、F2FS の現在の実装は、より高速な速度を実現したい場合の読み取り専用環境に最適であるということです。 Android 環境ではこれが起こるため、F2FS は、小さなファイルと頻繁にやり取りする際の長期ストレージのパフォーマンスを向上させることに重点を置く必要があります。

これはある意味、理論の戦いです。 ハードウェアのパフォーマンスが非常に高速であるため、パフォーマンスの低下は問題にならないと考えることもできます。 あるいは、逆の見方をすると、ハードウェアが非常に高速であるため、長期的には維持できるパフォーマンスが少し遅くても達成されるべきであるということになります。 F2FS は最初のアプローチを選択しました。ここに間違った選択肢はありません。これは重要な実験であり、業界全体の学習曲線です。 そうは言っても、私たちが現在見ているのは、長期的なパフォーマンスが今の主な焦点であるべきであるということです。

Q: 一部の OEM は F2FS の使用を撤回しましたが、Huawei などの OEM は依然として最近のデバイスで F2FS をサポートしています。 どちらにしても傾向はあると思いますか? (導入が遅い、または完全に放棄される)

A: OEM が F2FS を使用し続ける理由は複数あります。

  • OEM は、既知の問題にいくつかの修正をもたらす独自の F2FS 実装を行うことができます。

  • OEM は、NAND の FTL 層にアクセスしてチューニングできるため、フラッシュ ストレージ メーカーと非常に良好な関係を築くことができます。 ファイル システムがハードウェアと適切に連携することにより、フラッシュの断片化などの大幅な改善がもたらされます。 ストレージ。

  • スマートフォンの平均ライフサイクルは約 2 年であり、携帯電話の動作が遅くなると、すでに新しいものを購入することになるため、OEM は携帯電話の初期パフォーマンスに重点を置くことを好む可能性があります。

  • OEM はデフラグ サービスを実行することもでき、これにより F2FS の問題を部分的に解決できます。

これらは考えられるシナリオの一部ですが、同時に、一部の OEM はすでに Ext4 の使用に戻ります。たとえば、OnePlus 3T は F2FS を使用していましたが、新しい OnePlus モデルはすべて F2FS を使用しています。 内線4。

Q: F2FS では現在、F2FS で発生している問題を解決できる、外出先での最適化ソリューションが必要です。

A: デフラグ ツールは以前から存在していました。主な利点は、メモリ ブロックを再割り当て/再書き込みしてストレージの断片化を軽減できることです。 しかし、このアプローチの問題は、フラッシュ メモリ セルを書き換えることになり、ストレージの寿命が短くなるということです。 最良のシナリオは、最初にデータをインテリジェントに書き込むことです。 ダメージコントロールを行うことは根本的な解決策ではありません。

部屋中にたくさんの物を放り込んで、引き出しに整理し始めるようなものだと考えてください。 なぜすぐにそうしないのでしょうか?

Q: OEM は、F2FS を妨げているいくつかの問題に対抗または対処することができましたか? たとえば、ファーウェイはパフォーマンスの低下を無視し、「AI」のおかげでもあり、時間の経過とともにより高速な UX を宣伝しています。

A: AI がストレージの動作を分析し、特定のフラッシュ デバイスで動作するようにファイル システムを書き換えることができれば、断片化の問題はおそらく解決できるでしょう。 AIは、その人がどのアプリや機能を主に使用しているかを分析し、それらを事前にロード/保存することもできます。 したがって、携帯電話の機能をよりきびきびと感じさせても、断片化の問題は解決されません。 けれど。 私の主な仮定は、最適化のほとんどはユーザー空間に関連するものであり、一部の高度な技術的なファイル システムの最適化ではないということです。

Q: 他に注目すべき興味深いファイル システム開発は何ですか? たとえそれが微妙なレベルまたは低レベルであっても、ユーザー エクスペリエンスにどのような影響を与えるのでしょうか?

A: F2FS と Ext4 は依然として非常に重要であり、オープン ソースの頼りになるファイル システムです。 Ext4 はより成熟していて信頼性がありますが、フラッシュのパフォーマンスが制限される可能性があります。 F2FS はよりきびきびしていますが、より実験的でもあります。 ソフトウェアがボトルネックになる状況全体が、ファイル システムを再び刺激的なものにします。 私たちは毎秒、毎ミリ秒をカウントする環境に移行しており、ファイル システムはこのパフォーマンス向上において重要な役割を果たすことになります。 ファイル システムの最もエキサイティングな開発は、フラッシュのパフォーマンスを維持できる、真にフラッシュに最適化されたソリューションを作成することです。

Tuxera では、ハードウェア固有のソフトウェアなどを行う Tuxera Flash File System を開発しています。 最適化: ファイル システムが特定のデバイス、ユースケース、フラッシュに合わせて最適化されるようにする メモリ。 自動車分野での存在感を誇る当社は、主にフラッシュ メモリの長期的なパフォーマンスと劣化に重点を置いています。 これは、スティーブ・ジョブズがよく話していた、ハードウェア x ソフトウェアのタイプの最適化に近いものです。 機械学習を適用してそのような「ドライバー」を作成することは、ストレージ業界全体にとって非常にエキサイティングなものになる可能性があると私たちは考えています。

Q: 物理フラッシュ ストレージも高速化を続けていますが、この事実がエンド ユーザー エクスペリエンスとファイル システムの将来の両方に影響を与えるとどう思いますか?

A: ハードウェアが高速化するにつれて、ソフトウェアはこれらの高度なハードウェア アーキテクチャに確実に対応できるようにする必要があります。これがファイル システムが現在解決すべき主な課題です。 デバイスの読み取りおよび書き込み速度特性は驚異的ですが、ソフトウェア スタックによって遅延が増加すると、ユーザー エクスペリエンスはそれほど快適ではなくなります。 モバイル向けには、より高速で、より機動的で、さらに信頼性の高いテクノロジが明らかに必要とされているため、ファイル システム開発にとって今がエキサイティングな時期です。

しかし、フラッシュが高速化するにつれて、最大の疑問は、パフォーマンスが無関係になる速度はどれくらいかということになります。 これは Retina 画面の解像度のようなものだと考えてください。ピクセル密度が高くても人間の目には画像がより鮮明になるわけではありません。

Q:お時間をいただきありがとうございます。

A: ありがとう!