アカウント名:
パスワード:
winevdmの方が需要ありそうな気がする。Win16アプリが64bit Windowsで動かせるなんて
AMDが16-bitで仮想86モードのサポートを切らなければもっと早くx64の時代が来たし、今も16-bitアプリの互換性が高度に保たれていたのではないかと思うんですよね。たらればなのであれですが、なんでAMDが仮想86モードを1999年の段階で切る決断をしたのでしょうね。
仮想86モードを切るのはつまり、DOSアプリを切るってこと。さすがに1998年にもなれば、x64OSからDOSアプリの互換性を要求する意味はないとAMDが判断しても無理はない。vmwareでも使ってろ、みたいな。Win16はプロテクトモードなのでCPU的にはx64でも動く。Windows側でWin16互換性を持たせるのが大変で面倒だからMSがやらなかっただけ。32bit dllと64bit dllを同一プロセスで混ぜれないのと同じように、Windowsのアーキテクチャデザイン上の決心なわけで、AMDとx64は関係ないのよ。
Win16はOSの機能の一部をリアルモードのコード(BIOSコールとか)に依存していたので、仮想86モードのサポートは事実上必須。OS/2 1.xとかならx64でも動かせたのかもしれない。知らんけど。
AMD64は、当然MSと相談しながら考えたんでしょうしまぁいい加減切り捨てたかったんでしょうね
Win16アプリは同時にDOSアプリでもあるという側面があるのですよ。なのでアプリがDOSコール(INT 21H)をしていたりするので、DOSを無視しては互換性を含めての動作は成立しないのです。だからMSはNTでDOSベースではないカーネルを開発した後にNTVDMというDOS互換モードを別に作ったのです。これが仮想86モードを使うようにできていたので、x86-64の64-bitモードでは動作できなくなってしまったわけです。それによってx64時代の幕開けがだいぶ遅れたんじゃなかろうか、と。
NTVDMはMIPS版、PowerPC版、AlphaAXP版のWindowsNTにも(フルエミューレションで)搭載されてたので、MSがその気になれば、winevdmみたいなのを供給することも出来たはず。仮想86を搭載してDOSやWin16アプリが動いたからといって、じゃあたとえばWinXPやVistaが64bit Onlyで出てたか、といわれると、そんなわけないとしか。ディスクやメモリ使用量は増えるわけだし。x64 OSの普及はドライバ供給と需要(≒搭載メモリ量)によるものとおもうけどね。
jzkeyさんは当時からのWindows NTをご存じの方だったのですね。ご指摘その通りで、Insignia社のSoftPC由来のコードで実装されたWin16実行環境が載っていましたね。
じゃあたとえばWinXPやVistaが64bit Onlyで出てたか、といわれると、そんなわけないとしか。
市場が互換性を求める限り、Onlyだと厳しいのはその通りだと思います。Windows 10ですら途中まで32-bit版があったわけですし。ですが、64-bitの普及のしはじめのハードルを下げる効果はあったと考えています。結局個人の「たられば」の考えでしかないことは確かではありますが。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
UNIXはシンプルである。必要なのはそのシンプルさを理解する素質だけである -- Dennis Ritchie
ここのアレゲ的には (スコア:0)
winevdmの方が需要ありそうな気がする。Win16アプリが64bit Windowsで動かせるなんて
Re: (スコア:0)
AMDが16-bitで仮想86モードのサポートを切らなければもっと早くx64の時代が来たし、今も16-bitアプリの互換性が高度に保たれていたのではないかと思うんですよね。
たらればなのであれですが、なんでAMDが仮想86モードを1999年の段階で切る決断をしたのでしょうね。
Re:ここのアレゲ的には (スコア:2)
仮想86モードを切るのはつまり、DOSアプリを切るってこと。さすがに1998年にもなれば、x64OSからDOSアプリの互換性を要求する意味はないとAMDが判断しても無理はない。vmwareでも使ってろ、みたいな。
Win16はプロテクトモードなのでCPU的にはx64でも動く。Windows側でWin16互換性を持たせるのが大変で面倒だからMSがやらなかっただけ。32bit dllと64bit dllを同一プロセスで混ぜれないのと同じように、Windowsのアーキテクチャデザイン上の決心なわけで、AMDとx64は関係ないのよ。
Re: (スコア:0)
Win16はOSの機能の一部をリアルモードのコード(BIOSコールとか)に依存していたので、仮想86モードのサポートは事実上必須。OS/2 1.xとかならx64でも動かせたのかもしれない。知らんけど。
Re: (スコア:0)
AMD64は、当然MSと相談しながら考えたんでしょうしまぁいい加減切り捨てたかったんでしょうね
Re: (スコア:0)
Win16アプリは同時にDOSアプリでもあるという側面があるのですよ。
なのでアプリがDOSコール(INT 21H)をしていたりするので、DOSを無視しては互換性を含めての動作は成立しないのです。
だからMSはNTでDOSベースではないカーネルを開発した後にNTVDMというDOS互換モードを別に作ったのです。
これが仮想86モードを使うようにできていたので、x86-64の64-bitモードでは動作できなくなってしまったわけです。
それによってx64時代の幕開けがだいぶ遅れたんじゃなかろうか、と。
Re:ここのアレゲ的には (スコア:4, 興味深い)
NTVDMはMIPS版、PowerPC版、AlphaAXP版のWindowsNTにも(フルエミューレションで)搭載されてたので、MSがその気になれば、winevdmみたいなのを供給することも出来たはず。
仮想86を搭載してDOSやWin16アプリが動いたからといって、じゃあたとえばWinXPやVistaが64bit Onlyで出てたか、といわれると、そんなわけないとしか。ディスクやメモリ使用量は増えるわけだし。
x64 OSの普及はドライバ供給と需要(≒搭載メモリ量)によるものとおもうけどね。
Re: (スコア:0)
jzkeyさんは当時からのWindows NTをご存じの方だったのですね。
ご指摘その通りで、Insignia社のSoftPC由来のコードで実装されたWin16実行環境が載っていましたね。
市場が互換性を求める限り、Onlyだと厳しいのはその通りだと思います。Windows 10ですら途中まで32-bit版があったわけですし。
ですが、64-bitの普及のしはじめのハードルを下げる効果はあったと考えています。
結局個人の「たられば」の考えでしかないことは確かではありますが。