オープンプロセッサとフリープロセッサの時間ですか?

脆弱性の開示MeltdownとSpectreは、ハードウェアレベルでのバグに再び注意を喚起しました。 ソフトウェアのセキュリティを改善する(まだ弱い)ために多くのことが行われましたが、機器がクラッシュした場合はすべて無駄になります。 私たちのシステムのプロセッサは、まだほとんどがプロプライエタリであり、すでに多くの不快な驚きを提示しています(たとえば、Intel Management Engineで)。 したがって、ソフトウェアで行ったように、オープンソースのハードウェアに切り替えるという自然な疑問が生じます。 そのような移行は非常に可能であり、いくつかの利点を提供しますが、万能薬ではありません。



最新のプロセッサの複雑さとそれらが販売されているfi烈な市場を考えると、オープンソースの原則を使用してそれらを開発することは珍しい考えのように思えるかもしれません。 しかし、この分野ではすでに深刻な取り組みがあります。 したがって、無料のCPU設計のアイデアは単なる空想ではありません。 このトピックに関する少しの調査により、いくつかのプロジェクトが明らかになりました。 ただし、次のリストは明らかに完全ではありません。



何を選ぶか



たとえば、POWERアーキテクチャに基づいたOpenPOWERプロジェクトを考えてみてください。 他の一部とは異なり、これは完全に無料のプロジェクトではありませんが、プロセッサアーキテクチャの共同開発の良い例です。 (比較的)オープンアーキテクチャのプロセッサはすでに販売されています。 OpenPOWERはサーバーCPUに焦点を当てています。 近い将来、コンピューターやスマートフォンに表示されることはほとんどありません。



次に、 OpenSPARCがあります。SunMicrosystemsは、SPARC T1およびT2プロセッサアーキテクチャを完全にオープンしました。 いくつかのプロジェクトがこれらのアーキテクチャを使用しようとしましたが、誰かが成功したかどうかはまだ明確ではありません。 オープンなSPARCアーキテクチャは現在10年目であり、SPARC全体の将来は疑わしい。 Oracleが最新のプロセッサーのアーキテクチャーをオープンすることを決定した場合、興味深いことが起こりますが、息を切らしてこのイベントを待つことも良い考えではありません。



OpenRISC-組み込みアプリケーション向けの完全にオープンなプロセッサアーキテクチャ。 1つのプロセッサが完全に準備されています(OpenRISC 1000)。 OpenRISC 1000のいくつかの商用バージョンが作成されており、参照実装( mor1kxなど)が存在します。 Linuxカーネルは、2011年にリリースされたバージョン3.1以降のOpenRISCをサポートしており、Debianへの移植は2014年から存在しています。 確かに、Debianディストリビューションのフレームワークでの作業は2016年に終了しましたSMPサポートは2017年に登場しましたが、カーネルのOpenRISCコードの作業も遅くなりました。 一般に、OpenRISCは、かつてあったほとんどの開発のダイナミクスを失っているように見えました。



現在、最大のアクティビティはRISC-Vアーキテクチャに関連しているようです。 このプロジェクトは、特定の実装ではなく、主に命令セットアーキテクチャ(ISA)に焦点を当てていますが、無料の機器設計の例もあります。 Western Digitalは最近、ストレージ機器にRISC-Vプロセッサを使用すると発表しました。これにより、10億規模のRISC-V出荷につながる可能性があります。 このプロセッサで遊んでみたい人のための開発ツールのセットがあり、 多くのコアアーキテクチャが利用可能です。



OpenRISCとは異なり、RISC-Vはさまざまなユースケースを対象としています。 単純なRISCアーキテクチャにより、高速プロセッサを比較的簡単に作成できることが望まれます。 同時に、低パフォーマンスのデバイスの場合、コマンドストリーム形式が削減され、メモリ要件と消費電力が削減されます。 ISAは特定の実装に拡張機能を提供し、ハードウェアアクセラレーションテクニックの実験と追加を容易にします。



LinuxでのRISC-Vのサポートが最近登場しました。 バージョン4.15のみ(リリースは2018年1月28日に行われました)。 開発者の活動は非常に荒れているようで、対応するプロジェクトでは必要なツールとライブラリもサポートされています。 どうやら、RISC-Vは商業業界である程度のサポートを受けています-少なくとも、 多くの企業が RISC-V Foundationに参加しています。 近い将来、このアーキテクチャは引き続き開発されるはずです。



ハードウェアの問題を解決しますか?



メルトダウンとスペクターに関する情報のリリースに続いて、RISC-V Foundationは、より安全な代替手段としてプロセッサアーキテクチャを宣伝するプレスリリースを発行しました。 RISC-Vプロセッサは、これらの脆弱性の影響を本当に受けません。これらのプロセッサは、メモリへの投機的アクセスを許可しないためです。 しかし、プレスリリースでは、RISC-Vの利点はこれらの特定の脆弱性を超えていると述べています。 開発モデルが非常にオープンであるため、さまざまな開発者から最高のセキュリティアイデアをすばやく実装できます。



Linuxはカーネルレベルでの戦いに勝ったかもしれませんが、このレベル以下で実行されているプロプライエタリなハードウェアとソフトウェアのレイヤー全体があり、私たちはそれを制御していません。 したがって、RISC-Vのオープンアーキテクチャは非常に魅力的に見えます。 おそらく、やがてこの制御を部分的に取り戻すことができるでしょう。 これは歓迎すべき夢のように思えますが、それを実現するには、まずいくつかの問題を解決する必要があります。



当然、最初のものは、コンパイラは無料で入手できますが、生産能力、特に高性能の最新プロセッサを生産する高価な工場に関しては不可能です。 超小型回路の生産レベルで進歩が遅くなり(すでにこれが起こっていると言う人もいます)、生産サービスが小規模のお客様によりアクセスしやすくなる場合、プロセッサーアーキテクチャの実験は実際にはより多くのお客様によりアクセスしやすくなります ただし、コンソールでmake



と入力make



ほど単純で安価になることはありません。



それまでは、他の人に依存してプロセッサを作成していきます。 これは必ずしも悪いことではありません。 私たちのほとんど全員が、同様に他の人に依存してソフトウェアを作成しています。 しかし、鉄では、より高いレベルの信頼を達成する必要があります。 ソフトウェアレベルで再現可能なアセンブリを取得することは、重大かつ緊急の作業です。 ハードウェアレベルでは、さらに複雑になります。 しかし、実際の鉄のサンプルで元のアーキテクチャを検証する方法を達成しなかった場合、確信が持てません。特定の超小型回路は、私たちが言われたのと同じ設計になります。



RISC-V仕様は、アーキテクチャを公開するために特定の実装が必要であるとは述べていません。 RISC-Vが市場で成功したとしても、実際のプロセッサに自由にライセンスされた設計が付属しない可能性が高くなります。 大規模な顧客(独自のプロジェクトでデータセンターを構築する)は、超小型回路の設計を得ることを主張するか、または単純に独自の回路を作成しますが、残りはかなり弱い交渉の立場にあります。



最後に、たとえ完全にオープンで無料のプロセッサーを入手したとしても、このレベルの脆弱性は完全には終わりません。 無料のカーネルがありますが、カーネルの脆弱性も常に発見されています。 オープンハードウェアは、長期的にはシステムの制御を維持するという自信を与えますが、これはすべての問題を解決する魔法の杖ではありません。



ただし、これによってハードウェアの面でよりオープンで自由なものが求められることはありません。 むかしむかし、無料のオペレーティングシステムを作成することは乗り越えられないほど困難に思えましたが、さらに何度か行いました。 独自のハードウェア設計から移行することは、私たちの自由を守るための最良のチャンスの1つかもしれません。 それをしようとしないのは愚かなことです。



All Articles