Эльбрус/rtc: различия между версиями
м (+ссылки) |
м (→Ссылки: +1) |
||
Строка 25: | Строка 25: | ||
* [http://www.mcst.ru/tag/50c89dcf64871a2115000000 МЦСТ > Тэги > Двоичный транслятор] | * [http://www.mcst.ru/tag/50c89dcf64871a2115000000 МЦСТ > Тэги > Двоичный транслятор] | ||
* [http://www.mcst.ru/files/5a9eb8/a30cd8/50681b/000000/rodzevich_s._a._apparatnaya_podderzhka_dvoichnoy_translyatsii_x86_veshchestvennoy_arifmetiki.pdf Аппаратная поддержка двоичной трансляции x86 вещественной арифметики в процессорах "Эльбрус"] (PDF) | * [http://www.mcst.ru/files/5a9eb8/a30cd8/50681b/000000/rodzevich_s._a._apparatnaya_podderzhka_dvoichnoy_translyatsii_x86_veshchestvennoy_arifmetiki.pdf Аппаратная поддержка двоичной трансляции x86 вещественной арифметики в процессорах "Эльбрус"] (PDF) | ||
* [http://elbrus2k.wikidot.com/dynamic-binary-translation Dynamic binary translation] | |||
= Примечания = | = Примечания = |
Версия от 11:31, 4 сентября 2019
Бинарный транслятор
Для решения проблемы совместимости с унаследованным ПО для платформы x86 в МЦСТ разработали бинарный транслятор, работающий в двух режимах, чем-то напоминающих гипервизор (когда можно установить и запустить целую ОС) и wine (когда требуется запустить отдельное приложение).
Первый режим реализован в lintel и требует для работы установленную CF-карточку в машинах 401/801-РС; второй -- в rtc и работает под управлением уже запущенной операционной системы.
Применение
При наличии в /opt/x86/ развёрнутого окружения для x86_64 можно попытаться запустить командную оболочку примерно такой командой:
/usr/bin/rtc_opt_rel_p1_x64_ob --path_prefix /opt/x86 -- /bin/bash
При успешном запуске под бинарной трансляцией отданная в полученном приглашении команда uname -m сообщит не "e2k", а "x86_64".
На ОС Эльбрус под "Эльбрус 401-РС" для эмуляции IA32 следует запускать /opt/mcst/rtc/rtc_opt_rel_e2s_ob[1].
Запуск графических приложений
Для доступа к $DISPLAY может потребоваться либо предварительно отключить авторизацию командой xhost localhost или xhost +, либо обеспечить наличие у пользователя в домашнем каталоге под path_prefix такого же ~/.Xauthority, как на основной системе.
Для работы с OpenGL может потребоваться rtc-3.3 или более новая версия.
Ссылки
- МЦСТ > Тэги > Двоичный транслятор
- Аппаратная поддержка двоичной трансляции x86 вещественной арифметики в процессорах "Эльбрус" (PDF)
- Dynamic binary translation
Примечания
- ↑ здесь "e2s" -- обозначение процессора "Эльбрус-4С";
"p1" -- менее известный синоним названия процессора "Эльбрус-8С";
"x64" -- синоним x86_64/amd64 (бишь 64-битная x86-совместимая архитектура)