epgrecのコメント: Re:思いついたこと (スコア 5, 参考になる) 85
>今のマルチコアCPUでも同じことで、現実の脅威にはなってなさそう
それは当然ですね。
CPUのコード実行はOSの管理下で、CPUコアがいくつあろうとも
OSにプロテクトされた領域をユーザーモードからあれこれしたりは
できないようになってます。CPUには特権モードがあるからで、そのおかげで
ユーザーランドからカーネルランドにちょっかいは出せませんし、
他のプロセスを妨害することもできません。
しかし、既存のOSにはGPUのコード実行を管理する仕組みはないので、
つまりGPUのはOSの管理外にあるCPUコアのようなもの、になります。
従来はGPUはローカルメモリにしかアクセスできない、いわば檻の中の
虎のようなものだったのでGPUがシステムのセキュリティを脅かすことは
なかったわけです。
しかしhUMAによって仮想アドレス空間全域にアクセス可能に
なるわけですから、OSから管理されない虎が野に放たれる形になります。
なので、ユーザーモードから実行されたGPUコードが悪さをしようとした時、
たとえば仮想アドレス空間中のカーネル領域にちょっかいを出そうとした時には
例外を投げてコードの実行が中断される、というような仕組みが
必要でしょう。そのためにはGPUが特権モードを持っている(GPUもCPUの特権モードに
したがって動いている)必要があろうかと思うのです。
ただ、CPUの例外は例外処理に、つまりOSのカーネルに実行が飛ぶわけですけど
GPUが例外はどうなんだ? みたいなことを考えると、hUMAのような仕組みを持つGPUは
OSレベルでのサポートが必要な気がします。
けど、AMDはとりあえず既存のOSでも問題ないといってるので、どうなってるかは
気になるところです。