»ARMのx86は特許侵害?今は、macOS用ネイティブ版AGMPlayerの開発フェーズで、ファイラー機能については動作する様になっているので、再生系機能を動作させようとしている。ブログに書いて面白い内容は無い。今日は週末なので、時事ネタにする。Watchだとか、ITmediaだとか、2chだとかで探してみたのだが、コレといったモノは無かった。今日は、ネタにするのは少し面倒かなあ、という感じではあったのだが、Googleニュースにも載っていたので、ITmediaの以下の記事をネタにする事にした。上記の記事をブログネタにするのは面倒なのか、というと、作者的には、x86のエミュレーションが特許侵害になる訳がない、と、思っているからだ。これは何故なのかというと、Intelはx86命令を実行するCPUを開発するにあたって、そのデコーダーだとか実行ユニットだとか出力ユニットだとかキャッシュだとかの回路設計で独自性がある手法を色々と生み出して特許を取得しているかもしれないのだが、エミュレーション技術というのは、本来、そういうモノとは無関係な筈だからだ。ARMチップでのエミュレーションというのが、実際には、エミュレーションという名前とはほど遠く、少なくともデコーダーについては、IntelのCPUチップと同様のハードウェアで実現している、という事になると、特許侵害というのはあり得る話になる。x86命令というのは、所謂、CISC命令セットなので、その各命令をARMを含めた今時のCPUが扱うRISC命令にデコードする技術というのは、実装面積的にも処理性能的にも重要なので、Intel的には、この辺りで特許を取っている可能性は十分にあるので、ARMが似たような事をやっているのであれば、特許侵害をしている可能性もあり得る訳だ。x86命令をハードウェアデコーダーによってARM命令に置き換えている、という事になると、これはもう、エミュレーションの範疇は超えている筈だ。今時のIntelのCPUというのも、x86命令を内部のRISCコア用の命令に置き換えて実行している訳なので、上記の様な方式になっているのだとすると、そのARMというのは、x86互換CPUと言っても過言ではなくなるからだ。逆に、ARMのエミュレーション機能というのが、OS等の基本ソフトがx86命令をデータとして読み込み、それをARM命令に置き換えて実行させている、という様な代物だと、Intelの特許を侵害する訳がない訳だ。そんな方式だと、処理性能が出る訳もないので、実際のところとしては、ARMのエミュレーション機能の多くの部分は、ハードウェアで自動実行されるのかもしれない。なると、ARM的には、それをエミュレーションと呼んだとしても、客観的に見れば、それはハードウェアユニットになる訳なので、Intelの特許を侵害してしまう可能性も無きにしも非らずな訳だ。言う事で、そもそも、ARMのx86エミュレーション方式が判らない事には、ARMが特許侵害しているかどうかを鑑みる事は出来ず、今のところ、その辺の情報は公開されていないので、作者的にも、実際のところは皆目見当もつかない訳だ。ITmediaの記事の表題にある様に、今回のIntelの発言は、ARM版Windows10を牽制する為に行われた事だけは間違いないだろう。Intel的には、ARM版Windows10をリリースされるとビジネス的に困る立場にいて、ARM版Windows10のリリースを阻止するか、それが出来ないなら、ライセンス料を獲得しようとしている事だけは間違いないのかもしれない。ちなみに、JavaのAPIには著作権が認められている。本来なら、勝手に同じAPIを持つ他のシステムをリリースする事は出来ないのだが、Androidについては、フェアユースとして認められている。以下の様な記事もある。Adsense)サービスを利用しています。使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。パートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。