- ベストアンサー
win95と98と16/32bitアプリケーションの関係
16bitアプリと32bitアプリの境界は Win95と98なんでしょうか? 95までは3.1で動く16bitのものがあり、 98以降はNTでも動く32bitアプリに変わったということですか? Win98以降ではサポートしていても95では使えないソフトはありますがこれはなぜなのでしょうか? また、98では使えなくて98SEでは使えるものもあります。 この辺の互換性の問題はどこから生じるものなのでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
こんにちわ これって不思議で寝苦しい夜には眠れなくなる問題ですよね^^;?? >16bitアプリと32bitアプリの境界は >Win95と98なんでしょうか? 16bitアプリは、3.1までです。 しかしながら、3.1の後期になると、95の下準備として32bitアプリが登場しはじめました。 (親がめ16bitの上に32bit仮想マシンの子亀が載る、いわゆるWindows9x系の基礎準備) この下準備環境のことを、[win32s](32ビットのサブセット)といいました。 今でもフリーソフトとして入手可能です。 このWin32sサブセット環境ならば、初期のWindows95用アプリが3.1でも動くものがある、 ということで大変重宝がられました。 >95までは3.1で動く16bitのものがあり、 >98以降はNTでも動く32bitアプリに変わったということですか? 16bitアプリは、#1のかたが教えて下さっている通りに、「基本的にずっと動く」方針です。 しかしながら、NT4以降は、「動く方針だけど絶対保証ではありません」となりました。 これが「切り捨て」の実態です。 (ですので、実際はそれほど悲観的でなく満足に動いてくれる物の方が多い感じです) >Win98以降ではサポートしていても95では使えないソフトはありますがこれはなぜなのでしょうか? >また、98では使えなくて98SEでは使えるものもあります。 >この辺の互換性の問題はどこから生じるものなのでしょうか? これがいわゆる「API」という「命令セット」の「新型」が出てしまうと、「新型API」を使用するソフトだと旧型APIしか持たないシステムでは動かない、ということになります。 98はSEのときに、APIが新規追加されたので、そのために「Windows98はSEでないと動かない」というソフトが沢山できてしまった訳です。
その他の回答 (4)
- altosax
- ベストアンサー率56% (473/830)
>OS2ってNT系の起源みたいなOSですよね。 >32bitじゃなかったですか? はいそうです。WindowsNTのバージョン3は、OS/2のWarpV3と同じカーネルだったのですよ。 NT3ではバージョン表示を出すと、修正がされないままOS/2と表示されていたのは今でも笑い話に登場する事実でした…。 この32bitOS/2の子亀として16bitの仮想DOSマシン(さらにその上でWindows3.1が動作しました)やJAVA仮想マシンが装備されて色々動く(テレビCMをしていた当時は「何でも動く」というキャッチフレーズで放映されていたのが時代を感じる所です…)ようになっています。 IBMとマイクロソフトの共同で推進していたOS/2計画から、16bitDOSのWindows3のほうが当時のハードウエアから考えるとはるかに実用的で儲かることに気付いたマイクロソフトがOS/2を放棄して、現実の儲けは16bitDOS上の仮想Windows32bitマシンで推進することを決意選択して、ハードウエア的に(当時としては)膨大な負担が必要だった32bitOS/2計画はIBMがひとりで開発するようになり、NT計画は万人向けのxpになるまで「専門家向け」の特殊な開発中OS、という位置付けでした。 >GUIで使いやすいんですか? インストール完了直後のそのままでは、お世辞にも使いやすい、とは言えないのですが、「ワークプレイス・シェル」というOS/2だけの独自GUI環境が非常に素晴らしい基本設計で、これに数種類のアドオンソフトを加えることで「根強いOS/2ファン」がいまだに衰えない最強GUI使用環境が出来上ります。 マッキントッシュのファンからは当初から非難を受けていたのですが、私は後からマックも使うようになり非難の検証を進めるにつれて、ウソ八百の感情論で「マッカー論理」が成立していることを日々再確認と確証を深める以外に理解の方法がないことを確認せざるをえない状況が正直な感想です。 上記の通り、IBMとマイクロソフトが袂を分かって以来、Windows3.1APIまではライセンスがあるけれどWin95以降のAPIが直接実行できる関係ではなくなってしまいました。 しかし、ボランティア(Odinプロジェクト)の手によってOS/2でWin32APIが動く努力がかなり実ってきていますので、日本語ソフトの大規模な物は中々無理ですが、大抵の英語版Win32ソフトと小規模な日本語Win32ソフトは、OS/2の画面上に「シームレス」に登場できる、という不思議な体験ができます。 (VirtualPCのように分断された「水槽の中の環境」ではなく、LinuxのWineのように本当に対等に動くのです。) 残念なことに今年中にIBMはOS/2を店じまいすることになっています。 しかし、11年前の1995年に出たバージョンから基本的に全然変っていないOS/2が、全然古さを感じない洗練された環境であることをご確認いただくために今から挑戦していただくのはパソコンOSへの理解を深める上で決して無駄な体験ではなく、感動的なよい体験になることは保証しますよ^^ (但し今から新規に始めますと膨大な手作業のパッチ当てが必要なのですが、これもまた「OS理解のため」を考えると、私は自分の体験が非常に実りあるものだったと振り返っています) もし御関心がありましたら、 http://www.os2.jp/ こちらが日本の総本山になっていますので参照しながらヤフオクなどで安く出品されるWarp4以上のフルセットをお求めになると楽しい体験になると思います。 (10年以上前のシステムですので(4GB、8GBの壁が当たり前だった)当時のHW環境でインストーラーが出来ていますから、今の大容量HDにインストールするには色々小細工が必要になりますが、非力な中古パソコンを快適に蘇らせるには非常に楽しいOSの選択肢のひとつになります) また、VirtualPC上で小さいボリュームを用意すれば簡単に体験できるかもしれません。
- 参考URL:
- http://www.os2.jp/
- altosax
- ベストアンサー率56% (473/830)
>手放せない16bitアプリとは何ですか? >よかったら教えてください。 私の場合は特別にOS2をいまだに現役で使っているので、エクセル、ワードをはじめWindows3.1アプリが大量に現役続行中なんです…。 その中でも皆さんと普遍的に共通な用途で手放せない有り難さを感じているのが、 senchan.exeというテキスト桁揃え用の小さなオンラインソフトなのですが、さすがに今このソフトをgoogle検索しても見つかりませんでした… (クリップボードに待機中の文字列を、きっちり●●桁、に行末を揃えてくれるソフトです。ワープロやエディタにこういう機能がありますが、クリップボード上で桁揃えを実施してくれるので「主役が何のソフトであっても」これさえあれば助かる、という物で重宝しています) >VirtualPCが無償で提供されるので >あまり互換性には神経を使わなくてもよいかもしれないですね。 なんとそうでしたか、これは嬉しいですね! 早速私も頂くことにします。 >2000とXPでAPIは追加されていないのですか? 2000の場合は98とほぼイコールのAPIで、XPでは98SEとほぼイコールではないかと思いますが、これは全く自信無しです。 (アプリケーションのベースで、「稼動環境の明示」が98と2000、98SE以降が大きな区切りになっている、ということから考えてみただけです) 例えば、無料になったVirtualPCを見ると、2000ならばSP4以上、2003サーバーならばそのまま、XPだとSP2以上、が対象になっていますね? これはもしかすると2003で追加された新APIに準拠してプログラムされている、ということになるのかもしれません。 2000年に登場した2000ではSP4が、2001年に登場したXPではSP2で、2003相当の新APIが追加されるということになるのかもしれません。 (APIとは無関係な他の依存機能が追加されているだけかもしれません。これは誰かもっと詳しい方に助けてもらえるとホント私もうれしいです)
補足
OS2ってNT系の起源みたいなOSですよね。 32bitじゃなかったですか? GUIで使いやすいんですか?
- altosax
- ベストアンサー率56% (473/830)
>16bitアプリって今でも使われているんですか? さすがに一般論としては少ないと思いますが、私は今でも使っている手放せない16ビットアプリがいくつかありますよ。 なかなかそれに代わる32ビットアプリが出ない、という場合には、仕方なく使い続けることになる人々も結構いると思います。 そういう点を「保証ではないが、できるかぎりに」救済してくれるところが、ばっさり切り捨てになるマッキントッシュと違ってウインテル連合のありがたいところです。 >また、64bitではさすがに切り捨てられるんですよね。 これはすみません、私はあまり詳しいことを知らないので誰かに助けて頂けるとうれしいです。 理屈的にごくおおざっぱに言えばWindowsの技術は「仮想マシン技術」なんですよ。 なので、Windows9系の技術は16ビットMS-DOSの上に32ビット仮想マシンをこしらえる、という方法で生の16bitと仮想環境32bitが両方うごく仕組みでした。 NT系になると、32bitNTカーネルという親亀の上に仮想16ビットDOSマシンや、16bit仮想OS2マシン、仮想POSIXマシンといういろんな種類の仮想マシン環境が用意されていて何でも動く、といううたい文句でした。 >命令セットの新型というのはSSEとかいうやつですか? 命令セットの新型は、基本的にはOSのバージョンが上がればたいてい追加されていたのですが、これは「必ず」なのか「たいてい」なのか、ちょっと私も自信ありません。 新APIでないと動かない!ということは、メーカー側からすれば買い替えをしてもらういいチャンスである一方、あまり頻繁だと消費者に苦情をもらう種にもなりますので、技術進歩と販売という面のてんびんにかけるとむずかしいところですよね。 過去の大きなAPIの追加は(ちょっと不確かなんですが)、win3.0から3.1に上がった時、3.1から95に上がった時、95のOSR2という第二バージョンが出た時(これが初期版98と共通)、98SEが出た時(これがxpぐらいまで共通)…、というあたりまでは私も認識してます。 この他に小さな追加がいろいろあるかと思いますので誰か助けてくれたら私も嬉しいです。 (Windows●●以上でないと動作しない、と明記されているソフトは、そのAPIに依存したプログラムになっている、ということです)
補足
手放せない16bitアプリとは何ですか? よかったら教えてください。 自作のものですか? VirtualPCが無償で提供されるので あまり互換性には神経を使わなくてもよいかもしれないですね。 2000とXPでAPIは追加されていないのですか?
- junra
- ベストアンサー率19% (569/2863)
OSのきる代わりによる下位互換です。 OSが切り替わるとき、一つ前のものとの切り替えのための互換性を必要とするからです。 最新のものを利用するのでしたら以前の物は必要とされませんから、ある一定の時期を過ぎてバージョンアップをされると以前のものを切り捨てる形にしないと何時までも切り替えがされないからです。
補足
16bitアプリって今でも使われているんですか? また、64bitではさすがに切り捨てられるんですよね。 命令セットの新型というのはSSEとかいうやつですか?