西西河

主题:【原创】说说苹果转向英特尔这件事 -- Highway

共:💬44 🌺10
全看分页树展 · 主题 跟帖
家园 【补充】苹果转向英特尔的一件杀手武器 -- Transitive

用Apple的话来说,就是Rosetta

Rosetta keeps old apps running

Jobs also discussed a new technology called Rosetta, that he described as “a dynamic binary translator.” It runs existing PowerPC applications on the Intel platform, he said. Jobs described Rosetta as “lightweight,” and said “it’s nothing like Classic.”

Jobs demonstrated Rosetta by running Microsoft Office applications, Quicken and Photoshop CS 2 ― all unmodified PowerPC-binary versions, unlike Mathematica ― on the new Intel-based hardware.

“So that is Rosetta, Jobs concluded. “These PowerPC apps just run. And that’s what we’re going to have for our users, because every app isn’t going to be there for our users on day one.”

如果我没有搞错的话,这种技术就是来自Transitive。

点看全图

外链图片需谨慎,可能会被源头改

Transitive是一个高性能的Emulator,其本质和VMWare, 微软的Virtual PC道理类似,是一种 Hardware Virtualization技术。

使用这种技术,在Apple PowerPC平台上开发的应用可以一字不动的搬到新的Intel平台上。Transitive会动态的将原来的Binary Code自动翻译成新的Intel处理器格式的Binary Code。据称,其性能可达到Native Code的80%。

SGI已经使用了这种技术。SGI以前使用的是MIPS处理器和IRIX操作系统。现在SGI使用的是Intel的Itanium 2处理器和Linux操作系统。使用定制的Transitive软件,SGI以前的应用可以顺利的运行在新的环境中,使得平台过渡变得非常简单和容易。

点看全图

外链图片需谨慎,可能会被源头改

据悉,Apple将会采用同样的策略。现有的程序可以拿到新的Intel平台上来(首先是Pentium D),不需要做任何改动。以后再慢慢的将程序重新编译,变成Intel的Native code.

点看全图

外链图片需谨慎,可能会被源头改

想不到的是,现在的dynamic binary translation技术已经如此成熟了。Java,小心啦,没有你,跨平台一样可以轻松搞定!!!

补充一下,Rosetta也不是万能的,就现在而言。他又如下的限制:

Rosetta does not run the following:

- Applications built for Mac OS 8 or 9

- Code written specifically for AltiVec

- Code that inserts preferences in the System Preferences pane

- Applications that require a G4 or G5 processor

- Applications that depend on one or more kernel extensions

- Kernel extensions

- Bundled Java applications or Java applications with JNI libraries that can't be translated "

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河