Board logo

标题: 微软黑科技系列 - 很多人都不知道,Windows Phone 7 和 8 是原生 x86 的 [打印本页]

作者: Boomer    时间: 2012-12-30 20:53     标题: 微软黑科技系列 - 很多人都不知道,Windows Phone 7 和 8 是原生 x86 的

下载 Windows Phone SDK 就知道,Windows Phone 7 虽然是在专门的模拟器里跑,但是把模拟器 ROM 解开之后就知道全是原生 x86 代码;Windows Phone 8 都不要模拟器了,官方直接就给的是一个虚拟机~然后一切的 app 都是原生支持 x86,连重新编译都不需要,想试验的话,直接从网上下载个 xap 程序扔模拟器就能跑~

[ 本帖最后由 Boomer 于 2012-12-30 20:55 编辑 ]
作者: Boomer    时间: 2012-12-30 20:55

这个就像 Xbox 360 可以用 PowerPC CPU 直接跑 x86 的大型 3D 游戏一样,属于微软黑科技系列~

另外,Xbox 360 的固件大小连 16MB 都不到,大概只有 PSP 的一半~
作者: yang117    时间: 2012-12-30 20:57

posted by wap, platform: GALAXY S III

在等待 Intel 的 x86手机吗?
然后统一三大平台?
作者: Boomer    时间: 2012-12-30 21:01

引用:
原帖由 yang117 于 2012-12-30 20:57 发表
posted by wap, platform: GALAXY S III

在等待 Intel 的 x86手机吗?
然后统一三大平台?
因为看到 x86 Android 手机的帖子里面有人在讨论这个问题,所以才特意说一下
作者: 风间星魂    时间: 2012-12-30 21:03

你确定是本地码而不是.net虚拟机托管代码?
你先搞清楚c#/.net托管代码还是真正的原生机器码。

wp这种虚拟机开发语言的平台,换啥平台都一个样。。

[ 本帖最后由 风间星魂 于 2012-12-30 21:05 编辑 ]
作者: Boomer    时间: 2012-12-30 21:05

引用:
原帖由 风间星魂 于 2012-12-30 21:03 发表
你确定是本地码而不是.net虚拟机托管代码?
你先搞清楚c#/.net托管代码还是真正的原生机器码。

wp这种虚拟机开发语言,换啥平台都一个样。。
操作系统本身是 x86 本地码,解开模拟器的 ROM 或者虚拟机的 VHD 镜像就知道

app 当然是托管的,同一个 xap 可以同时在 ARM 的手机上和 x86 的虚拟机里跑
作者: 风间星魂    时间: 2012-12-30 21:06

引用:
原帖由 Boomer 于 2012-12-30 21:05 发表


操作系统本身是 x86 本地码,解开模拟器的 ROM 或者虚拟机的 VHD 镜像就知道

app 当然是托管的,同一个 xap 可以同时在 ARM 的手机上和 x86 的虚拟机里跑
这当然可以,既然是托管平台跑在那个cpu或者那个系统上当然没区别。
虚拟机语言而已。
安卓也一样,java虚拟机。
但是很多安卓app为了性能有些模块用了ndk c本地码,导致了移植性下降。那些非主流架构的cpu就悲剧了。

这也算黑科技?
呵呵厚了。。。

非unix c程序员就不要来讨论这个问题了。。一帮人根本没有cpu/os 二进制格式(elf mach-o之类) 托管虚拟机代码的完整概念。

[ 本帖最后由 风间星魂 于 2012-12-30 21:15 编辑 ]
作者: 多余的云    时间: 2012-12-30 21:14

XO游戏还是需要PC版重新编译一下的,不过也是属于黑科技范畴,源码之类的完全不用改,只改改UI和控制就行了。
现在更黑了,XNA做一个游戏,PC手机XO三平台都能跑!
作者: Boomer    时间: 2012-12-30 21:14

引用:
原帖由 风间星魂 于 2012-12-30 21:06 发表


这当然可以,既然是托管平台跑在那个cpu或者那个系统上当然没区别。
虚拟机语言而已。
安卓也一样,java虚拟机。
但是很多安卓app为了性能有些模块用了ndk c本地码,导致了移植性下降。那些非主流架构的cpu就 ...
黑科技主要还是 Xbox 360 那个玩意,同比之下 SQNY 的 PS3 呵呵厚

如果微软拿出 Xbox 360 的搞法,ARM 直接跑 x86 完全是可行的
作者: Boomer    时间: 2012-12-30 21:16

引用:
原帖由 多余的云 于 2012-12-30 21:14 发表
XO游戏还是需要PC版重新编译一下的,不过也是属于黑科技范畴,源码之类的完全不用改,只改改UI和控制就行了。
现在更黑了,XNA做一个游戏,PC手机XO三平台都能跑!
没错~新开发的游戏直接这样搞~PowerPC 直接跑 x86 是指 Xbox 360 可以玩 Xbox 游戏这块~
作者: 风间星魂    时间: 2012-12-30 21:17

引用:
原帖由 Boomer 于 2012-12-30 21:14 发表


黑科技主要还是 Xbox 360 那个玩意,同比之下 SQNY 的 PS3 呵呵厚

如果微软拿出 Xbox 360 的搞法,ARM 直接跑 x86 完全是可行的
黑科技啥,上层api一样,c本地码重新编译,一行都不用改。
如果是虚拟机语言直接跑。
apple也有mach-o运行时cpu架构选择二进制格式。
作者: 风间星魂    时间: 2012-12-30 21:19

引用:
原帖由 多余的云 于 2012-12-30 21:14 发表
XO游戏还是需要PC版重新编译一下的,不过也是属于黑科技范畴,源码之类的完全不用改,只改改UI和控制就行了。
现在更黑了,XNA做一个游戏,PC手机XO三平台都能跑!
XNA是c#,虚拟机代码和java一样,接口一样当然都能跑
wp8能用c++ dx了,更没人用速度慢的XNA了。。

[ 本帖最后由 风间星魂 于 2012-12-30 21:22 编辑 ]
作者: Boomer    时间: 2012-12-30 21:24

引用:
原帖由 风间星魂 于 2012-12-30 21:17 发表


黑科技啥,上层api一样,c本地码重新编译,一行都不用改。
如果是虚拟机语言直接跑。
apple也有mach-o运行时cpu架构选择二进制格式。
不是说移植游戏,而是说 Xbox 的游戏(x86)放进 Xbox 360(PowerPC)可以直接玩~相比之下,SQNY PS2 机能比 Xbox 还弱,但 PS3 要软兼容 PS2 却非常困难,当时只能靠把 PS2 和 PS3 同时做在一块主板上才行~
作者: Happyminti    时间: 2012-12-30 21:25

posted by wap, platform: iOS

虽不明,但觉厉
作者: Boomer    时间: 2012-12-30 21:27

引用:
原帖由 风间星魂 于 2012-12-30 21:19 发表


XNA是c#,虚拟机代码和java一样,接口一样当然都能跑
wp8能用c++ dx了,更没人用速度慢的XNA了。。
所以现在的商城里就需要区分 CPU 架构了,比如 ARM 版扫雷就是不久之前才出来的,比 x86 版扫雷晚了几个月
作者: 寂静狼    时间: 2012-12-30 21:28

LZ确定360的固件只有16M?
为什么我更新都要下好几百M的。。。。。。
作者: 风间星魂    时间: 2012-12-30 21:31

引用:
原帖由 Boomer 于 2012-12-30 21:27 发表


所以现在的商城里就需要区分 CPU 架构了,比如 ARM 版扫雷就是不久之前才出来的,比 x86 版扫雷晚了几个月
喷了,这个不太好
apple的mach-o格式可以把多个cpu架构的二进制打包在一起,运行时选择。
比如OSX那些ppc/x86双架构原生c++本地码游戏。
作者: Boomer    时间: 2012-12-30 21:32

引用:
原帖由 寂静狼 于 2012-12-30 21:28 发表
LZ确定360的固件只有16M?
为什么我更新都要下好几百M的。。。。。。
因为主板上闪存只有 16MB…下载几百 MB 是为了自动适配不同型号的主板…另外 Kinect 需要外挂驱动程序,所以在 16MB 的机型上(比如 Xenon,Opus,Falcon,Jasper 非 256MB 和 512MB 版,Valhalla / Trinity / Corona 非 4GB 版本上)不加硬盘是不能玩 Kinect 的~
作者: Boomer    时间: 2012-12-30 21:37

引用:
原帖由 风间星魂 于 2012-12-30 21:31 发表 [img]http://club.tgfcer.com/images/comm[/img]

喷了,这个不太好
apple的mach-o格式可以把多个cpu架构的二进制打包在一起,运行时选择。
比如OSX那些ppc/x86双架构原生c++本地码游戏。
知道,这个是 OS X PowerPC 和 x86 过渡期的软件用的,编译的时候直接编译两份但是打包在一个文件里,然后自动选择~标注只支持 x86 的软件就没有 PowerPC 那一部分了~还有 iPhone 在 ARMv6 和 ARMv7 过渡时期也采用了这个技术,所以当时一些在 ARMv6 iPhone 上破解的 ipa 放到 ARMv7 iPhone 就运行不了~

关于扫雷…估计是微软为了减少下载尺寸,所以两种分开编译,下载的时候由商城自动适配,然后 ARM 版一直没编译直到接到 Windows RT 用户投诉…因为微软的效率是如此之低,中文版扫雷迄今还没有扫雷主题只有草地主题…

[ 本帖最后由 Boomer 于 2012-12-30 21:41 编辑 ]
作者: -不戴眼镜-    时间: 2012-12-30 21:38

楼主的意思就是终于能统一平台了?
这其实就是微软的本意,他简直对程序员太有号召力了
作者: arex    时间: 2012-12-30 21:42

但是给什么平台开发什么软件不是程序员说了算的吧...
作者: -不戴眼镜-    时间: 2012-12-30 22:46     标题: 回复 21# 的帖子

自己开发着玩呢?
作者: 松下裤带子    时间: 2012-12-30 23:11

现在微软想从桌面生态圈强攻手机生态圈了,那局势不是一发逆转了。
作者: zzxf    时间: 2012-12-31 07:17

引用:
原帖由 Boomer 于 2012-12-30 21:24 发表


不是说移植游戏,而是说 Xbox 的游戏(x86)放进 Xbox 360(PowerPC)可以直接玩~相比之下,SQNY PS2 机能比 Xbox 还弱,但 PS3 要软兼容 PS2 却非常困难,当时只能靠把 PS2 和 PS3 同时做在一块主板上才行~
等等

xbox360怎么直接玩xbox游戏啊
作者: 鬼冢英吉    时间: 2012-12-31 07:45

posted by wap, platform: iPhone
引用:
原帖由 @zzxf  于 2012-12-31 07:17 发表
等等

xbox360怎么直接玩xbox游戏啊
的确可以直接玩,自制机下个Xbox游戏的god,扔硬盘里就能开整了。
作者: 旨旨    时间: 2012-12-31 08:13

posted by wap, platform: Android
引用:
原帖由 @鬼冢英吉  于 2012-12-31 07:45 发表
posted by wap, platform: iPhone

的确可以直接玩,自制机下个Xbox游戏的god,扔硬盘里就能开整了。
硬盘里面要有xbox模拟器
作者: 夜想曲    时间: 2012-12-31 11:17

引用:
原帖由 zzxf 于 2012-12-31 07:17 发表

等等

xbox360怎么直接玩xbox游戏啊
必须得有硬盘,硬盘里有个分区2,这个分区2是xbox模拟器,原装硬盘自带,自己刷的硬盘要用xplored还原这个分区2,昨晚为了玩忍黑,才把320g的硬盘恢复了一下
作者: elia    时间: 2012-12-31 11:18

posted by wap, platform: ZTE

wp8就是nt内核吧
作者: 鬼冢英吉    时间: 2012-12-31 11:47

posted by wap, platform: iPhone
引用:
原帖由 @旨旨  于 2012-12-31 08:13 发表
posted by wap, platform: Android

硬盘里面要有xbox模拟器
对啊,我都忘了当时装模拟器的事了。




欢迎光临 TGFC Lifestyle (http://bbs.tgfcer.com/) Powered by Discuz! 6.0.0