Эльбрус/rtc: различия между версиями

Материал из ALT Linux Wiki
(lintel: места установки)
(→‎Запуск графических приложений: версии rtc и возможности, относящиеся к аппаратуре)
Строка 18: Строка 18:
На ОС Эльбрус под "Эльбрус 401-РС" для эмуляции IA32 следует запускать {{cmd|/opt/mcst/rtc/rtc_opt_rel_e2s_ob}}<ref>здесь "e2s" -- обозначение процессора "Эльбрус-4С";<br/>"p1" -- менее известный синоним названия процессора "Эльбрус-8С";<br />"x64" -- синоним x86_64/amd64 (бишь 64-битная x86-совместимая архитектура)</ref>.
На ОС Эльбрус под "Эльбрус 401-РС" для эмуляции IA32 следует запускать {{cmd|/opt/mcst/rtc/rtc_opt_rel_e2s_ob}}<ref>здесь "e2s" -- обозначение процессора "Эльбрус-4С";<br/>"p1" -- менее известный синоним названия процессора "Эльбрус-8С";<br />"x64" -- синоним x86_64/amd64 (бишь 64-битная x86-совместимая архитектура)</ref>.


== Запуск графических приложений ==
== Запуск графических приложений и приложений, работающих с оборудованием ==


Для доступа к <tt>$DISPLAY</tt> может потребоваться либо предварительно отключить авторизацию командой {{cmd|xhost localhost}} или {{cmd|xhost&nbsp;+}}, либо обеспечить наличие у пользователя в домашнем каталоге под <tt>path_prefix</tt> такого же {{path|~/.Xauthority}}, как на основной системе.
Для доступа к <tt>$DISPLAY</tt> может потребоваться либо предварительно отключить авторизацию командой {{cmd|xhost localhost}} или {{cmd|xhost&nbsp;+}}, либо обеспечить наличие у пользователя в домашнем каталоге под <tt>path_prefix</tt> такого же {{path|~/.Xauthority}}, как на основной системе.


Для работы с OpenGL может потребоваться {{pkg|rtc 3.3}} или более новая версия.
Работа с RAID-контроллерами megaraid (например, с помощью утилиты <tt>storcli</tt>) поддерживается в {{pkg|rtc 3.1}} или более новой версии.
Работа с OpenGL поддерживается в {{pkg|rtc 3.1}} или более новой версии.
Работа с OpenCL должна поддерживаться в {{pkg|rtc 3.4}} или более новой версии.
Работа с ALSA поддерживается в {{pkg|rtc 3.3}} или более новой версии.
Работа с Pulseaudio поддерживается в {{pkg|rtc 3.1}} или более новой версии, при этом нужно пробросить в гостевой chroot каталог <tt>/run/pulse</tt>.
Можно запускать Windows-приложения с помощью wine и {{pkg|rtc 3.1}} или более нового. Следует иметь в виду, что 32-битные приложения можно запускать только 32-битным wine из-под 32-битного гостевого образа и 32-битного rtc, работающего с ним, а 64-битные - соответственно 64-битным wine из-под 64-битного образа и 64-битного rtc. К сожалению, многие 64-битные программы имеют 32-битные инсталляторы, что делает их установку под wine64 нереальной без специальных усилий.


= Ссылки =
= Ссылки =

Версия от 16:54, 13 ноября 2019

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Бинарный транслятор

Для решения проблемы совместимости с унаследованным ПО для платформы x86 в МЦСТ разработали бинарный транслятор, работающий в двух режимах, чем-то напоминающих гипервизор (когда можно установить и запустить целую ОС) и wine (когда требуется запустить отдельное приложение)[1].

Первый режим реализован в lintel (в старых версиях требовал для своей установки и хранения внутренних данных - кэша откомпилированного кода - установленную CF-карточку; в более новых версиях мог устанавливаться на отдельный SATA-диск; в современных версиях может устанавливаться на тот же диск, что и гостевая ОС в последние 16-64 гигабайт, если их оставить неразмеченными); второй -- в rtc и работает под управлением уже запущенной операционной системы.

Применение

Требуется установленный пакет rtc.

При наличии в /opt/x86/ развёрнутого окружения для x86_64[2] можно запустить командную оболочку такой командой:

/usr/bin/rtc_opt_rel_p1_x64_ob --path_prefix /opt/x86 -- /bin/bash

При успешном запуске под бинарной трансляцией отданная в полученном приглашении команда arch сообщит не "e2k", а "x86_64".

На ОС Эльбрус под "Эльбрус 401-РС" для эмуляции IA32 следует запускать /opt/mcst/rtc/rtc_opt_rel_e2s_ob[3].

Запуск графических приложений и приложений, работающих с оборудованием

Для доступа к $DISPLAY может потребоваться либо предварительно отключить авторизацию командой xhost localhost или xhost +, либо обеспечить наличие у пользователя в домашнем каталоге под path_prefix такого же ~/.Xauthority, как на основной системе.

Работа с RAID-контроллерами megaraid (например, с помощью утилиты storcli) поддерживается в rtc 3.1 или более новой версии. Работа с OpenGL поддерживается в rtc 3.1 или более новой версии. Работа с OpenCL должна поддерживаться в rtc 3.4 или более новой версии. Работа с ALSA поддерживается в rtc 3.3 или более новой версии. Работа с Pulseaudio поддерживается в rtc 3.1 или более новой версии, при этом нужно пробросить в гостевой chroot каталог /run/pulse. Можно запускать Windows-приложения с помощью wine и rtc 3.1 или более нового. Следует иметь в виду, что 32-битные приложения можно запускать только 32-битным wine из-под 32-битного гостевого образа и 32-битного rtc, работающего с ним, а 64-битные - соответственно 64-битным wine из-под 64-битного образа и 64-битного rtc. К сожалению, многие 64-битные программы имеют 32-битные инсталляторы, что делает их установку под wine64 нереальной без специальных усилий.

Ссылки

Создание окружений

Можно установить любой линукс в нужный вид в любой виртуальной машине и сделать архив файловой системы (изнутри VM или экспортировав образ диска, подключив и сделав архив снаружи).

На альте можно задействовать предварительно настроенный hasher:

hsh --init
hsh-install нужное возможно-также-нужное

где в возможно-также-нужное в случае графических приложений обычно попадают xauth и шрифты (например, fonts-otf-mozilla-fira); проверить функционирование приложения "не отходя от кассы" на той же машине, где собран чрут, можно так:

hsh-run -Y команда

Заархивировать полученное содержимое можно так:

hsh-run --rooter -- tar --numeric-owner --exclude .in --exclude .out --exclude .host --exclude /dev/log -cf - / > имя-архива.tar

Примечания

  1. кстати, сам wine под rtc тоже работает
  2. например, распакованного командой rm -rf /opt/x86; mkdir /opt/x86; tar -C /opt/x86 -xf имя-архива.tar
  3. здесь "e2s" -- обозначение процессора "Эльбрус-4С";
    "p1" -- менее известный синоним названия процессора "Эльбрус-8С";
    "x64" -- синоним x86_64/amd64 (бишь 64-битная x86-совместимая архитектура)