Roger Shih wrote:
就作業系統角度而言,如果 Vista 不能跑 DirectX9 的遊戲,才叫相容性問題。
舊作業系統還要能支援新的支援特徵,這已經不是純粹相容性問題,以 linux 來說,就像要舊核心跑新核心提供的功能。
提 DirectX 實在不是個好 idea,因為 XP 下 DirectX 設計,遊戲會獨佔 DirectX 資源,導致 DirectX 的多程式多工不好,過去因為大多數情況下,會去用 DirectX 的多數是遊戲,而跑遊戲時,也很少人會開兩個以上遊戲程式同時跑,所以沒什麼問題。而硬體的驅動程式因此之故,所以 DirectX 上的資源分配也比較不注重多工資源的分配。
但是除了遊戲外,其他會使用到 DirectX 的軟體也逐漸增多,這情況下,XP 要改善 DirectX 的資源分配,底層就得大改,結果就是 Vista.
所以以 DirectX 去指責 XP 不支援 DirectX 10 是不太妥當的,因為 XP 底層架構就是不太能符合 DirectX 10 開始要求的多工資源分配,所以才重新制定多工架構成為 Vista .
其實 Linux 會一直改也是因為舊架構支援不了新功能的關係
只是微軟 3 年出一版,Linux 可能一年出三版...orz
有時候,你不得不覺得....
開發者太過認真,是一件讓人很討厭的事情
才剛適應的東西又被改掉了,然後一些來不及跟上的軟體
就很倒楣的被丟掉了,儘管他們過去寫得很好...
這種倒楣的事情,很不幸在 Linux 上可以說司空見慣
不止 Linux 本身,上面的桌面核心軟體元件也是
發生過一個軟體改版弄壞整個系統的典型例子如下:
1. gcc 3 -> gcc 4
2. X.org
3. gtk+ 1 -> gtk+ 2
4. Qt 3 -> Qt 4
5. freedesktop.org specs
6. sysfs
7. hal
8. acpi
還有更多更多....更多讓上面的軟體開發者哭笑不得的狀況
我很可以理解為何廠商不喜歡寫 Linux 軟體
反觀 Windows 上我十年前寫的程式,現在還動得很好呢