Могу ли я использовать ОС x86 в других архитектурах, например: ppc?

1160

Я хочу установить Slackware x86 на ПК? Могу ли я это сделать?

Если нет, то если я скомпилирую только ядро ​​в ppc, может ли оно работать?

Есть ли способы сделать это ??

спасибо за все ответы! и извините за мой плохой английский.

1
Когда я использовал slamd64, я мог установить 32-разрядные x86 и 64-разрядные x86 на одной ОС, почему я не могу сделать это в PPC? 15 лет назад 0
x86_64 - это расширенный набор x86 (вроде). Можно запустить код x86 на x86_64. КПП дико отличается. Вы не можете запустить код, скомпилированный для x86 на PPC. Colin Pickard 15 лет назад 0
К вашему сведению, вам нужно немного узнать о том, что такое ISA, прежде чем думать об этом. Paul Nathan 15 лет назад 0

4 ответа на вопрос

7
Colin Pickard

Нет, ты не можешь. Вам нужен код, скомпилированный для PPC.

Проект Slackintosh основан на Slackware, но для PPC. Вы можете проверить их.

SlackIntosh очень старый, и я хочу использовать хранилище Slackware для x86, другого способа сделать это? 15 лет назад 0
Нет, вы не можете использовать репозиторий x86; по крайней мере, не скомпилированные двоичные файлы, они не будут выполняться на PPC. Вам нужно будет скомпилировать все из исходного кода. Вместо этого вы можете использовать современные дистрибутивы PPC - например, Fedora и Debian поддерживают текущие релизы PPC (http://fedoraproject.org/en/get-fedora-ppc и http://www.debian.org/releases/stable/ ) Colin Pickard 15 лет назад 0
2
iWerner

Вы не можете запустить ядро, скомпилированное для x86, на другой архитектуре, потому что другая архитектура имеет другой набор инструкций. Это почти как попытка скомпилировать программу Java с компилятором C ++ на более низком уровне.

Вы можете скомпилировать ядро ​​для новой архитектуры, но вам также понадобятся другие исполняемые файлы, которые вы собираетесь запустить поверх вашего ядра для вашей новой архитектуры.

2
Aaron Digulla

Вы можете использовать эмулятор, такой как qemu или bochs, чтобы установить вторую ОС (для другого процессора) на существующую ОС. Это позволяет вам использовать вторую ОС и все приложения, которые были созданы для нее.

Единственная альтернатива - это снова скомпилировать все для вашего нового процессора, потому что процессоры не могут изучать иностранные языки.

Нет, ты не можешь! Эмуляторы не могут эмулировать совершенно другой чипсет! По крайней мере, без огромной потери производительности. Wim ten Brink 15 лет назад 0
VirtualBox и VMWare НЕ являются эмуляторами - они позволяют вам запускать виртуальную машину внутри вашей хост-ОС, но они запускают гостевую ОС изначально (используя поддержку аппаратной виртуализации в ЦП, если она доступна). Вы не можете использовать это для эмуляции совершенно другой архитектуры процессора. 15 лет назад 1
Это было правдой в 1999 году, но с тех пор мы прошли какой-то путь. Например, вы можете запустить JIT-компилятор в коде. Вы можете заменить известные фрагменты кода вызовами функций в реальной ОС. Aaron Digulla 15 лет назад 0
@Jesper: bochs - это мягкий эмулятор, который работает где угодно. Aaron Digulla 15 лет назад 1
@ Аарон, я не могу понять, где Bochs утверждает, что поддерживает PPC, хотя упоминается, что он построен на C ++ и поэтому может быть скомпилирован в системе PPC. Даже если бы это было так, я бы подумал, что производительность все равно будет очень плохой из-за нескольких уровней ОС плюс промежуточный эмулятор. Даже с JIT-компилятором все равно будет медленно. Wim ten Brink 15 лет назад 0
Он хотел запустить код x86 на PPC, и это то, что может сделать bochs. Сам Bochs не очень быстрый, но это не значит, что все эмуляторы работают медленно. Например, Amithlon мог запускать код Amiga на стандартном ПК быстрее, чем любой другой Amiga, который вы могли создать. Поэтому вопрос скорее в том, насколько быстро работает ваш эмулятор, а не в том, как быстро работает оригинальная система, а в том, насколько сильно вам нужно приложение. Если ваша жизнь зависит от запуска приложения, скорость не является главной проблемой. В этом случае даже очень медленный эмулятор лучше, чем ничего. Aaron Digulla 15 лет назад 0
qemu эмулирует систему x86 на ppc просто отлично и намного быстрее, чем bochs, потому что qemu выполняет динамическую трансляцию / перекомпиляцию трески, а bochs - прямой интерпретатор. ephemient 15 лет назад 1
@ephemient: Спасибо, что напомнили мне. Я обновил свой ответ. Aaron Digulla 15 лет назад 0
1
dreamlax

PPC и x86 используют два совершенно разных набора команд. Процессоры PPC даже не реализуют большую часть функциональности современного процессора x86, потому что процессоры PPC предлагают только ограниченный набор команд.

Представьте, что вы купили новый мобильный телефон, но на языке, который вы не понимаете, а прилагаемое руководство по эксплуатации предназначено для совершенно другой марки и модели. Вот как x86 Slackware будет выглядеть как PPC.

Похожие вопросы