Cider需要说服运行于苹果XNU内核上的应用代码,让它可以复制库和框架
2014-05-14 08:50
369 查看
哥伦比亚大学计算机系的六个博士生近日开发了一个项目:Cider,这是一个能在Android上兼容运行iOS应用程序的架构。
这样的壮举,并没有使用一个严格的虚拟机,而是在同一个设备上运行domestic和foreign二进制文件才得以实现,他们利用诸如编译时代码阶段适应和外交功能的二进制兼容性技术。这也意味着Cider需要说服运行于苹果XNU内核上的应用代码,让它可以复制库和框架。
与此同时,他们也发布了一个概念性验证视频,展示了他们在Nexus 7上运行iOS应用的工作成果(视频:点此进入)。
虽然表现不尽如意,但考虑到额外的外部函数调用和当前并不完整的OpenGL ES实现,这也就不值得奇怪了。而更为重要的是,使用OS兼容层能够让iOS应用程序在Android上原生执行,这本身就是一个令人印象深刻的举动。
另外在报道中也特别提到非常重要的一段:即使在操作系统的抽象层,Android应用仍然能够在该设备上运行。该研究团队称,他们的方法并没有在两操作系统之间的兼容性上,遇到任何根本性限制问题。
话虽这么说,但这仍是一个原型,在一些应用表现上肯定会不完美。Cider研究小组指出,智能手机和平板电脑有很多功能,应用程序希望能够使用GPS、相机、手机收音机、蓝牙等等,但Cider暂时不支持这些,因此能够运行的iOS程序也不能使用到这些功能,除非他们提供一个回滚代码路径。
好消息是,目前Cider团队将继续这个研究,这些不完美或许在某一天将能够得到解决。
这样的壮举,并没有使用一个严格的虚拟机,而是在同一个设备上运行domestic和foreign二进制文件才得以实现,他们利用诸如编译时代码阶段适应和外交功能的二进制兼容性技术。这也意味着Cider需要说服运行于苹果XNU内核上的应用代码,让它可以复制库和框架。
与此同时,他们也发布了一个概念性验证视频,展示了他们在Nexus 7上运行iOS应用的工作成果(视频:点此进入)。
虽然表现不尽如意,但考虑到额外的外部函数调用和当前并不完整的OpenGL ES实现,这也就不值得奇怪了。而更为重要的是,使用OS兼容层能够让iOS应用程序在Android上原生执行,这本身就是一个令人印象深刻的举动。
另外在报道中也特别提到非常重要的一段:即使在操作系统的抽象层,Android应用仍然能够在该设备上运行。该研究团队称,他们的方法并没有在两操作系统之间的兼容性上,遇到任何根本性限制问题。
话虽这么说,但这仍是一个原型,在一些应用表现上肯定会不完美。Cider研究小组指出,智能手机和平板电脑有很多功能,应用程序希望能够使用GPS、相机、手机收音机、蓝牙等等,但Cider暂时不支持这些,因此能够运行的iOS程序也不能使用到这些功能,除非他们提供一个回滚代码路径。
好消息是,目前Cider团队将继续这个研究,这些不完美或许在某一天将能够得到解决。
相关文章推荐
- 模仿苹果手机虚拟键的代码分享,有兴趣的可以玩玩。 下面的是链接,复制粘贴到浏览器就能下载
- 代码在windows下运行只有12s,但是在linux下需要50s时,这样优化就可以解决
- 模仿苹果手机虚拟键的代码分享,有兴趣的可以玩玩。 下面的是链接,复制粘贴到浏览器就能下载
- 苹果app在安装过程中出现此应用需要开发者更新以在此ios版本上运行
- treeview(将代码复制出去就可以运行)
- [公告] 我的框架代码已经放到sf.net上面了,有需要的可以下载来看看[Sumtec]
- 预加载2+网页加载条 可以直接复制代码运行,如果图片地址丢失的话可以自己替换掉
- 【自然框架】之鼠标点功能现(二):表单控件的“应用”—— 代码?只写需要的!
- 未上市的GamePop游戏主机称不用苹果代码也可以运行iOS游戏
- 可运行代码的"运行代码"-2006-6-26-1 终于可以用了
- asp下实现代码的“运行代码”“复制代码”“保存代码”功能源码
- 如果有一个工具可以帮助你将你的代码可视化,你需要吗?
- AJAX示例应用-2(两级菜单的联动)-方式2(服务器以字符串形式执行代码在客户端运行)
- Adobe AIR:我们真的需要在桌面上运行浏览器应用吗?
- [导入]在框架中,可以实现折叠框架效果代码
- 运行、复制、另存代码
- js实现运行代码需要刷新的解决方法
- [转]为 PHP 应用提速、提速、再提速!,第 2 部分: 分析 PHP 应用程序以查找、诊断和加速运行缓慢的代码
- 刚刚找到的一个JS的应用代码大全,可以用来作技术资料查询
- 应用框架的设计与实现——.NET平台4.2代码测试问题解决