アカウント名:
パスワード:
これはIntel側としては、データシートに記載した仕様通りの動作です。仕様を確認せずにAMDと完全互換のつもりでコードを書いた準仮想マシン側の不手際だし、ましてやCPUの脆弱性などというものではありません。
仕様がAMDと完全互換ではないという点について不備であるかどうかの意見は別にありますが、AMDとIntelで完全互換だなんてことはありえないわけで、仮想マシンを作る世界のレベルでそこを気にしないというのは、言い訳のしようがないでしょう。
逆にAMDがSSEとかの命令の一部を微妙にバラバラに非互換にしたらCPUモデルの検出が必要になって普及を進ませなくするという戦術も可能なわけですかね?「ごめんちゃい、間違っちゃいました」と言ってしまったほうが賢いような…
そういえば昔MMXの頃、AMDのMMXを認識できないソフトってあったよね。確か、セガのPC版のバーチャロンがそうだったはず。
IntelのMMX使い方マニュアルにおいて、MMXが使用可能であるかを確かめる手順のまず初めが「GPUIDでVenderIDが"GenuineIntel"であるか確かめる」になっていて愚直にそのまま実装してしまうと、Intel以外のCPUではMMXが使えなくなりあとからパッチをリリースしなくてはいけなくなるっていう罠じゃなかったかな?
なので、"GenuineIntel"の文字列(というか数値群)を"AuthenticAMD"とか"CyrixInstead"とか"CentaurHauls"とか"RiseRiseRise"とかに書き換えたり、文字列の一致チェック後の条件分岐命令(RETNZだったかな?)をNOP(かそのCPUでしか使わないなら逆条件の分岐命令)に書き換えれば簡単に動くようになったはず
これを非互換といってしまうと、Intel製ではないのに"GenuineIntel"を名乗るしかないわけでそれはどうなんでしょうね
さらに古いの「NECO」「NECITSU」を思い出してしまうおっさんAC
VenderIDでMMX等の拡張命令の有無がわかる訳でも無いのにそれを確認させるなんてねぇ。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ソースを見ろ -- ある4桁UID
仕様です (スコア:1)
これはIntel側としては、データシートに記載した仕様通りの動作です。
仕様を確認せずにAMDと完全互換のつもりでコードを書いた準仮想マシン側の不手際だし、
ましてやCPUの脆弱性などというものではありません。
仕様がAMDと完全互換ではないという点について
不備であるかどうかの意見は別にありますが、
AMDとIntelで完全互換だなんてことはありえないわけで、
仮想マシンを作る世界のレベルでそこを気にしないというのは、
言い訳のしようがないでしょう。
Re: (スコア:0)
逆にAMDがSSEとかの命令の一部を微妙にバラバラに非互換にしたらCPUモデルの検出が必要になって
普及を進ませなくするという戦術も可能なわけですかね?
「ごめんちゃい、間違っちゃいました」と言ってしまったほうが賢いような…
Re: (スコア:0)
そういえば昔MMXの頃、AMDのMMXを認識できないソフトってあったよね。
確か、セガのPC版のバーチャロンがそうだったはず。
あれは… (スコア:0)
IntelのMMX使い方マニュアルにおいて、MMXが使用可能であるかを確かめる手順の
まず初めが「GPUIDでVenderIDが"GenuineIntel"であるか確かめる」になっていて
愚直にそのまま実装してしまうと、Intel以外のCPUではMMXが使えなくなり
あとからパッチをリリースしなくてはいけなくなるっていう罠じゃなかったかな?
なので、"GenuineIntel"の文字列(というか数値群)を"AuthenticAMD"とか
"CyrixInstead"とか"CentaurHauls"とか"RiseRiseRise"とかに書き換えたり、
文字列の一致チェック後の条件分岐命令(RETNZだったかな?)を
NOP(かそのCPUでしか使わないなら逆条件の分岐命令)に書き換えれば簡単に動くようになったはず
これを非互換といってしまうと、Intel製ではないのに"GenuineIntel"を名乗るしかないわけで
それはどうなんでしょうね
さらに古いの「NECO」「NECITSU」を思い出してしまうおっさんAC
Re:あれは… (スコア:0)
VenderIDでMMX等の拡張命令の有無がわかる訳でも無いのにそれを確認させるなんてねぇ。