Linux5.8がリリースされました-最も優れたものの1つです。より詳細な概要



8月初旬、LinusTorvalds新しいバージョンのLinuxカーネルを発表しました長い伝統によれば、最大のオープンソースプロジェクト自体のリリースは非常に日常的に行われ、作成者ワークショップで同僚に、カーネルの新しい安定バージョンの簡単な要約を記載した電子メール書き込みます。



5.8カーネルの特徴は、プロジェクトの存在全体にわたる変更の記録的な数でした。Linux 4.9カーネルのメジャーリリースは1つしかありませんでしたが、新しいgreybusサブシステムのために人為的に肥大化したのに対し、5.8ではさまざまな方向でより多くの変更が組み込まれていました。Linux 5.8で、同時に5.8.1で、主に一般ユーザーとワークステーションにとって、何が非常に便利で興味深いかを見てみましょう。



64 MiBパッチには、304人の新しい開発者を含む1991年の開発者の作業が含まれています。コミュニティの取り組みにより、904Kが追加され、553K行のコードが削除されました。会社を見ると、最も活発な名前の中にはおなじみの名前があります。



  • インテル;
  • Huawei Technologies;
  • ハバナラボ;
  • レッドハット;
  • Google;
  • リナロ;
  • IBM;
  • AMD;
  • メラノックス;
  • SUSE;


グラフィック



Linuxカーネルコードベースの大部分がドライバーによって占められているため、変更とリリースアップデートの大部分がドライバーに捧げられていることはまったく驚くべきことではありません。



Adreno 405/640 / 650GPUドライバーのサポート



MSM(Freedreno)オープンドライバーアップデートのおかげで、Qualcomm Adreno 405、640、および650 GPUのサポートが追加されました。これらのモバイルGPUは、Snapdragon855 +やSnapdragon865などの最新のSoC(システムオンチップ)の一部で確認できます。これらのチップスマートフォンSamsungGalaxy S10 / S20、OnePlusおよび他の多くのガジェットで見つけることができます。



同時に、オープンAPI OpenGLとVulkanのフレームワーク内で、AdrenoドライバーはそれぞれFreedrenoGallium3DとTURNIPで開発を続けています。新しい変更はMesa20.2-develに含まれます。



amdgpuドライバーの多数の改善



AMDは、Linux5.8のグラフィックスドライバーの品質を改善するために道を踏み外しました。パフォーマンスの向上に加えて、暗号化されたビデオメモリバッファ(信頼されたメモリゾーン)を使用する機能が実装されました。



AMD Radeon Trusted Memory Zoneは、選択したページがCPUやその他の非GPUクライアントによって読み取られるのを防ぎ、TMZで保護されたページへの書き込みを防ぐように設計されています。



さらに、FP16ピクセル形式のサポートがドライバーに追加され、システムメモリページをサポートせずにデバイス間でピアツーピアDMAバッファー共有(p2p DMA-BUF)を提供するための広範な作業が完了しました。



ファイルシステム



物議を醸しているBtrfs、FAT、exFATなどの今後のアップデート。



その他のBtrfsの機能強化



OpenSUSEとSUSELinuxは、プライマリファイルシステムとしてBtrfs使用する数少ないものの1つです。当然のことながら、SUSEはこのファイルシステム用のパッチを多数リリースしています。その結果、BtrfsはI / O読み取り処理を改善しました。



  • 直接I / Oコードがiomapインターフェースに移植されました。
  • スペース不足のためにネストされたボリュームの削除が失敗した場合、ファイルシステムは読み取り専用モードになりません。
  • さまざまな欠陥の排除とコードのクリーニング。


F2FSでLZO-RLEアルゴリズムを使用した圧縮



新しいLinuxカーネルのFlashFriendly File Systemに新しく追加された注目すべき点は、LZO-RLE圧縮形式です。LZO Run-Length Encodingは、標準のLZOアルゴリズムと同じ圧縮率を対象としていますが、パフォーマンスが高くなっています。これは、昨年ARMによってLZO-RLEの実装がカーネルにプッシュされた後に可能になりました。



exFATブートエリアの検証のサポート



SamsungはLinux5.8カーネルにexFATの改善を導入し、新しいドライバーバージョンには多くの修正と最適化が含まれています。特に、コードがクリーンアップされ、ロギングが改善され、レコードキャッシュ機能が最適化されました。また、同社のエンジニアは新しい機能を追加しました-exFATのブート領域をチェックします。



I / Oパフォーマンスの向上SMBv3 / CIFS



クライアントがサーバー上で定期的なチェックを実行できる新しいパラメーターnodeleteが定義されましたが、ファイルとフォルダーを削除することは禁止されています。SMB v3パッチには、マルチチャネルを使用する場合の大規模なI / Oのパフォーマンスが大幅に向上し、DFSが修正されています。



アイテムのFATEager読み込みの改善



以前のバージョンのFATレコードの先読みは非常に単純でしたが、一部の環境では非効率になるいくつかの欠点がありました。

先読みウィンドウを完全に使い果たすように更新するメカニズムと、カスタマイズ可能なbdi-> ra_pagesのおかげで、パフォーマンスが大幅に向上しました。テストは低速の2TBUSBドライブで実行され、その結果、テスト時間が383秒から51秒に短縮されました。



Ext4およびXFSのDAXサポート



DAX(Direct Access)は、ページキャッシュをバイパスしてファイルシステムに直接アクセスするように設計されています。DAXモードでページキャッシングをバイパスすることは、ストレージデバイスへの余分な読み取り/書き込みコピーを排除することを意味します。これにより、ストレージデバイスをユーザースペースに直接かつ効率的にマッピングできます。



IntelによるこれらのDAXコードの機能強化により、ファイルシステム全体で単にオンまたはオフにするのではなく、ノードごとに直接アクセスモードを有効にすることができます。また、statx()システム呼び出しを使用して、ユーザースペースから特定のファイルへの直接アクセスの状態を照会できます。



ネットワークサブシステム



LinuxカーネルのTCP / IPスタックは、アーキテクチャが非常に複雑であり、さまざまなデバイスで使用できる可能性が非常に高いため、全体像の中で特別な位置を占めています。ネットワークインフラストラクチャは、他のインフラストラクチャよりもサーバー上のLinux OSの優位性を保証し、飛躍的に進化し続けています。



  • nftablesモジュールであるNetfilterは、ストリームテーブルの動的なデバイス更新を提供します。
  • * MRP、メディア冗長プロトコルのサポートが追加されました-IEC62439-2ネットワーキング標準。このプロトコルでは、STPよりも高速でありながら、複数のイーサネットスイッチをリングに結合することにより、ネットワーク障害に対する回復力を提供できます。
  • bluetooth、Realtek RTL8761B、Intel Typhoon Peak、QualcommQCA6390用の新しいドライバー。
  • lx5/mlx5e, Mellanox , 10, 40 100 . mlx5 mlx5e TLS, IPsec, MPLS ;
  • rnbd, RNBD RDMA RTRS. , - .


Wi-Fi



  • ath10k - VHT160 VHT80+80. Qualcomm Atheros IEEE 802.11ac Wifi 5(802.11ac).
  • iwlwifiドライバー、新しいIntelチップ用のACPI DSM(デバイス固有の方法)をサポートするようになりました。


Ipv6アップデート



  • Ipv6スタックでMPLSがサポートされるようになりました。
  • ESP overUDPおよびTCPトランスポートにIPv6カプセル化を追加しました。
  • RFC 6069のサポートが実装れました。この標準では、TCPトランスポートを長期的な通信障害に対してより耐性のあるものにする機能を提供するTCP Long ConnectivityDisruptionsアルゴリズムについて説明しています。


安全性



これには、Spectre、SELinux、実行ビットと書き込みビットによるカーネルモジュールのブロック、ランダム番号ジェネレーターなどのIntelセキュリティホールに関連する修正が含まれます。



スペクターの修正



Intelが、チップセットのSpectreクラスの脆弱性のすべての結果にすぐに対処するという計画を過剰に実行しないことは明らかです。



x86 / x86_64命令の投機的実行を処理するためのLinuxカーネルのいくつかの緊急の修正について話し合っています。これは、Googleのセキュリティエンジニアが脆弱性を発見した後に発生し、以前の修正の1つが副作用としてAMDプロセッサに影響を与えたという事実がありました。



間接分岐予測バリア(IBPB)-Spectreの2番目のバリアントのターゲット分岐バッファの攻撃に対する保護は、Linuxでは強制的に無効になります。条件は、STIBPが使用できない、または間接制限分岐推測(IBRS)が使用できるシナリオです。



チップとチップセット



Linux5.8ではARMアーキテクチャに多くの変更が加えられました。



Power10プロセッサの初期ブートサポート



Power 10は、IBMおよびOpenPOWER Foundationからの今後のプロセッサであり、2021年に発売される予定であり、7nmプロセスを使用して製造されます。予備報告によると、新しいチップは既存のPower 9マイクロアーキテクチャに比べて大幅な改善を提供します。Power10アーキテクチャの



基本的なブートサポートに加えて、Linux5.8カーネルはPower10プレフィックス付き命令セットもサポートします。



新しいARMSoCのサポート



Android用のLinuxカーネルサブシステムの進歩に合わせて、サポートされるデバイスのリストに以下が追加されました。



  • Arm CortexA7ソリューションとしてのRealtekRTD1195;
  • Realtek RTD1395;
  • Realtek RTD1619;
  • Renesas RZ / G1Hプラットフォーム;
  • バジェット64ビットRockchipsRK 3326SoCとOdroid-GOAdvanceゲームコンソール。
  • AMLogicS905Dに基づくSmartlabsSML-5442TWTVボックス。
  • AMLogicS905X3に基づくODROID-C4。
  • AMLogicS922XHに基づくTVボックスBeelinkGT-King Pro;
  • Facebookのx86で2500 AST ASPEEDに基づいてベースボード管理ContriollerヨセミテV2とYADRO OpenPower P9ニコール
  • Olimex A20-OLinuXino-LIME-eMMC SBC;
  • チェックポイントL-50ルーター;
  • MediatekMT8173に基づくElm / Hana Chromebooks;
  • Samsung Exynos4210をベースにしたSamsungGalaxyS2スマートフォン。
  • Qualcomm SDM660 / SDM630プラットフォームおよびXiaomiRedmi Note7スマートフォン。
  • RealtekRTD1295に基づくXnanoX5TVボックス。


新しいAMDエナジードライバー



Zen / Zen2プロセッサのエネルギーセンサーを監視するための新しく待望のAMDEnergyドライバー。これにより、AMD Zen / Zen2プロセッサの各ソケット/コアのエネルギーレポートを取得できます。



Intel TigerLakeプロセッサのThunderbolt / USB4インターフェイス



このパッチに はわずか28行のコードが含まれているため、Thunderbolt / USB4でのTigerLakeチップのサポートは、主にIceLakeの再利用によるものです。



Thunderboltインターフェイスは、ThunderboltPCIe拡張カードを使用してARMアーキテクチャで実行することもできます。現在、利用可能なARMSoCデバイスはありません。



安定したLinux5.8.1リリース



Linux 5.8.1マイナーリリースは、 548の挿入と186の削除で合計40のファイルを変更するマイナーアップデートです。これには主に、さまざまなドライバーのバグ修正が含まれています。



  • GPIO、max77620;
  • LED;
  • SCSI;
  • MTD;
  • PCI、テグラ;
  • USB;
  • 音;
  • ビデオ;
  • ARM64アーキテクチャの更新。
  • PowerPCアーキテクチャの更新。


どのカーネルが最も有用ですか?



多くの有用な更新を含む新しい安定したLinuxカーネルバージョンのリリース時に常に、kernel.orgからアーカイブをすぐにダウンロードし、menuconfigまたはxconfigから設定を微調整し、新しく作成されたイメージからコンパイルして起動するのは面倒かもしれませんそれでも、急いではいけません。その理由は次のとおりです。



安定したブランチのメンテナであるGregKroah-Hartmanは、安定したブランチの小さな評価をまとめました。これはそれがどのように見えるかです。



  1. Linuxディストリビューション用の安定した最新のカーネル。
  2. 最新の安定版リリース。
  3. 最新のLTS(長期サポート)リリース。
  4. まだサポートされている以前のLTSリリース。


便宜性の基準の最初の場所は、ディストリビューション用に特別にコンパイルされたLinuxカーネルです。必要なパッチと特別な設定がすべて含まれています。さらに、ディストリビューションの開発者は、バグ修正のバックポート、場合によってはカーネルコードへの新しい機能に多くの作業を行います。これらはすべて、何千もの変更が存在するにもかかわらず、メジャーバージョン番号を変更しないという奇妙な取り組みです。



これらの考慮事項を念頭に置いて、新しいカーネルがディストリビューションで使用可能になるまで待つことは理にかなっています。 Debian LinuxとRHEL、およびAndroidデバイスの場合、新しいカーネルが本番環境に移行するまでに数年かかる場合があります。ただし、ワークステーションや一般ユーザー向けのディストリビューションは多数あり、数週間以内に新しいカーネルが利用可能になります。



新しいディストリビューションUbuntuLinux 20.10(Groovy Gorilla)は、2020年10月にLinux5.8カーネルとともに出荷されます。



使用材料








All Articles