上から順に Windows NTは設計当時から内部での文字列の扱いはユニコード。当時の目で見れば「文字の扱いにこんなに複雑にしやがって!」だったでしょう。MacがMac OSだったころはそうではありませんでした。
プロセッサに依存しないというのも、AppleはもうIntel系しかサポートしていませんし。Appleのほうがよほど依存してますが。今後もPPC向けのMac OS Xを出すなら話はやや変わります。 XBOX 360ではPPC用のWindows NTですが。 出せないのではなく、出しても売れないのです。だからこうなっているのです。
Macにすべてにおいて劣ってるWindows (スコア:0, 荒らし)
Macのユニバーサル化対応アプリはすばらしくいいですね。
ああいった構造にしてないとコスト削減とかできないでしょう。
当面のテーマはAppleに追いつく事でしょうね
・言語に依存しない
・プロセッサに依存しない
・もしかすとインターフェイスに依存しない
#そんな作りがテーマになると思いますね。
最近Windowはもはや過去のもので終った商品だと思います
Macやその他のOS見てるのつくづく思いますね。
ゼロから作るのであれば、
マルチスレッドのコンピュータでPCらしさを感じさせない構造で
24時間常に動き続け、音声やゼスチャーなど
人間の動きを認識でき場合によっては会話できるシステム内に
エミュレータのWindowsがあればそれでいい
はっきりって今の延長線上のWindowsはいらない
Re:Macにすべてにおいて劣ってるWindows (スコア:1)
・プロセッサに依存しない
・もしかすとインターフェイスに依存しない
上から順に
Windows NTは設計当時から内部での文字列の扱いはユニコード。当時の目で見れば「文字の扱いにこんなに複雑にしやがって!」だったでしょう。MacがMac OSだったころはそうではありませんでした。
プロセッサに依存しないというのも、AppleはもうIntel系しかサポートしていませんし。Appleのほうがよほど依存してますが。今後もPPC向けのMac OS Xを出すなら話はやや変わります。
XBOX 360ではPPC用のWindows NTですが。
出せないのではなく、出しても売れないのです。だからこうなっているのです。
インタフェースに依存しないっていうのも、そもそも、そのインタフェースとやらは何を指してますか?定義があいまいです。というか、依存しないってじゃあ何をどう作ればいいんですか?移植性を持たせることは出来ても依存しないように設計することは難しいですね。必ずどこかで依存する。というか、別にWindowsに依存しなくても、あなたは既に何かに依存してます。
さ、ACにマジレスしてみましたよ。
Re:Macにすべてにおいて劣ってるWindows (スコア:0)
実際は未だにシフトJISに縛られていて、苦労しているユーザがいるのは事実。
AppleはIntelしかサポートしていないんてのは嘘。現時点でMac OS Xは、PPC版
しか売られていないし、ほとんどのソフトがUniversal Binary化され、残りはPPC
のまま。また、次期Mac OS X v10.5はUniversal Binaryになるのは発表済み。
Xbox 360のOSは、Windows NTではない(技術ベースなだけ)し、通常言うPPC用
でもない。Xbox 360のCPUが3コアという極めて特殊なカスタマイズ版で汎用の
PPCではないのはよく知られていることだと思うが...。
Re:Macにすべてにおいて劣ってるWindows (スコア:1)
「現時点では」PPC用Mac OS Xとしか売っていませんが。それは当然知っています。
ただ、時間軸の視点を移すと、UBの効果は薄れませんか?
10年という視点で見た場合、PPC用Mac OS X*を出しますか?
答えはAppleしか知りませんが。
Xbox 360についても少々誤解されてるようで、x86用NTをPPC用に移植したものは知っていますし、
汎用OS用に設定していない以上、また別の話が存在しています。
Re:Macにすべてにおいて劣ってるWindows (スコア:0)
万が一両社がこのまま共存していてもIA32は時代遅れになっているでしょう。
>汎用OS用に設定していない以上、また別の話が存在しています。
それを言い始めると、AppleはARM系とされるiPhone用のOS Xも作っている訳です。
Re:Macにすべてにおいて劣ってるWindows (スコア:1)
ハードウェアの特徴というのはそれぞれの用途に合わせて設計されていますし。
NTはきちんとそれにあわせて設計してあるだろうし、なにもIA32だけを主眼においているわけではないですよね?出せないのではなく、出しても売れないから出さないだけですよね。
IA-32なり、IA-64なりx64なり、きちんと合わせた設計にしてあります。
PPCなりMIPSなりDEC Alphaなり、それに合わせた設計をしていましたし、結果的にIA32(x86)系を現在メインにおいたに過ぎません。
あと、ARM系のサポートは現在の状態においてEmbededdが中心であり、PCにおいては極稀な用途にしか使用されていないと考えているためNTは設計していませんし、それはCEとして設計しています。無理にNTで出しても昔言われたことをまた言われるようなものです。
Xbox360についてですが、スケールを考えた末のNTベースなだけであって、極コンパクトなハードウェア、極限られた使用用途であればCEで可能であって、Dreamcastを見ればそのとおりで実際に可能であればCEでも出せるということです。
ハードウェアリソースが限られるのであれば(何時の時代もこれが頭打ちになる)、それに合わせたものを使うというごく当たり前のことをしているだけに過ぎません。
Re:Macにすべてにおいて劣ってるWindows (スコア:1)
UBの欠点は使いもしないコードがサポートするハードウェアが増えるにつれ増えるということです。
ソフトウェアのポータビリティにも影響が出ますし、実行時の問題も出てきます。
なのでWindowsはエミュレートする環境を用意したり、Javaに(当初)賛同していたわけですね。
(いざこざは省略)
.NET Frameworkの展開で.NET Frameworkの環境さえ用意すればどの環境でも動くように設計できたり、
その環境向けに最適化できたりできるようになっています。たとえばOSの生のAPIの利用。これはJavaでは出来ません。
ついでに、仕様が公開されているので、クロスプラットフォームでの開発や利用が出来るようになっていて、ポータビリティや性能の低下をより低く抑えられるようになっています。
なので、アプリケーションバイナリ自体には後々ほとんど変更を加えないようになっています。
また、性能低下を抑えたり、.NET Frameworkの実行環境に合わない環境(主にリアルタイムを要求する環境)向けに非.NETアプリケーションを作れるようにもしています。
Universal BinaryはCPUアーキテクチャに合わせたコードをどんどん加えるようになっています。
Re:Macにすべてにおいて劣ってるWindows (スコア:1)
Windows NTはそもそもリアルタイムOSではありません(別途組み込むことでリアルタイムOSになるようにはできますが)。
以上の点が注意点であり、補足です。