Запускать двоичные файлы Sparc без аппаратного обеспечения Sparc

Мне было любопытно в последние несколько месяцев пытаться изо всех сил пытаться сделать сборку для процессора SPARC (либо V8, либо V9). Мой вопрос в том, что у меня нет доступа к машине SPARC, есть ли способ запустить двоичные файлы SPARC на моей машине x86? Я посмотрел на QEMU, но я не слишком уверен, как его настроить.

Ответ 1

SimICS эмулирует платформу Sparc. Академические и личные лицензии бесплатны.

Изменить: В моем первоначальном ответе я не занимался правосудием SimICS, это очень полезный инструмент для разработки на основе Sparc. Вы можете использовать инструмент, профиль и исследовать поведение или код как в пространстве пользователя, так и в пространстве ядра. Я впервые узнал об этом около 10 лет назад, когда он был выпущен Шведским институтом информатики (SICS). Позднее они превратили его в коммерческий продукт.

Ответ 2

Хорошо, вот оно:

  • qemu эмулирует код пользователя, а не систему
  • tkisem графически отображает внутренние компоненты cpu
  • Кроме того, есть вещь, называемая "ISEM" (Instationalal Sparc Emulator)

Возможно, поисковая система поможет вам получить подробную информацию. Мое мнение - qemu достаточно хорош для этого.

Ответ 3

Как и в стороне, вы можете отключить старые рабочие станции Sun с Ebay примерно на 3/4 от buggerall.

Ответ 4

В дополнение к полной эмуляции системы, QEMU также может эмулировать SPARC на уровне пользовательского пространства, чтобы вы могли написать программу в сборке SPARC и использовать стандартные системные вызовы Linux, и она будет вызывать стандартные версии ядра x86... работает очень хорошо!

Если вы не уверены, что хотите изучать сборку SPARC, вы можете вместо этого изучить MIPS. Большинство беспроводных маршрутизаторов основаны на процессорах MIPS и могут запускать Linux. Он похож на SPARC, аналогичного урожая, и вместе с SPARC он является одной из двух оригинальных архитектур RISC... по-моему, MIPS на самом деле немного больше чистой и элегантной архитектуры, чем SPARC, но они оба большой.

Ответ 5

Похоже, QEMU делает достаточно эмуляции для установки SPARC Linux на: http://www.bellard.org/qemu/status.html

В этом случае просто возьмите дистрибутив SPARC (например, Debian), и вы все настроены!

Ответ 6

polarhome предлагает доступ к оболочке системы Solaris (которая, как представляется, является системой Sun Sparc, а не x86). Он стоит 10 единиц местной валюты (доллары, евро и т.д.) Или 2 доллара США, в зависимости от того, что больше.

Ответ 7

Это эмулирует SparcStation 2 (sun4c 32bit SPARCv7), а также Ultra-1 (sun4u 64bit SPARCv9), из-за того, что я понимаю, что федерация довольно высока, поскольку она использует запасные диски, даже из фреймбуфера.

http://people.csail.mit.edu/fredette/tme/

Что касается разницы между v7 v8 и v9 Sparc v7 и v8, то 32bit v9 - 64 бит. Обратите внимание, что QEMU - это не все, что верно для эмуляции, и оно динамически перекомпилируется, поэтому может быть немного быстрее (на практике это довольно медленно), но по цене, возможно, меньшей совместимости. QEMU для v7-v8 может загружать Linux и большинство BSD и экспериментально Solaris. QEMU для SPARCv9 является экспериментальным.

Я создал TME для Linux, но, вероятно, это будет лучше, если вы просто установите NetBSD и создадите его там, чтобы использовать сетевую поддержку, и старые компиляторы не будут жаловаться на код.

У меня есть несколько исправленная версия здесь https://github.com/cb88/tme Я был бы признателен за помощь в работе над этим большинством патчей от NetBSD pkgsrc, но Я думаю, что я очистил еще несколько вещей.

Ответ 8

Aeroflex Gaisler имеет коммерческие симуляторы для своих процессоров LEON2, LEON3 и LEON4, которые на самом деле являются SPARC. Существует также ограниченная оценочная версия для LEON3.

См. http://www.gaisler.com/index.php/downloads/simulators

Они предоставляют бесплатные кросс-компиляторы GCC для Windows (MinGW) и Linux:

http://www.gaisler.com/index.php/downloads/compilers

Ответ 10

Просто заметьте, что если вы собираетесь запускать Solaris позже 2.5.1/5.5, то qemu-sparc вам не поможет. NetBSD и Linux должны работать нормально, хотя.

Это связано с тем, что qemu-sparc поддерживает только очень старые процессоры SPARC. Это приведет либо к тому, что установщик Solaris выкинет ошибку, если она осознает, что архитектура слишком старая, либо сбой/сбой, прежде чем она начнется, если вы попытаетесь установить Solaris 8-11.

Упомянутые ранее, но некоторые детали издержки: Полностью функциональный 64-ядерный SPARC 2U, способный запускать Solaris 11, можно приобрести у EBay примерно за 400 долларов США, если вы хотите пройти этот маршрут. T5220 сделает Solaris 11.

У меня нет опыта работы с другими эмуляторами, упомянутыми здесь, но также хорошо слышал о Simics, хотя это дорого.