在过去的几个月里,我一直很好奇尝试为 SPARC 处理器(V8 或 V9)做一些组装。我的问题是,我无法访问 SPARC 机器,有没有办法可以在我的 x86 机器上运行 SPARC 二进制文件?我看过 QEMU,但我不太确定如何设置它。
10 回答
SimICS模拟 Sparc 平台。学术和个人许可证是免费的。
编辑:在我最初的回应中,我没有公正地对待 SimICS,它对于基于 Sparc 的开发来说是一个非常有用的工具。您可以在用户空间和内核空间中检测、分析和探索行为或代码。大约 10 年前,当它由瑞典计算机科学研究所 (SICS) 发布时,我第一次意识到它。他们后来将其作为商业产品推出。
好的,这里是:
- qemu 正在模拟用户代码,而不是系统
- tkisem 以图形方式显示 cpu 内部结构
- 此外,还有一种叫做“ISEM”(Instructional Sparc Emulator)的东西
也许谷歌搜索会帮助您获得详细信息。我的意见 - qemu 已经足够了。
顺便说一句,您可以从Ebay以大约 3/4 的价格从 Ebay 购买旧的二手 Sun 工作站。
除了完整的系统仿真之外,QEMU 还可以在用户空间级别仿真 SPARC,这样您就可以在 SPARC 汇编中编写程序并使用标准的 Linux 系统调用,它会调用标准的 x86 内核版本……工作得很好!!
如果您不确定是否要专门学习 SPARC 汇编,则可以改用 MIPS。大多数无线路由器都基于 MIPS 处理器并且可以运行 Linux。它类似于 SPARC,具有相似的年份,并且与 SPARC 一起,它是两个原始 RISC 架构之一……在我看来,MIPS 实际上比 SPARC更简洁优雅的架构,但它们都是伟大的。
看起来 QEMU 做了足够的仿真让您在以下位置安装 SPARC Linux:http ://www.bellard.org/qemu/status.html
在这种情况下,只需获取一个 SPARC 发行版(例如Debian),一切就绪!
polarhome提供了对 Solaris 系统(看起来是 Sun Sparc 系统,而不是 x86)的 shell 访问。它的价格为 10 个当地货币单位(美元、欧元等)或 2 美元,以较大者为准。
这模拟了 SparcStation 2(sun4c 32 位 SPARCv7)和 Ultra-1(sun4u 64 位 SPARCv9),据我了解,它的联邦性非常高,因为它甚至使用帧缓冲区中的库存转储 rom。
http://people.csail.mit.edu/fredette/tme/
至于 v7 v8 和 v9 的区别 Sparc v7 和 v8 是 32bit v9 是 64bit。请注意,QEMU 并不是完全忠实于仿真,它会动态重新编译,因此它可能会更快一些(实际上它很慢),但代价是兼容性可能会降低。用于 v7-v8 的 QEMU 可以引导 Linux 和大多数 BSD 以及实验性的 Solaris。SPARCv9 的 QEMU 是实验性的。
我已经在 Linux 上构建了 TME,但是如果您只安装 NetBSD 并在其中构建它,那么它可能会更好,这样您就可以使用它所具有的网络支持,并且旧的编译器不会对代码有太多抱怨。
我在这里有一个稍微修补过的版本https://github.com/cb88/tme我会很感激帮助处理它大多数补丁来自 NetBSD pkgsrc 但我想我清理了其他一些东西。
Aeroflex Gaisler 为其 LEON2、LEON3 和 LEON4 处理器提供商业模拟器,这些处理器实际上是 SPARC。LEON3 还有一个有限的评估版本。
见http://www.gaisler.com/index.php/downloads/simulators
他们为 Windows (MinGW) 和 Linux 提供免费的 GCC 交叉编译器:
请查看http://www.stromasys.com,CHARON-SPK 符合您的要求。http://www.stromasys.ch/virtualization-solutions/virtual-sparcstation/也可以提供帮助。
请注意,如果您打算在 2.5.1/5.5 之后运行 Solaris,那么 qemu-sparc 将无济于事。不过 NetBSD 和 Linux 应该可以正常运行。
这是因为 qemu-sparc 只支持非常旧的 SPARC 处理器。它会导致 Solaris 安装程序在意识到架构太旧时抛出错误,或者如果您尝试安装 Solaris 8-11,它会在启动之前出现故障/崩溃。
前面提到了一些成本细节:如果您想走这条路,可以从 EBay 以大约 400 美元的价格购买能够运行 Solaris 11 的功能齐全的 64 核 SPARC 2U。T5220 将运行 Solaris 11。
我没有使用这里提到的其他模拟器的经验,但也听说过关于 Simics 的好消息,虽然它很贵。