Альт на «Эльбрусе» (Михаил Шигорин, OSSDEVCONF-2016) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) (Batch edit: replace PCRE (\n\n)+(\n) with \2) |
StasFomin (обсуждение | вклад) |
||
| (не показаны 3 промежуточные версии этого же участника) | |||
== Аннотация ==
;Докладчик: {{Speaker|Михаил Шигорин}}
<blockquote>
Как только у нас появился шелл на системе с процессором «Эльбрус»,
мы захотели портировать туда наш RPM; после этого было само собой
разумеющимся «завести» и hasher.
Наличие самой рабочей станции оказалось ещё более полезным.
As soon as we’ve got a shell on Elbrus processor we wanted to port our RPM there; upon that, it was only natural to want hasher working too. The availability of a physical system didn’t hurt at all.
</blockquote>
== Видео ==
{{vimeoembed|185219707|800|450}}
{{youtubelink|0pTAKrgLbqY}}{{letscomment}}
== Слайды ==
[[File:Альт на «Эльбрусе» (Михаил Шигорин, OSSDEVCONF-2016).pdf|left|page=-|256px]]
{{----}}
== Расширенные тезисы ==
<latex>
Эльбрус'''Эльбрус''' — два семейства процессоров разработки российской компании МЦСТ: SPARC-совместимая ветка
и оригинальная VLIW-архитектура.
Речь пойдёт о второй. Особенностями платформы в настоящее время
являются малодоступность (вследствие в т.ч. применения, например, в системах ПРО) и закрытость
системного компилятора (вероятно, по тем же причинам).
Используем рабочую станцию <<«Эльбрус-401>>»,
которая автором доклада найдена вполне симпатичной на ощупь. Работающая на ней хост-система — Linux (точнее, ОС <<«Эльбрус>>», во многом близкая к Debian 5.0/7.0 и местами новее).
Я работаю в компании <<«Базальт СПО>>», которая участвует в разработке репозитория ALT Linux Sisyphus.
Как только у нас появился доступ на машину с процессором <<«Эльбрус-4С>>», возникло вполне естественное желание портировать туда нашу пакетную базу.
Первым этапом стало портирование пакетного менеджера (RPM версии ALT Linux, он же ALT-RPM).
Когда заработал rpm, следующим этапом стал запуск hasher – инструмента, с помощью которого собираются пакеты Sisyphus (hasher спроектирован так, чтобы не допускать влияния собираемого пакета на хост-систему, а также взаимного влияния собирающихся пакетов).
Текущая работа опирается на труды многих других людей — начальное портирование RPM было выполнено glebfm@,
процедуру бутстрапа альта ранее описал kas@ по мотивам ARM-порта, а код поддержки архитектуры мы получили от сотрудников МЦСТ.
На время написания тезисов доступна базовая сборочная среда ALT для сборки в автоматически создаваемом силами hasher чруте,
за исключением некоторых архитектурнозависимых пакетов вроде binutils и компилятора, которые пока alien’изированы из предоставленных разработчиком системы deb-пакетов; в сумме 500 исходных пакетов.
'''Основные пройденные стадии сборки:
\begin{enumerate}
\item '''
# сборка/установка rpm вручную в хост-окружении;
# \item упаковывание всего, что попадает в hasher chroot;
# \item пересборка собранных пакетов уже в hasher.
\end{enumerate}
Производится итеративная пересборка с откручиванием гаек вроде —<tt>--disable static —</tt> <tt>--without-ssl </tt>
и корректировка полученной начальной пакетной базы для возможности включения её в основной разработческий репозиторий ALT Linux Sisyphus.
В целом, работа позволила оценить достоинства и недостатки:
\begin{itemize}
\item* e2k как целевой платформы;
* \item ALT Linux как портабельного репозитория и набора инструментария;
\item <<* «бутстрапа напролом>>» и <<«раннепакетного>>.
\end{itemize}
{\bfseries
Ссылки}
\begin{enumerate}
\item \url{http://altlinux.org/bootstrap}
\item \url{http://altlinux.org/ports}
\item \url{http://altlinux.org/hasher}
\item \url{http://sdelanounas.ru/blogs/71419/}
\end{enumerate}
</latex>».
'''Ссылки'''
# [http://altlinux.org/bootstrap http://altlinux.org/bootstrap]
# [http://altlinux.org/ports http://altlinux.org/ports]
# [http://altlinux.org/hasher http://altlinux.org/hasher]
# [http://sdelanounas.ru/blogs/71419/ http://sdelanounas.ru/blogs/71419/]
== Примечания и отзывы == | |||
Текущая версия на 06:20, 20 октября 2025
Аннотация
- Докладчик
- Михаил Шигорин
Как только у нас появился шелл на системе с процессором «Эльбрус», мы захотели портировать туда наш RPM; после этого было само собой разумеющимся «завести» и hasher.
Наличие самой рабочей станции оказалось ещё более полезным.
As soon as we’ve got a shell on Elbrus processor we wanted to port our RPM there; upon that, it was only natural to want hasher working too. The availability of a physical system didn’t hurt at all.
Видео
Слайды
Расширенные тезисы
Эльбрус — два семейства процессоров разработки российской компании МЦСТ: SPARC-совместимая ветка и оригинальная VLIW-архитектура. Речь пойдёт о второй. Особенностями платформы в настоящее время являются малодоступность (вследствие в т.ч. применения, например, в системах ПРО) и закрытость системного компилятора (вероятно, по тем же причинам). Используем рабочую станцию «Эльбрус-401», которая автором доклада найдена вполне симпатичной на ощупь. Работающая на ней хост-система — Linux (точнее, ОС «Эльбрус», во многом близкая к Debian 5.0/7.0 и местами новее).
Я работаю в компании «Базальт СПО», которая участвует в разработке репозитория ALT Linux Sisyphus. Как только у нас появился доступ на машину с процессором «Эльбрус-4С», возникло вполне естественное желание портировать туда нашу пакетную базу. Первым этапом стало портирование пакетного менеджера (RPM версии ALT Linux, он же ALT-RPM). Когда заработал rpm, следующим этапом стал запуск hasher – инструмента, с помощью которого собираются пакеты Sisyphus (hasher спроектирован так, чтобы не допускать влияния собираемого пакета на хост-систему, а также взаимного влияния собирающихся пакетов).
Текущая работа опирается на труды многих других людей — начальное портирование RPM было выполнено glebfm@, процедуру бутстрапа альта ранее описал kas@ по мотивам ARM-порта, а код поддержки архитектуры мы получили от сотрудников МЦСТ. На время написания тезисов доступна базовая сборочная среда ALT для сборки в автоматически создаваемом силами hasher чруте, за исключением некоторых архитектурнозависимых пакетов вроде binutils и компилятора, которые пока alien’изированы из предоставленных разработчиком системы deb-пакетов; в сумме 500 исходных пакетов.
Основные пройденные стадии сборки:
- сборка/установка rpm вручную в хост-окружении;
- упаковывание всего, что попадает в hasher chroot;
- пересборка собранных пакетов уже в hasher.
Производится итеративная пересборка с откручиванием гаек вроде --disable static --without-ssl и корректировка полученной начальной пакетной базы для возможности включения её в основной разработческий репозиторий ALT Linux Sisyphus.
В целом, работа позволила оценить достоинства и недостатки:
- e2k как целевой платформы;
- ALT Linux как портабельного репозитория и набора инструментария;
- «бутстрапа напролом» и «раннепакетного».
Ссылки
- http://altlinux.org/bootstrap
- http://altlinux.org/ports
- http://altlinux.org/hasher
- http://sdelanounas.ru/blogs/71419/
Примечания и отзывы
Plays:748 Comments:11

